Gi en donasjon (Les mer...) Donér via PayPal eller kredittkort ved å klikke på knappen under.

Hvordan sikre WordPress

Skrevet av Sindre | 10. november, 2010

Anders spurte meg:

I det siste har jeg tenkt litt på hvordan man sikrer nettsiden sin. Jeg ser på nettsiden som en inntektskilde, og da vil jeg gjerne forhindre at noen utenfra skal ødelegge, enten via hakking, Google-klikking eller andre måter gå til “angrep” på nettsiden for å skade inntektskilden. Er dette noen vurdering som du gjør? Hvilke sikkerhetsrutiner har du? Eller er det egentlig ikke så mye man har å frykte bare man gjør noen enkle grep?

Jeg tror ikke det er hacking man først og fremst trenger å være bekymret for, men at det kan oppstå en hardwarefeil. For la oss innse det; det HADDE vært kjipt å miste alt, absolutt alt, fordi vi ikke har giddet å ta oss det lille ekstra bryet med å sørge for at bloggen er så sikker som mulig… Eller hva?

Jeg kommer derfor til å dekke noen måter man kan gjøre WordPress-bloggen sin mer trygg på. Dette utgjør likevel ingen garanti for at du ikke kan miste alt eller deler av bloggen din, men det er uhyre sjeldent at slikt skjer. Jeg har ikke hørt om et eneste tilfelle med WordPress. Likevel er det bedre å være på den sikre siden, altså.

Noen av disse tipsene sendte jeg ut via Glabladets VIP-nyhetsbrev i mai. Dette er likevel så viktig at jeg gjør et unntak og poster det på bloggen også:

1. Backup, backup, BACKUP!

Det sier seg jo selv, men det er ikke alle som har sørget for å ta regelmessige backups av bloggen enda. Dette er VIKTIG!

Det sies i nerdegeek-miljøer, at hvis noen virkelig vil bryte seg inn på siden din, vil de klare det, med nok tid og innsats. Med andre ord kan egentlig ingen nettside gjøres 100% sikker.

Hvis dette er sant, vil backups være den første, beste og mest selvfølgelige, opplagte måten å «forsvare» seg på.

Med en funksjonell backup kan noen bryte seg inn, rane, gjøre hærverk, voldta, stjele og slette ALT innholdet… og du kan likevel være tilbake online i løpet av få timer, fordi du har en BACKUUUUP!!! ;-)

Det anbefales at du tar backup så ofte som mulig, og helst daglig. Bruk gjerne gratis-pluginen WordPress Database Backup til dette.

NB: Denne pluginen tar kun backup av databasen din. Du beholder innlegg og kommentarer, men themes og plugins kan likevel gå tapt. Jeg skal snart skrive om en metode som gir full og sikker backup, samt enkel gjenopprettelse av hele bloggen, inkl. themes og plugins. Følg med!

2. BYTT UT «ADMIN» SOM BRUKERNAVN!!

En av de vanligste måtene å gjøre innbrudd på en nettside, er «rå kraft»-måten. Det vil si at sniken vil prøve å gjette seg frem til brukernavnet ditt, og deretter bruke scripts for å sette det opp mot tusenvis av passordkombinasjoner.

Hvis admin-brukeren på bloggen din heter «Admin», gjorde du akkurat hackeren sin jobb myyyyyye enklere. Så omtenksomt av deg!! :)

Det er lett å gjøre noe med dette. Bare lag en ny bruker i WordPress og gi den administratorrettigheter. Deretter logger du inn med den nye brukeren og sletter «Admin»-brukeren. Hvis du har publisert innlegg under «Admin»-brukeren, vil WordPress spørre deg om du ønsker å flytte disse innleggene til en ny bruker.

3. Gjem WordPress-versjonen!

Jo mindre en psycho-snik med seriøse fritidsproblemer vet om bloggen, jo bedre er det! Som en hovedinnstilling i WordPress, kringkaster den til hele verden hvilken versjon du bruker. Denne informasjonen kan bli brukt mot deg fordi hackerne vet om sikkerhetshullene i enhver versjon.

Sagt på en annen måte: Ikke kle opp bloggen din i dyp utringning og kort miniskjørt som sier «kom og ta meg baby», men kle den opp i en skikkelig OnePiece av en kjeledress som sperrer all tilgang. Veldig turn-off og usexy for enhver hacker, med andre ord.

(PS. Dette innlegget er IKKE sponset av OnePiece!)

On with the story…

Å skjule WordPress-versjonen er heldigvis ikke vanskelig. Først og fremst bør du pulverisere «generator»-meta-tagen. Okey, ikke få panikk hvis du ikke har peiling på hva jeg snakker om. Du kan gjøre dette ved å legge til følgende kode i ditt themes functions.php-fil:

Men det finnes fortsatt et sted hackere kan få snerten i hvilken versjon av WP du bruker, som mange glemmer å tenke på: Readme-filen som kommer med alle WordPress-installeringer. Bare logg deg på serveren din via FTP for å få tilgang til å slette denne.

4. Sikre deg mot mappesnoking!

En annen ting du bør gjemme på siden din er innholdet i mappene dine. Hvis folk kan gå gjennom mappene dine og sjekke innholdet, kan de samle inn bøttevis med informasjon, inkludert hvilke plugins du bruker, hvilke themes du har installert osv. Jeg trenger vel ikke si at slik informasjon kan bli brukt til å finne sikkerhetshull på siden.

Hvis hostingen din er basert på Linux kan du enkelt fjerne muligheten for mappesnoking med en .htaccess-fil plassert i roten av serveren din. Du kan enten lage denne filen eller åpne en den eventuelt eksisterende og legge inn følgende linje:

Options -Indexes

That’s it. Hvis hostingen din ikke er basert på Linux kan du fortsatt sikre innholdet i mappene ved å laste opp en blank index.html-fil inni hver mappe.

Usikker på hva hostingen din er basert på? Kontakt hosten din. (Noen hoster tilbyr allerede «ingen mappesnoking» så det er ikke sikkert du trenger å følge dette tipset. Ta kontakt med hosten din hvis du lurer. Eller bare følg tipset anyway, så er du i verste fall bare «dobbelt» sikret).

5. Oppdater ALLTID…

WordPress er open source software, noe som betyr at kildekoden er offentlig og alle kan ha tilgang til den. Det betyr at hackere kan gjennomsøke kodene etter sikkerhetshull.

Noen ganger finner de dem, men WordPress-teamet reagerer vanligvis kjapt, og slipper en oppdatert versjon som beskytter mot de nye truslene.

Hvis du alltid kjører den siste utgaven av WordPress vil du minimere sjansene for å støte på problemer.

——————————————————————————————————

NB. Hvis du ikke er så teknisk avansert og dette hørtes vanskelig ut, anbefaler jeg at du søker råd hos noen som har peiling på det tekniske. Følg disse instruksene på eget ansvar – jeg har ikke mulighet til å tilby «ettersupport» til alle som leser dette innlegget.

Hvis du er usikker på fremgangsmåten gjør du klokt i å la vær, inntil videre. Det kan nemlig oppstå problemer underveis hvis du ikke vet hva du gjør.

F.eks. da jeg skulle legge inn koden i functions.php som fjerner WordPress-versjonen, oppsto det problemer med en av mine plugins.

Løsningen min, etter litt mer søking på nettet, ble å installere følgende plugin: Secure WordPress.

Denne tar seg av punkt 3 og 4 i denne guiden, samt flere ting som ikke er gjennomgått her, og kan derfor være verdt å installere.

Glabladet beklager å ha spredt denne fryktpropagandaen og gjort deg mer bekymret over alt som kan skje med din WordPress-installasjon. Jeg lover at det ikke skal gjenta seg altfor ofte, men når sant skal sies så er det bedre å være føre var, bla bla bla.


| | Send til en venn Send til en venn | Skriv ut Skriv ut

Hvis du ble inspirert av dette gratis innlegget og ønsker å vise din takknemlighet med en donasjon, klikk på PayPal-knappen til venstre.

Dette innlegget ble publisert av Sindre på onsdag 10. november 2010 klokken 14:50 i kategoriene: Blogging, Teknologi,

LESERNE MENER:
21 kommentarer så langt

1. Anders
10.11.10

WOW! Hva du kan! Takk for utfyllende og godt svar om sikring av websider :)

10.11.10

Fikk nettopp Gmail kontoen min hacket. Veldig kjedelig! Heldigvis var Google kjapp å gi meg kontoen tilbake.

10.11.10

Dette var jo fornuftig ;) Trenger nok å bli litt mer bevisst selv.

10.11.10

Kan jo også få lagt til at kun en ip adresse eller en ip mask får tilgang til admin i wordpress. Hvis en ikke har dynamisk ip adresse gir jo det et ekstra lag sikkerhet.

10.11.10

Wow. Dette har jeg faktisk tenkt lite på til tross for at jeg har over 20 wordpress blogger gående der ute. Mange med lite ettersyn…

Hmmhm, jeg burde gjerne gitt dem strengere beskjed ang. mini-skjørt og utringninger:..;p

Hvor er samvirkelaget kjeledressen når man trenger den…

6. Terje
10.11.10

Kan anbefale denne http://www.webdesigncompany.net/automatic-wordpress-backup/ Tar backup av alt automatisk med en amazon S3-konto (koster kun cents i måneden, his du ikke har enormt med bilder/film da)

Dette var svært nyttig lesning. Tiltak herved iverksatt. Venter med backup rutine til du skriver den artikkelen, så langt støtter jeg meg på at host’en tar backup hver natt.

16.11.10

Fikk faktisk nettopp et script på en av mine servere hacket. Er jo noe svineri å finne ut av det også. En venn av meg tipset meg om at det ble lastet ned virus. Så ikke det selv, måtte slette cookies og se på siden gjennom en proxy tjeneste før jeg så det. Så pass på sikkerhetshullene.

9. Magnus
17.11.10

Dette kommer godt med, har en del blogger på engelsk, skal ta en skikkelig runde og kle de opp i grilldress alle sammen ;)

29.11.10

jeg får daglig MASSE spamkommentarer på bloggen min. tror du den da er angrepet av virus pga dette eller??? :s

11. Sindre
29.11.10

Hei Christine. Den er nok ikke angrepet av virus. Spam-kommentarer er dessverre vanlig å få etter at bloggen har eksistert en stund. Du kan prøve denne pluginen:

Bad Behavior: http://wordpress.org/extend/plugins/bad-behavior/

Den har hjulpet meg og mange andre jeg har anbefalt den til. Du trenger bare å installere og aktivere den, så skal du forhåpentligvis se en merkbar nedgang i spam.

Hvis dette ikke hjelper, eller hvis du vil gå enda lenger til verks, kan du fjerne muligheten for å kommentere individuelle innlegg. Dette kan være nyttig hvis det er noen innlegg som blir spesielt utsatt for spam (og Bad Behavior-pluginen ikke hjelper). Slik gjør du:

1. Logg inn på Kontrollpanelet og trykk på «Innlegg»
2. Finn frem innlegget det gjelder og trykk på «Rediger»
3. Når du er inne på innlegget går du ned til en fane hvor det står «Diskusjon»
4. Der det står «Tillat kommentarer» fjerner du avkryssingen
5. Trykk på «Oppdater»-knappen
6. Gjenta denne prosessen for alle innlegg du vil fjerne kommentarene for

Jeg vet at dette ikke er en ideell løsning, men hvis det gjelder gamle innlegg som uansett ikke får så mange (om noen) kommentarer, er det ingen grunn til å la kommentarfeltet stå åpent bare for å tillate de pain-in-the-ass-spam-kommentarene.

12. Tom
01.12.10

Hei,

Når jeg sikrer mine WordPress blogger, personlige eller andres, så er det bare noen få ting jeg faktisk velger å gjøre før jeg ser på bloggen som relativt sikker.

Nyere versjon av WordPress (3.0 tror jeg) så vil du som standard få lov til å velge et nytt admin navn ved installasjon av WordPress, men det kan løses også ved å gjøre som Sindre har beskrevet, laste ned en plugin eller redigere i databasen (bruk google).

Før jeg går videre, så regner jeg med at passordet er av topp kvalitet, består av minst 8 tegn, blandet mellom store og små bokstaver, tall og spesialtegn – ellers er det lett å gjette seg frem til passordet (bruteforce).

Det viktigste med hele bloggen er å beskytte en fil, nemlig wp-config.php som du finner i rot-installasjonen til WordPress. Denne inneholder kritisk informasjon som navnet og passordet til databasen din (alle poster, kommentarer, kategorier, tags, innstillinger osv).

Ettersom jeg har tilgang til webhosten til de fleste blogger jeg jobber med, så er det enkelt for meg å beskytte denne – det er bare å flytte den opp et hakk i strukturen, for eksempel fra /domene/public_html/wp-config.php til /domene/wp-config.php.

Nå er filen på en plassering hvor ingen andre enn de med tilgang til din webhost kan lese den, men WordPress kan fortsatt nå den uten problemer.

Jeg bruker disse innstikkene (høres så dumt ut, heter egentlig plugins) for å holde orden på saker og ting:

- Login Lockdown, hindrer at personer eller roboter kan gjette seg frem til passordet ditt (bruteforce) (http://wordpress.org/extend/plugins/login-lockdown/)

- Chap Secure Login, krypterer informasjonen du sender over Internett når du logger deg inn (http://wordpress.org/extend/plugins/chap-secure-login/)

- WP-DB-Backup, automatisk backup av databasen (poster osv) og sender til en e-post adresse eller laster opp på valgt plassering. (http://wordpress.org/extend/plugins/wp-db-backup/)

Dersom du bruker et tema som du har tilfeldig funnet, bør du sjekke footer.php for eval base64 kode (pluss masse tall og tegn), da dette er kryptert PHP-koder som kan inneholde slemme saker (må ikke være det da, men jeg er alltid skeptisk til slike).

En annen ting du bør sjekke er din searchform.php for følgende linje:

-

… og erstatte den med følgende linje:

/

Og dermed kan ingen søke på selve serveren din, altså webhosten din. En annen ting du bør gjøre er å åpne din search.php fil for å lime inn følgende kode, helt på toppen av alt annet – den beskytter deg mot at folk kan kjøre XSS (cross-site scripting), altså slemme saker generelt (google det om du er nyskjerrig).

foreach ($_GET as $check_url) {
if ((eregi("]*script*\»?[^>]*>», $check_url)) || (eregi(«]*object*\”?[^>]*>», $check_url)) ||
(eregi(«]*iframe*\»?[^>]*>», $check_url)) || (eregi(«]*applet*\»?[^>]*>», $check_url)) ||
(eregi(«]*meta*\»?[^>]*>», $check_url)) || (eregi(«]*style*\»?[^>]*>», $check_url)) ||
(eregi(«]*form*\»?[^>]*>», $check_url)) || (eregi(«\([^>]*\»?[^)]*\)», $check_url)) ||
(eregi(«\»», $check_url))) {
echo»How many hackers does it take to screw in a light bulb? Zero. Nobody knew they were there.»;
die ();

}
}
unset($check_url);
?>

Den siste echo-et er teksten som vil bli printet dersom noen prøver seg, og i dette tilfellet en vits (kan byttes ut selvfølgelig).

Håper ikke PHP-koden tuster opp kommentar feltet, eller den jævli lange kommentaren fra meg.

Ha det gøy.

13. Tom
01.12.10

En kommentar til det å gjemme WordPress versjonen, det er ikke nødvendig, egentlig bare tull – men det forutsetter at du faktisk gidder å oppdatere selve WordPress!

Grunnen til at noen sier man skal gjemme versjonen for din installsjon er for at hackere ikke skal kunne se hvilkene angrep som faktisk vil fungere til din blogg, men dersom du har nyeste versjon skal alt dette være fikset.

14. Sindre
01.12.10

…og da er det altså en fordel likevel, for de som ikke har nyeste versjon! ;)

Ellers tusen takk for lang og innsiktsfull kommentar. Her lærte jeg noe nytt også. Det du sier om å flytte wp-config-filen et hakk opp i strukturen visste jeg ikke. Og alt fungerer fortsatt som det skal selv om du gjør det? Hvis dette er sikrere, hvorfor er det ikke mer kjent/noe WordPress anbefaler å gjøre under installasjonsprosessen? :)

15. Tom
01.12.10

De som ikke oppgraderer til en nyere WordPress versjon som tar, tjaaa, 10 sekunder, men velger å gå gjennom hele prosedyren for å gjemme den aktuelle versjonen kan bare ha det så «bra» :P

Ja, det er fullt mulig å flytte wp-config.php opp et hakk i strukturen, til et område som ikke er lesbart for andre en selve webhosten – selvsagt uten problemer. WordPress finner den med engang, men hvorfor dette ikke er standard kan jeg ikke si noe på.

Det er jo på samme måte sikkert som om du beskytter den med en .htaccess fil i rot-mappa til WordPress, men ved å bare flytte den så behøver du ikke å gjøre noe annet enn å, ja, flytte den.

16. Tom
01.12.10

La foresten merke til i PHP-koden jeg skrev over, så er disse «gåseøynene» i et annet format, altså “ og ikke » – disse må byttes ut med «.

To du an’?

17. Tom
01.12.10

Ha ha, nå la jeg merke til at kommentarene får automatisk de «gåseøynene» som er feil – du må bruke de som er på SHIFT + 2.

01.01.11

Dette er gode oppgraderinger til å begynne med, men man bør kanskje sikre login-siden litt bedre, samt sikre .htaccess og wp-config.php. For ikke å nevne file permissions på diverse filer man skulle ha liggende som writeable via ftp. Det er mye å ta tak i her. =)

Godt nytt år!

19. Anders
02.01.11

Sindre,

Dette innlegget med påfølgende kommentarer ble veldig nyttig og verdifult.
Godt beskrevet og helt i detalj slik at «alle er med».
Angående punkt 1 og backup blir det tipset om en WP-plugin man kan bruke for å kjøre en backup, men denne skal bare sikre dine innlegg og kommentarer.

Du skriver: «NB: Denne pluginen tar kun backup av databasen din. Du beholder innlegg og kommentarer, men themes og plugins kan likevel gå tapt. Jeg skal snart skrive om en metode som gir full og sikker backup, samt enkel gjenopprettelse av hele bloggen, inkl. themes og plugins. Følg med!

Hvordan kjører dere andre en fullstendig backup? Har dere funnet en WP plugin som gjør hele jobben? Eller har dere andre metoder – en enkel, men sikker metode som er grei å følge?

[...] Etter å ha lest et innlegg på www.Glabladet.no så søkte jeg rundt på wordpress.org etter innstikk for å ta backup av min side. [...]

17.03.11

Et godt innstikk for å ta backup av wordpress blogger er EZPZ One Click Backup. Da tar du backup av hele webserveren og databasen. Backupen blir lagret på webserveren, men med et enkelt klikk kan du laste ned backupen til din harddisk.

www.Glabladet.no drives av Låstad Communications | Org. nr: 992 171 332 MVA
www.Glabladet.no 2008-2014 - Hostes av SolidHost | >> Personvern | >> Disclaimer |