90% van wat een KMO-site nodig heeft op security-vlak is gratis en kost een halve dag werk. De andere 10% kost meer. Maar daar begin je niet mee. De meeste sites die wij gehackt aantreffen, zijn niet getroffen omdat de aanvallers slimmer werden, maar omdat de basics niet op orde waren. Hieronder de minimum-checklist die elke KMO-site zou moeten halen.

1. HTTPS overal: geen halfslachtige setups

In 2026 zou dit geen onderwerp meer mogen zijn, maar we komen het nog steeds tegen: sites zonder HTTPS, of HTTPS dat enkel op de homepage actief is.

Wat je moet hebben:

  • ✓ Geldig SSL-certificaat (Let’s Encrypt is gratis en degelijk)
  • ✓ Alle HTTP-verkeer wordt automatisch geredirect naar HTTPS
  • ✓ Geen mixed content (HTTPS-pagina die HTTP-afbeeldingen of -scripts laadt)
  • ✓ HSTS-header actief, minstens met max-age=31536000

Hoe te checken: open je site in incognito-modus, controleer het slotje in de adresbalk, en gebruik ssllabs.com/ssltest voor een grondige audit. Mik op een A-rating of hoger.

2. Alle software actueel

Verouderde software is de nummer één oorzaak van gehackte sites. WordPress core, Drupal core, plugins, modules, thema’s. Als er een update klaarstaat, is er meestal een reden.

Wat je moet doen:

  • ✓ Minor en patch-updates: automatisch waar mogelijk
  • ✓ Major-updates: maandelijks gepland, met een staging-test eerst
  • ✓ Verlaten plugins of modules verwijderen (niet enkel deactiveren)
  • ✓ PHP-versie up-to-date (8.2+ in 2026, geen 7.x meer)

Hoe te checken: log in op je CMS-admin en kijk wat er aan updates wacht. Als de teller boven de 10 staat, ben je al maanden niet langs geweest.

Pas wel op: blind alles updaten op productie is een recept voor stuk. Test op staging. Daarover meer onder punt 5.

3. Sterke admin-paswoorden plus 2FA

Brute-force-aanvallen op admin-logins zijn dagelijkse kost. Voor een gemiddelde WordPress-site zien we tussen 100 en 5000 inlogpogingen per dag. Met een zwak paswoord komt iemand vroeg of laat binnen.

Wat je moet hebben:

  • ✓ Geen “admin” als gebruikersnaam (verander dat vandaag)
  • ✓ Paswoorden van minstens 16 karakters, gegenereerd door een paswoordmanager
  • ✓ Tweefactor-authenticatie verplicht voor élke admin-account
  • ✓ Login-pogingen gelimiteerd (Wordfence, Limit Login Attempts of equivalent)

Hoe te checken: kun je inloggen met enkel een paswoord? Dan heb je geen 2FA. Activeer het vandaag.

4. Beperk plugins en modules tot het noodzakelijke

Elke plugin is een potentiële ingang. Een WordPress-site met 35 plugins heeft 35 codebases vol potentiële kwetsbaarheden. We zien sites met “even getest” plugins die er drie jaar later nog steeds opstaan, ongebruikt.

Wat je moet doen:

  • ✓ Inventariseer elke 6 maanden welke plugins/modules actief zijn
  • ✓ Verwijder wat je niet meer gebruikt
  • ✓ Kies plugins van actieve ontwikkelaars (laatste update binnen het jaar, minstens 10.000 installaties als benchmark)
  • ✓ Stel jezelf de vraag: kan dit ook zonder plugin?

Streefcijfer: een typische KMO-site komt toe met 8-15 plugins. Boven 20 begin je technische schuld op te bouwen.

5. Automatische backups: off-site!

Backups die alleen op dezelfde server staan, zijn geen backups. Als de server gehackt of geformatteerd wordt, gaat alles mee.

Wat je moet hebben:

  • ✓ Dagelijkse backups van bestanden én database
  • ✓ Off-site opslag (S3, Backblaze, een tweede provider, niet dezelfde host)
  • ✓ Retentie: minstens 30 dagen, idealiter 90
  • ✓ Eén keer per kwartaal een restore-test (zonder die test is je backup theoretisch)

Tools: UpdraftPlus of BackWPup voor WordPress, het Backup-module-ecosysteem voor Drupal, Plesk’s ingebouwde backup-manager voor het hele server-niveau.

De restore-test is de stap die iedereen overslaat. Backup nemen is makkelijk. Backup terugzetten op een ander systeem en zien dat de site werkt, is wat echt telt.

6. Security headers correct ingesteld

Security headers zijn HTTP-instellingen die de browser vertellen wat hij wel en niet mag toelaten. Ze zijn gratis, kosten één keer instellen, en stoppen een hele categorie aan aanvallen (XSS, clickjacking, MIME-sniffing).

Minimumset:

  • Strict-Transport-Security (HSTS)
  • Content-Security-Policy (CSP: begin met default-src 'self' en verfijn)
  • X-Content-Type-Options: nosniff
  • X-Frame-Options: SAMEORIGIN (of CSP frame-ancestors)
  • Referrer-Policy: strict-origin-when-cross-origin

Hoe te checken: securityheaders.com/?q=jouw-site.be. Mik op A of A+.

Een goede Content-Security-Policy schrijven kan technisch lastig zijn. Start permissief en verstrak progressief. Een te strakke CSP breekt je site, dus test op staging eerst.

7. Monitoring: zien dat het misgaat

Als je site offline is, wil je dat weten vóór je klanten je bellen. Als er ongebruikelijke admin-logins gebeuren, wil je een alert. Als files veranderen die niemand zou wijzigen, wil je een melding.

Wat je moet hebben:

  • ✓ Uptime-monitoring (Uptime Kuma, UptimeRobot, of equivalent, gratis tier volstaat)
  • ✓ Notificatie bij admin-logins van onbekende IP’s
  • ✓ File integrity monitoring voor kritieke bestanden (Wordfence doet dit voor WordPress)
  • ✓ Uitsmijter: een log van wat er in de afgelopen 30 dagen wijzigde aan plugins of gebruikers

Wat ALS er toch iets misgaat: incident response in 3 stappen

Geen enkele site is 100% veilig. Als het misgaat:

  1. Isoleer. Zet de site offline of in maintenance-mode. Beter een uur niet bereikbaar dan een week kwaadaardige content serveren. Verander álle admin-paswoorden, ook van de host.
  2. Onderzoek. Wat is er gebeurd? Welke files veranderden? Welke gebruiker werd aangemaakt? Zonder dit weten te beantwoorden, is een restore zinloos. De aanvaller komt terug.
  3. Restore plus patch. Backup terugzetten van vóór de inbraak, dan álle updates en patches doorvoeren. Daarna pas weer live, met verhoogde monitoring de eerste 30 dagen.

Schat een gemiddeld incident in op 2-5 werkdagen response-tijd. Niet onmogelijk om alleen te doen, maar veel KMO’s roepen hier extern advies bij.

Wat je écht niet zelf moet doen

Drie dingen die wij standaard adviseren niet zelf aan te raken:

  • WAF-configuratie op enterprise-niveau. Een Web Application Firewall correct tunen vergt expertise. Voor de meeste KMO’s volstaat de WAF die je host (of Cloudflare’s gratis tier) standaard meelevert.
  • Een geslaagde inbraak ontleden. Forensics is een vak. Roep iemand erbij in plaats van zelf te “even kijken”. Je vernietigt evidence en mist achterdeurtjes.
  • Custom security-code. Schrijf zelf nooit een eigen authenticatiesysteem. Gebruik wat je CMS of framework levert.

Volgende stap

Loop de zeven punten af op je eigen site. Faal je op meer dan 2, dan is een kort gesprek waarschijnlijk waardevol. Bekijk onze aanpak voor webontwikkeling of stuur ons een bericht. Voor een security-audit van een kleine tot middelgrote site rekenen we typisch een dag werk.