WordPress beveiliging: 12 tips om je WordPress website veiliger te maken
Een website kan je onderneming een serieuze boost geven, maar een onveilige website kan ook de oorzaak zijn voor heel wat kopzorgen. WordPress beveiliging is dus een hot topic. In dit artikel ontdek je 12 tips om je WordPress website veiliger te maken.
Je ziet maar al te vaak in de media dat er een website gehackt werd en dat daardoor tal van gegevens zomaar op straat liggen. Dat soort zaken komen met heel wat reputatieschade, rechtszaken en dure schadevergoedingen. Voorkomen is beter dan genezen. Daarom vind je hieronder 12 essentiële tips voor WordPress beveiliging.
Inhoudstafel
Houd alles up-to-date
Software up-to-date houden is niet alleen goed advies voor je website, maar ook voor je computer, smartphone, tablet en tegenwoordig zelfs je deurbel, fiets, auto, stofzuiger …
Wanneer er een beveiligingslek wordt ontdekt in software, rollen de ontwikkelaars een update uit om dit gat te dichten. Wanneer je die update niet installeert, zet je de deur dus open voor aanvallers die heel specifiek op zoek gaan naar slachtoffers die een oude versie van deze software gebruiken.
Voor een WordPress website betekent dat concreet dat je volgende zaken up-to-date dient te houden:
- WordPress Core: dit is het algemene platform waar je jouw website op bouwt. Het is te vergelijken met het besturingssysteem op je computer.
- Thema’s: een thema zorgt voor lay-out en functionaliteiten. Dankzij een thema krijgt je website effectief een gezicht. Zonder thema is WordPress maar een lege doos.
- Plugins: zowat elke WordPress website maakt gebruik van plugins. Dit zijn kleine stukjes software die je website uitbreiden met extra functionaliteiten.
Belangrijk: klik niet zomaar op ‘update alles’ in je WordPress dashboard. Het updaten van software kan altijd zorgen voor nieuwe problemen en conflicten. Het gebeurt maar al te vaak dat iemand nooit updates doet, om vervolgens doodleuk op ‘update’ te klikken wanneer er honderden updates klaarstaan. Idealiter probeer je deze updates eerst uit in een testomgeving, om te verifiëren of er nieuwe problemen ontstaan. Het feit dat een update nieuwe bugs kan introduceren, is echter geen reden om plugins niét te updaten (alhoewel er in de praktijk nogal vaak een gevaarlijke “if it ain’t broke, don’t touch it” mentaliteit leeft).

Aan de hand van een beheersovereenkomst kan je dit soort updates uitbesteden aan een professional, zodat jij je kan focussen op je onderneming.
Wees kieskeurig
Ik zie maar al te vaak dat mensen héél graag WordPress plugins installeren. Voor elke kleine aanpassing of wijziging die je wil maken aan je website, is er wel iemand die er een plugin voor heeft gemaakt. Dat is makkelijk, maar komt ook met risico’s:
- Traagheid: elke plugin die je toevoegt aan je website, zorgt voor extra code en complexiteit. Dat resulteert in een tragere website.
- Foutgevoelig: hoe meer plugins op je website, hoe groter de kans dat sommige van deze plugins met elkaar gaan conflicteren. Wanneer je website ‘plots’ niet meer werkt, dan is de kans groot dat dit te wijten is aan een van de plugins.
- Lastiger in onderhoud: hoe meer plugins, hoe meer bewegende onderdelen op je website, en hoe lastiger het wordt om je site te onderhouden. Elke plugin komt met zijn eigen updates, en het kan altijd voorvallen dat er een fout zit in een van deze updates waardoor je website niet (goed) meer functioneert.
- Stopzetting van ondersteuning: iedereen kan een plugin maken en publiceren. Vaak gaat het dan ook om hobbyprojecten van ontwikkelaars. Wanneer die ontwikkelaar het echter te drukt krijgt of geen zin meer heeft om zijn plugin te onderhouden, krijgt die plugin ook geen updates meer. Dit vormt een groot beveiligingsrisico, want beveiligingslekken worden niet meer gedicht.
Alvorens je weer eens een plugin installeert, stel jezelf dan eerst de volgende vragen:
- Heb je de plugin echt nodig? Vaak gaat het om een kleine functionaliteit (zoals een banner bovenaan je website plaatsen) die je evengoed kan afhandelen met een klein stukje code.
- Wordt de plugin nog actief onderhouden? Installeer geen plugins die al meerdere maanden geen updates meer hebben gekregen. Dit betekent vaak dat de ontwikkelaar niet meer bezig is met de plugin, waardoor beveiligingslekken ook niet meer worden gedicht. Ga in dit geval op zoek naar een alternatieve plugin die wel actief onderhouden wordt.
- Zijn er veel actieve installaties? Safety in numbers. Wanneer je een plugin gebruikt die door miljoenen andere sites gebruikt wordt, worden fouten in de code veel sneller ontdekt dan wanneer je een plugin gebruikt die slechts door een paar honderden sites wordt gebruikt.

Gebruik veilige wachtwoorden
Het spreekt voor zich, maar een wachtwoord zoals ‘topsecret’ of ‘wordpress123’ is niet bepaald uitdagend voor aanvallers. Zorg er dus voor dat de administrators op je website gebruikmaken van een veilig wachtwoord.
Het wijzigen van je wachtwoord kan door rechtsboven naar je profiel te gaan, en vervolgens te kiezen voor ‘Edit Profile’.

Beperk het aantal inlogpogingen
Een van de meestvoorkomende aanvallen, is een brute-force attack. Dit betekent dat iemand het inlogscherm van je website bezoekt, en vervolgens probeert om in te loggen met een variatie van (veelvoorkomende) wachtwoorden. Het kan zelfs gaan om aanvallers die via een ‘dictionary attack’ alle woorden uit het woordenboek proberen als wachtwoord. Dit verloopt via geautomatiseerde systemen die aan een verschroeiend tempo inlogpogingen kunnen ondernemen.
Dit soort aanvallen kan je verhinderen door het aantal inlogpogingen te beperken. Wanneer er 3 foutieve wachtwoorden werden ingegeven, kan je het IP-adres van de gebruiker (tijdelijk) blokkeren, zodat deze een aantal minuten (of langer) moet wachten alvorens er een nieuwe poging kan worden ondernomen.
Het beperken van de inlogpogingen kan met een plugin zoals Limit Login Attempts Reloaded.

Gebruik SSL / HTTPS
Tegenwoordig zou het zo voor de hand moeten liggen dat ik het eigenlijk niet meer moet herhalen, maar al te vaak zie ik nog websites die geen gebruikmaken van SSL.
SSL beschermt de verbinding tussen jouw bezoeker en jouw website. Het zorgt ervoor dat informatie via een geëncrypteerde tunnel verloopt. Zo kan die informatie niet zomaar onderschept worden door iemand anders. Op die manier kan je jouw bezoekers beschermen tegen een man-in-the-middle attack.
Zonder HTTPS, kan iemand anders de communicatie tussen jou en een website afluisteren. Wanneer je vervolgens jouw inloggegevens ingeeft in een website, kan het zomaar zijn dat iemand je aan het ‘afluisteren’ is en nu dus beschikt over jouw inloggegevens.

Een website die niet beschikt over SSL / HTTPS zal het overigens ook moeilijk hebben om te scoren in de zoekresultaten.
Overweeg IP whitelisting
Een van de beste manieren om je WordPress back-end te beveiligen, is door actief IP-adressen te gaan whitelisten. Wanneer je thuis (of op eender welke locatie) beschikt over een internetverbinding, dan communiceer je met andere apparaten op het internet (zoals webservers) via een uniek IP-adres.
Je kan dit IP-adres gebruiken om de toegang tot je wp-admin dashboard te beperken tot vertrouwde IP-adressen, zoals het IP-adres van jouw thuisadres en eventueel je kantoor. Enkele zaken waar je rekening mee moet houden:
- Kies voor een vast (fixed) IP-adres: standaard kennen telecombedrijven een ‘dynamisch’ IP-adres toe. Dat betekent dat je IP-adres regelmatig wijzigt. Hoe vaak en wanneer dat gebeurt, weten enkel de telecombedrijven. Wanneer je vandaag jouw IP-adres whitelist, kan het dus zomaar zijn dat je morgen buitengesloten bent van je website omdat je IP-adres ondertussen is gewijzigd. Bij veel telecombedrijven kan je wel een ‘fixed’ IP-adres aanvragen, zodat je IP-adres altijd gelijk blijft.
- Overweeg een VPN: wat als er meerdere mensen zijn die aan je website werken? Je hebt bijvoorbeeld een kantoor, maar ook een tiental medewerkers die ook van thuis uit werken. In dat geval kan het een heel gedoe zijn om al die IP-adressen te whitelisten (zeker omdat de IP-adressen van de medewerkers thuis vaak dynamisch zijn). Een oplossing is om enkel het (vaste) IP-adres van je kantoor te whitelisten, en om medewerkers via een VPN te laten verbinden met een VPN-server op je kantoor. Op die manier gebruiken de medewerkers thuis (of op andere locaties) hetzelfde IP-adres als op kantoor.
IP-whitelisting doe je idealiter in je .htaccess bestand op je webserver.

Maak gebruik van 2FA
2FA, oftewel Two Factor Authentication, wordt steeds populairder. Je kent het wel; je logt in met je gebruikersnaam en wachtwoord, en vervolgens ontvang je een SMS met een code of je moet een code opvragen via een app zoals Google Authenticator.
Dat soort authenticatie voegt een extra beveiligingslaag toe, want het is voor aanvallers niet langer voldoende om over je gebruikersnaam en wachtwoord te beschikken. Ze hebben ook een fysiek apparaat (vaak je smartphone) nodig. En zelfs wanneer ze jouw smartphone hebben, moeten ze ook nog eens de pincode hebben om je telefoon te ontgrendelen (op voorwaarde dat je uiteraard over een pincode beschikt, wat absoluut een goed idee is).
Alhoewel 2FA niet standaard in WordPress zit, kan je de functionaliteit makkelijk toevoegen via een plugin zoals WP 2FA of Wordfence.

Wijzig de standaard wp-login.php URL
Standaard gebruikt WordPress de wp-login.php URL voor elke WordPress installatie. Probeer gerust eens om op een website /wp-admin of /wp-login.php achter de URL te typen. In veel gevallen zal je een WordPress login pagina te zien krijgen.
Alhoewel dit op zich geen probleem hoeft te zijn, wordt het zo wel makkelijker voor aanvallers om via geautomatiseerde software inlogpogingen te ondernemen op je website. Wanneer je de URL van jouw inlogpagina vervangt door iets anders, moeten aanvallers weer een extra drempel overwinnen.
Dit heet ‘security through obscurity‘. Alhoewel het nooit je enige beveiligingslaag mag zijn, is het wel een nuttige toevoeging. Het kan ook zorgen voor minder belasting op je webserver, aangezien bots vaak de standaard wp-login.php URL uitproberen.
Door wat vervang je de URL dan? Op zich maakt het niet uit, maar neem niet iets standaard zoals /admin of /backend, dat is opnieuw een veelvoorkomende URL die makkelijk te raden is. Wees dus creatief, maar vergeet uiteraard de URL niet.
Het wijzigen van de WordPress inlogpagina kan via een plugin zoals WPS Hide Login.
Belangrijk: In sommige gevallen kan het wijzigen van een standaard WordPress functionaliteit (in dit geval de standaard wp-login URL) voor conflicten zorgen met andere plugins die een dergelijke wijziging niet voorzien hebben. Net zoals altijd, is het hier dus ook belangrijk om je website goed te testen na het aanbrengen van wijzigingen.

Gebruik een security plugin
Een security plugin zoals Wordfence of Sucuri combineert meerdere beveiligingslagen. Zij komen bijvoorbeeld met zaken zoals brute force protection, maar scannen ook actief op malware, onveilige wachtwoorden en onveilige plugins (omdat ze bijvoorbeeld niet meer ondersteund worden door de ontwikkelaar).
Dergelijke plugins zijn vrij complexe en uitgebreide stukken software. Ze voeren heel wat (geautomatiseerde) scans uit en zijn daardoor ook vrij belastend voor je server. Wanneer je gebruikmaakt van goedkope hosting, kan het dus lastig zijn om een dergelijke plugin te runnen.
Kwalitatieve webhosting is alles
Webhosting is de verzamelnaam voor alles dat te maken heeft met het online houden van jouw website. Jouw website leeft op een server. Deze server heeft ook updates en patches nodig om veilig te blijven. In de meeste gevallen doet de webhoster dit voor jou (met uitzondering van unmanaged webhosting).
Kiezen voor een reputabele webhoster en investeren in kwalitatieve webhosting, is dus een van de belangrijkste stappen die je kan zetten voor de beveiliging van je website. Je mag WordPress nog zo goed beveiligen, als de deur van je webserver wagenwijd open staat heeft het allemaal geen zin.
Update PHP
PHP is de programmeertaal waar WordPress op werd gebouwd. Net zoals alle software krijgt PHP ook regelmatig updates. Die updates maken PHP sneller en veiliger. Het is dus belangrijk om regelmatig je PHP-versie te upgraden naar de laatste versie, maar het is belangrijk om de compatibiliteit van je website, thema en plugins te controleren alvorens je zomaar een PHP-versie gaat omzetten.
Wanneer je bijvoorbeeld PHP 7 gebruikt, en je zet deze om naar PHP 8, dan kan het zijn dat je website niet meer functioneert. Dit is omdat in PHP 8 sommige code die wél nog werkte in PHP 7 niet meer ondersteund wordt. In veel gevallen moet er dus code worden aangepast om de nieuwste PHP-versie te ondersteunen.
Idealiter probeer je een PHP upgrade dus eerst uit op een testomgeving, alvorens je dit probeert op je productie (live) omgeving.
Overweeg Cloudflare
Wanneer je een drukbezochte website hebt, wordt het steeds belangrijker om je server resources zoveel mogelijk te optimaliseren. Met veel bezoekers, kan je website namelijk al snel traag worden. Dan kan je bots en aanvallen missen als kiespijn.
Alhoewel alle bovenstaande tips helpen om je WordPress website veiliger te maken, hebben ze allemaal één ‘probleem’: ze worden uitgevoerd op de webserver. Dit betekent dat je webserver wel nog steeds heel wat werk heeft om al deze aanvallen af te blokken.
Een service zoals Cloudflare werkt op een ‘hoger niveau’. Wanneer een kwaadwillende bot of aanvaller je website wil bezoeken, zal Cloudflare deze afweren vóórdat deze request jouw webserver bereikt. Jouw server heeft dus geen extra werk aan deze request, aangezien deze nooit de server bereikt.
WordPress beveiliging: wanneer begin je eraan?
Besteed zo vroeg mogelijk de nodige aandacht aan WordPress beveiliging! Voorkomen is beter dan genezen. Een gehackte website vol malware opkuisen is geen sinecure, en er is nooit een garantie dat je echt álle malware hebt verwijderd. Er kunnen altijd restanten achterblijven.
Houd ook zeker met de reputatieschade voor jouw onderneming wanneer jouw website gehackt wordt. Dat soort zaken zijn geen lachertjes, en is iets waar je je als website-eigenaar van bewust moet zijn.
Schiet dus niet in actie wanneer het reeds te laat is, maar beveilig je WordPress website vóórdat aanvallers de kans krijgen om je website te hacken.
