Af Michael Bonnevie

 

Ignorance is bliss, er et ordsprog jeg er stødt på, i diverse amerikanske og engelske film og serier, – og der er noget om det!

Det er rigtig rart at have tjek på, og vide en masse ting, mens det egentlig er rigtig skønt, at være i total uvidenhed om andet. Jeg er nok en af de typer, som er meget nysgerrig af natur, så derfor falder jeg muligvis over ting, som mange andre ikke skænker en tanke, og en af de disse er WordPress sikkerhed, eller mangel derpå. I mange år har jeg arbejdet med WordPress, og har selvfølgelig tænkt sikkerhed nu og da, men da systemet for det meste kører og klarer sig selv, så er det ikke spørgsmålet der er dukket op som oftest.

I den seneste tid, er jeg blevet bombarderet med forsøg på at logge ind på GD, og det er kun fordi jeg har et plugin installeret, som afslører disse forsøg (IP Blacklist Cloud) at min opmærksomhed igen er blevet skærpet på WordPress sikkerhed. Jeg er ikke den store koder, eller på anden måde WordPress haj, udover design og grafik, men har igennem årene læst en del om WordPress, og via trial and error fået en indsigt der gør, at jeg gerne vil dele mine metoder til at holde ‘fjenden’ for dørene.

Metoderne som jeg beskriver, er nogle som har fungeret for mig, men jeg kan ikke garantere at det virke vil for alle. En WordPress installation kan være meget Individuel på grund af temaer, plugins og meget andet, så det er derfor på eget ansvar hvis man vælger at følge mine instruktioner! Det er også altid en rigtig god ide at lave en backup af din database og filer, førend du går i gang med at ændre på ting i WordPress! For at lave en backup, kræver det at du har installeret et backup plugin, eller at din webudbyder har mulighed for at lave backup.
Der er rigtig mange plugins der tilbyder backup af database og filer, så det er bare at gå på jagt efter et der passer til dine behov.

For at starte fra en ende, så er der nogle helt basale ting som man kan og burde gøre, for at stramme op om sikkerheden på sin hjemmeside.

Password

password

Dette her er sandsynligvis det vigtigste punkt på listen, så derfor er det også det første!

Hvis du har et Password som eksempelvis Admin123, Peterhansen eller andet simpelt kodeord, så gør dig selv den tjeneste, at ændre det med det samme!  Du kan være næsten sikker på at dit Password bliver gættet før eller siden, da robotterne og de automatiske scripts er gode til at gætte, ud fra ens brugernavn og den måde som folk typisk laver Passwords på.

Det er meget vigtigt at lave et Password der ikke relaterer til dit navn, og koden skal helst have store og små bogstaver, tal og tegn og være af en vis længde.

Her er et tænkt eksempel på et Password hvor jeg bruger et navn. ?=)Klaus_Kludder_784_gamle-dage¤%&

Selvom jeg har brugt både navn og websted, så er det en kode som er meget svær at gætte. Der er brugt store og små bogstaver,  tilfældige tal og tegn. Man kan også lave nogle passwordregler som man selv kan huske, men ingen andre har mulighed for at vide. Du kan eksempelvis erstatte et bestemt bogstav med et tegn eller tal som kun du kender. Klaus_Kludder_København = 1la2s_1l2dder_1øbenhavn Her har jeg erstattet K med 1 og u med 2. Det gør det meget sværere at regne ud, og næsten u læseligt medmindre man kender reglen..

Hvis du som jeg, har rigtig mange Passwords at holde styr på, så kan du bruge noget software der holder styr på dem. Det eneste du skal huske er dit Masterpassword til softwaren! Glemmer du den, så er dine Passwords desværre gået tabt!

Det er en god ide, at have Password softwaren (Password kode filerne) liggende i en Cloud service som Dropbox, Google drev eller lignende. Dette er fordi ens Password filer forsvinder i et nedbrud af styresystemet, eller ved harddisk nedbrud. Sidst mit Styresystem brød ned, var det det, der reddede alle mine Passwords.

Update på passwords!

Lidt er sket, efter jeg skrev denne her klumme. Det er stadigvæk en god ide at lave et stærkt password, men det viser sig, at de algoritmer som bryder passwords, har sværest ved at gætte flere sammensatte ord. Et eksempel kunne være: klauskludderborikøbenhavn, altså Klaus kludder bor i København. Det skulle faktisk være sværere at gætte, end hvis du brugte store ord, tal og koder i dine sætninger. Du skal nok op på minimum 4 ord og helst flere, førend det bliver nærmest umuligt at bryde. Fordelen med denne metode er, at det er nemmere at huske, end hvis du brugte alle mulige tegn og tal..

Admin or not to Admin, that is the question?

Admin

Når du installerer WordPress fra bunden, så sørg for ikke at kalde dig selv Admin, da det vil være det som WordPress står til som default. Det er meget let, bare at vælge dette og gå videre. Jeg er selv skyldig i brøleren, men dengang jeg installerede ‘Gamle dage’ vidste jeg ikke bedre..

Grunden er, at ‘Admin’ er det ord/navn som de automatiske scripts og personer søger på som det første, da de ved at det er der WP siden skal rammes hårdest. Hvis du vælger et andet ord eller navn end ‘Admin’ så er du allerede foran på point! Du kan godt efterfølgende ændre dit navn via et plugin osv. men det er lettere at tage det i opløbet. Hvis du har mod på selv at ændre navnet uden plugin, så kan du oprette en ‘Bruger’ med Admin rettigheder, og ‘forære’ Admins posteringer til den nye bruger. Når dette er gjort, så burde du kunne slette ‘Admin’ og køre videre som ny Administrator med den nye bruger med nyt navn. Jeg har ikke selv prøvet, så det er på eget ansvar hvis du giver dig i kast med foretagenet!

.htaccess

htaccess-logo

I roden af dit websted, har du en fil som hedder .htaccess. Det er en fil som kommunikerer med din server, og fortæller den hvordan skal opføre dig. Det er ikke sikkert der står noget særligt i din .htaccess, udover det som WordPress kommer med som default, men der er enkelte småting du kan gøre,  for at stramme grebet en anelse om din WordÅress sikkerhed.

Her er et eksempel på en default WordPress .htaccess

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Jeg har tilføjet de her linjer efter # END WordPress

# Protect wordpress
<files wp-config.php>
order allow,deny
deny from all
</files>
<Files xmlrpc.php>
 Order allow,deny
 Deny from all
</Files>
# End of the protection

Begge filer (xmlrpc.php og wp-config.php) er typisk dem som bliver forsøgt kompromitteret, så det er en god ide at sørge for, at filerne ikke kan ses eller søges efter. Sådan her vil din .htaccess se ud efter linjerne er tilføjet.

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
# Protect wordpress
<files wp-config.php>
order allow,deny
deny from all
</files>
<Files xmlrpc.php>
 Order allow,deny
 Deny from all
</Files>
# End of the protection

.htaccess kan bruges til rigtig meget, men man skal holde tungen lige i munden når man ændrer i den! En lille stavefejl kan gøre at du ikke kan komme ind på din side. Det er derfor en god ide at lave en backup af filen førend du ændrer i den, og skulle der være en fejl, så er det bare at overskrive filen med din backup, – og du er kørende igen.

Remove xmlrpc pingback ping

Pingback

xmlrpc pingback pluginnet har jeg installeret, da Pingback er en feature jeg ikke har brug for på min side, og som repræsenterer en forholdsvis stor ‘fare’ for ondsindet udnyttelse. I min .htaccess er filen ‘gemt’ så hvis jeg fjerner pluginnet en anden gang, så er jeg stadigvæk en anelse sikret. xmlrpc har været udnyttet i såkaldte DDoS angreb, hvor rigtig mange installationer af WordPress har været taget som gidsel. Hvis du vil vide om din WordPress har/er været brugt til DDoS angreb, så kan du teste det via online DDos testere..

Her kan du læse mere om DDoS. På Engelsk

IP Blacklist Cloud

cloud_cover

IP Blacklist Cloud er et plugin jeg har brugt i flere år, og det kan gøre rigtig meget for din WordPress sikkerhed. Når personer/robotter forsøger at logge ind på dine side, og overskrider de login forsøg som du har sat op i IP Blacklist, så bliver de udelukket i eksempelvis en time, og kommer på en liste, hvor du efterfølgende kan vælge at Blackliste deres IP adresse. Jeg har igennem tiden Blacklistet flere tusinde IP numre..

Når personer kommer på din Blacklist, så kan du se hvilket land de kommer fra, og hvilke Passwords de har testet af. Det er derfor ret enkelt at vide, om deres IP skal bannes helt. Det skal de fleste Login forsøg for øvrigt!, da du og dine eventuelle medlemmer sikkert er de eneste der skal have adgang til din WP sides login. Du kan Whiteliste dit eget IP nummer, samt dem du ved har rent mel i posen. En meget rar feature, der sikrer dig, at du ikke kommer til at udelukke dit eget eller andres IP nummer ved en fejl.

En ting jeg har lagt mærke til, er at ‘angrebene’ kommer i bølger.. For det meste sker der ikke meget i IP Blacklist, men andre gange er der virkelig run på. Her for en lille uges tid siden, gik det helt amok på min GD, da der var utallige forsøg på at logge ind, specielt fra lande som Ukraine, Rusland mv. Der var vel en 2-5 forsøg i minuttet, så det løber hurtigt op. Selvom jeg kunne se ud af deres Password gætteri, at de ikke var i nærheden af at ramme mit Password, så er det alligevel noget nervepirrende at sidde og se på. Jeg tænkte at der måske var en mulighed for at blokere for visse lande, så ‘angrebene’ stopper allerede før de får lov til at prøve at logge ind. Det var der, og det hedder iQ Block Country.

iQ Block Country

IQ-Country-Block

iQ Block Country er ret genialt! Det er forholdsvis enkelt at sætte op, og når det kører så blokerer det automatisk besøgende fra de lande du har valgt på en liste. Der er en enkelt lille ting som skal gøres førend pluginnet fungerer, og det er at man skal ud pakke en GEO ip database og uploade til sin hjemmeside, i roden via Ftp. Hvis du ikke har prøvet den slags før, så få nogen til at hjælpe dig.

Du skal vide hvor de besøgende kommer fra, førend de kan blokeres i iQ, og det er ikke noget iQ afslører. iQ fungerer rigtig godt sammen med IP Blacklist, da IP Blacklist fortæller dig de besøgendes land og IP adresse når de har forsøgt at logge ind. Når du har et land som skal blokeres, så vælger du det på en liste i iQ, og derefter kan det land ikke længere nå frem til din Login side. Pas på med at blokere for dit eget land, eller det land hvor din server befinder sig! Hvis dette sker, så bliver du lukket ude af din hjemmeside, og det kan kun rettes i din mysql database!

Forsøgene på at tilgå min GD side er ikke blevet mindre siden jeg har installeret iQ, og der er stadigvæk rigtig mange ‘besøg’ fra de blokerede lande. Det er dog betryggende at have den vished, at de nu ikke får lov til at komme længere end til hoveddøren 🙂

Links.

IP Blacklist Cloud

 iQ Block Country

Remove xmlrpc pingback