fredag 4 februari 2011

Gör din Wordpess installation säkrare från hacker attacker

Varför göra en förändring?
Jo min vän hade tråkigt nog råkat ut för spindlar (dvs. program som hela tiden söker igenom internet efter kända säkerhets fel) och fått samtliga av  sina kunders och egna wordpress installationer ca 8 st infekterade av virus. Själv har jag råkat ut att en av 6 st har blivigt attackerade men det räcker. Troligtvis hjälper det att uppdatera dock, men det är inte tillräckligt i säkerhetshänsende så länge som att alla siter har exakt samma inloggnigs sida som spindlar enkelt kan hitta till genom att lägga till wp-admin efter din webadress. Se det så här om du som tjuv hittar en brist i en säkerhets dörr, då kommer du lätt hitta in i alla hus med den säkerhets dörren. Men om du gömmer dörren vad ska han göra då? Analogin haltar lite för att programerna har automatiserat sina program så eg. är det ännu värre än tjuvexemplet när de hittat säkerhets hålet kan de gå på alla över hela världen!

DISCLAIMER:
OBS! DU KOMMER INTE ATT KUNNA UPPDATERA WORDPRESS EFTER DETTA MEN DET GÖR INTE SÅ MKT MED TANKE PÅ ATT DU KOMMER ATT HA HÖJT SÄKERHETEN PÅ WORDPRESS SIDAN AVSEVÄRT ÄNDÅ. MEN DET KAN FÖRSTÅSS VARA SÅ ATT ANDRA SÄKERHETS HÅL TÄPPS TILL I DESSA UPDATES. (Men det går såklart att göra en ny installation av wordpress du tar med dig databasen från den gamla installationen och sen ändra wp-admin mappen igen. Detta kan man ju göra emellanåt, f.ö. är detta bara en temporär lösning till utvecklings teamet gör att man enkelt och dynamiskt kan ändra i wp-admin delen i ngn config fil.. Denna lösning är bra tills dess.. )
Men kom ihåg säkerhet framför allt.

Så här gör du:
STEG 1 byt med sök ersätt bort alla wp-admin till din nya costom mapp-namn

(Går att göra före och efter att man installerar wordpress databas har inte testat att göra det innan man installerad den dock det kanske underlättar.. cssen inställningarna kanske lagras i databasen)

Här har du en anvisning om vad man ska göra först:

Här citterar jag honom:

WordPress is great! It’s no doubt. But unfortunately it still doesn’t have many quite necessary features. One of them is the ability to change wp-admin folder name, which is the admin directory as you probably already now. After searching for several hours on the internet without any success I started thinking of ways how to change my wordpress admin directory name. In this small tutorial I’ll show how to do it. Before starting the tutorial I have to say that this is rather complicated way and there may occurred some bugs. Anyway I have tested it and didn’t found any. So let’s start.
All we have to do is to search “wp-admin” in all wordpress files and change it to what we need to use as a admin directory name. Let’s name it for example “profile”. There are over 50 files to change. It’s practically impossible to find all these files manually so we need this great software called “grepWin” (Download). After installing this software right click on your wordpress folder and then choose “grepWin…” (see image below)


Then type “wp-admin” in “Search for:” box and “profile” (or anything you wish) in “Replace with:” and click “Replace”. This software will find every “wp-admin” and replace it with “profile”.
Now we are almost done. There is one file in /wp-admin/ directory called wp-admin.css. You have to change it’s name to “profile.css” (your_admin_directory_name.css).
Please note that some plugins and themes may also use the “wp-admin” name somewhere, so before you upload any theme or plugin don’t forget to scan it using grepWin and change every “wp-admin” to your chosen directory name.


Mitt eget tillägg (skrev på engelska i ett annat sammanhang) :P :

And I saw that this solution isn't so good cause when surfing to wp-admin you are redirected to wp-login.php so You have to rename that file also.. But I think with grepwin you can change all the instanced where that filename occur also.. I'll try it..
So TO DO for the developer community A WAY TO EASILY CHANGE THE WP-ADMIN FOLDER AND THE WP-LOGIN.PHP DYNAMICALL





STEG 2 – fixa tillbaka adminsektionens css

Steg 1 funkade för mig men då kom ett nytt problem. Hitta css:en men en ful-hacks lösnign är att göra följande:

hitta admin-header.php i admin delen och gå in och ändar efter att alla css:er inkluderats
göra en enkel style taggar – och kopiera in innhehållet från (f.d) wp-amin/css/ css filer som har med admin delen att göra.. Jag kopierade de viktigaste vilka ni kan se nedan (även om detta är en ful lösning så funkar den iaf och segar ner marginellt den gör mest koden stökig men det kan man leva med om man inte ska göra om den filen vilket inte är sannolikt). (utanför php taggarna och ej på samma rad dvs. använd .dev filerna annars funkar det inte):

Hittas i (den nya wp -admin mappen – vad du nu döpt om den till) /admin-header.php





ALTERNATIVET på steg 2 ÄR ATT LÄNKA TILL EN WORDPRESS INSTALLATION

SOM HAR DENNA load-styles.php PHP FIL DET ÄR SAMMSPELET MED DENNA SOM INTE FUNGERAR NÄR MAN ÄNDRAT WP-ADMIN MEN DET FUNKAR ATT LÄNKA TILL EN ANNANS WP INSTALLATIONS LOAD-STYLES.PHP KONSTIGT NOG:

< link media="all" type="text/css" href="http://localhost/wordpress-utveckling2/wp-admin/load-styles.php?c=0&dir=ltr&load=dashboard,plugin-install,global,wp-admin&ver=17aa35fdf22036c3f75256fc16b16184" rel="stylesheet" >

Ytterligare ett alternativ är att göra det rätt och få load-styles.php  att fungera med den nya sökvägen till "f.d. wp-admin mappen", det konstiga med detta är att både load-styles.php och alla css:erna till admin delen ligger i wp-admin sectionen/mappen.. Men jag har sett i andra wp installationer jag inte ändrat i wp-admin mappen att de har en direkt sökväg. Så kanske måste den nya wp-admin sökvägen in någonstans i koden.. Någon som har ngt tips på var så man slipper denna ful lösning?


Inga kommentarer:

Skicka en kommentar