Når man står med en frisk installeret WordPress, vil der være nogle ting man rimeligt let kan gøre for at sikre sitet i forhold til hackere og bots.
Noget af det samme gælder også for mange andre sites, f.eks Joomla, Prestashop, Magento m.v.
1. Sørg for at login og password sikkerhed er på plads
Det er meget vigtigt, fordi hvem som helst kan forsøge at logge ind på sitet, at du starter med en god password skik – brug en passphrase. Læs her: http://youbiz-consulting.dk/2015/11/drop-passswords/
Skriver du blogs, så sørg for at det ikke er dit brugernavn der står som forfatter af din blog, da brugernavnet jo er en del af dit login, så ved at skjule brugernavnet gør du det sværere at ‘cracke’ dit login.
Brugernavnet admin bør i øvrigt slet ikke figurere på sitet.
2. Blokering af adgang til xmlrpc.php.
Wordpress indeholder en xmlrpc server, det vil sige en slags webservice som kan bruges af eksterne programmer til at logge ind på serveren og gøre forskellige ting. Det kan være smart når man bruger eksterne værktøjer til at redigere sin blog. Problemet er bare at det umiddelbart er en service som hvem som helst kan tilgå og forsøge at logge ind på sitet, det er endog muligt for en hacker at prøve flere login kombinationer i samme kald til denne service.
Hvis du ikke er bevidst om noget der skal bruge xmlrpc servicen, f.eks hvis du ikke bruger eksterne applikationer til at poste m.v., kan det være en god idé at blokere adgangen til denne service indtil behovet kommer.
Det er selvfølgelig muligt at denne service bruges af eksisterende plugins eller eksterne applikationer, derfor kan man åbne efter behov som der f.eks er gjort herunder for IP adressen <application ip>, som kunne være ip adressen til en ekstern applikation, og <server ip> som er ip adressen på serveren selv.
Apache configuration:
# Block WordPress xmlrpc.php requests <Files xmlrpc.php> order deny,allow deny from all allow from [application ip] allow from [server ip] </Files>
NGINX configuration:
server { location = /xmlrpc.php { allow [application ip]; allow [server ip]; deny all; } }
IP adressen <application ip> er hermed den eneste ud over serveren selv der får adgang til denne service.
Læs mere her:
Disable WordPress XML-RPC requests
Brute Force Amplification Attacks Against WordPress XMLRPC
Should you disable XMLRPC on WordPress ?
3. Sørg for at plugins er gennemtestede og ikke åbner sikkerhedshuller
Hvem som helst kan skrive et plugin til WordPress, og der er ingen garanti for at et plugin ikke indeholder et sikkerhedshul, vær derfor f.eks. opmærksom på hvordan et plugin bedømmes af brugerne.
Læs mere her: How to know if a wordpress plugin is safe
4. Intrusion detection og firewall
Hvis du f.eks administrer din egen webserver anbefales det på det kraftigste at installere intrusion detection software, som f.eks Fail2Ban som kan arbejde sammen med en evt. firewall og blokere hack-attempts.
Fail2ban kan konfigureres på mange måder. Den kan både beskytte SSH, FTP, Webserver, og enkelte websites som f.eks en WordPress installation mod dos-atacks og brute-force attempts.
Der findes også plugins til wordpress f.eks Wordfence, der kan virke som en firewall på applikations niveau. Er det første ikke en mulighed er dette en anden mulighed. En application-firewall vil dog tage nogle af sitets reserverede resourcer, så dette skal man være opmærksom på, og evt. afsætte flere resourcer til sitet.
5. SSL
SSL / HTTPS er blevet meget mere essentielt end det var for nogle år siden. Det skyldes at meget internet trafik foregår på mobile enheder som telefoner, tablets og laptops over åbne offentlige netværk som f.eks i s-tog, på cafeer, i lufthavne o.s.v.
Her løber man sådan set en risiko ved blot at besøge et website man tidligere har været logget på, så hvis du f.eks redigerer artikler over et åbent netværk og ikke bruger ssl, kan din sessions cookie opfanges af folk på samme netværk.
Læs mere her: Bruger du ssl i din shop