Een Web Application Firewall (WAF) is een beveiligingslaag die elke binnenkomende HTTP en HTTPS request aan een website inspecteert en kwaadaardig verkeer blokkeert voordat het de applicatie bereikt. Anders dan een klassieke netwerk firewall die op IP en poort filtert, begrijpt een WAF het HTTP protocol en bekijkt URLs, query parameters, request bodies, cookies, headers en user agents. Voor WordPress blokkeert een WAF SQL injectie, cross site scripting (XSS), local file inclusion, brute force logins, comment spam, vulnerability scanners en bekende exploit patronen voor plugins en themes. WAFs volgen de OWASP Top 10 categorieen en zijn een erkende PCI DSS eis (Requirement 6.4.2 in PCI DSS v4.0, verplicht sinds maart 2025) voor elke site die kaartdata verwerkt.
Hoe werkt een Web Application Firewall?
Een WAF inspecteert HTTP verkeer tegen een set regels. Elke regel zoekt een specifiek patroon zoals een request body met UNION SELECT, een URL met ../../etc/passwd, of een loginformulier dat meer dan 5 keer per minuut vanaf hetzelfde IP wordt aangeroepen. Bij een match kan de WAF blokkeren met HTTP 403, challengen met CAPTCHA of alleen loggen. De meeste WAFs combineren signaturen, anomaliedetectie en machine learning.
Welke soorten WAF zijn er?
- Cloud WAF (DNS gebaseerd): Cloudflare, Sucuri, Akamai, AWS WAF met CloudFront, Imperva. Snelst uit te rollen.
- Reverse proxy WAF: nginx met ModSecurity of HAProxy.
- Endpoint WAF: plugin als Wordfence, All In One WP Security. Stopt geen DDoS.
- Netwerk WAF (hardware): F5 BIG-IP ASM, FortiWeb, Barracuda.
Welke bedreigingen blokkeert een WAF?
OWASP Top 10 (versie 2021, 2025 in concept):
- A01 Broken Access Control.
- A02 Cryptographic Failures.
- A03 Injection.
- A04 Insecure Design.
- A05 Security Misconfiguration: blokkeert
wp-config.php.bak,.git/config,.env,xmlrpc.php. - A06 Vulnerable Components: virtuele patches voor Elementor (CVE-2023-48777), WPBakery, RevSlider.
- A07 Authentication Failures: brute force op
/wp-login.php. - A08 Software and Data Integrity Failures.
- A09 Logging and Monitoring Failures.
- A10 SSRF.
Wat is virtual patching?
Wanneer een kritieke plugin kwetsbaarheid wordt gepubliceerd (bijvoorbeeld de LiteSpeed Cache privilege escalation CVE-2024-28000, ruim 5 miljoen sites in augustus 2024), duurt het uitrollen van de officiele patch dagen. Een WAF zet binnen minuten een virtual patch aan de edge. Wordfence levert deze via Threat Intelligence Feed (Premium realtime, Free 30 dagen vertraagd).
Populaire WAF opties voor WordPress
| Oplossing | Type | Gratis | Bijzonderheden |
|---|---|---|---|
| Cloudflare | Cloud / DNS | Ja | CDN, DDoS, Bot Fight Mode |
| Sucuri Firewall | Cloud / DNS | Nee, vanaf 9,99 USD/maand | Malware opschoning inbegrepen |
| Wordfence | Endpoint plugin | Ja | Realtime Threat Feed (Premium) |
| All In One WP Security | Endpoint plugin | Ja | Login lockdown |
| NinjaFirewall | Endpoint voor WP | Ja | Draait voor de core |
| AWS WAF | Cloud | Nee | Managed Rule Groups |
| Imperva | Cloud / DNS | Nee | Enterprise SLA |
| ModSecurity + OWASP CRS | Reverse proxy open source | Ja | Volledig configureerbaar |
OWASP Core Rule Set
OWASP CRS is de open source regelset voor ModSecurity en steeds vaker voor Cloudflare en AWS WAF. Stabiele versie CRS 4.0 (januari 2024), paranoia niveaus 1 tot 4.
Cloud WAF of endpoint plugin?
- Cloud: stopt aanvallen voor de server, nodig tegen DDoS.
- Endpoint: ziet ontsleuteld verkeer en WordPress context.
- Best practice: combineer beide.
WAF inschakelen voor WordPress
- Cloudflare Free: nameservers wijzigen, Managed Rules en Bot Fight Mode aan, SSL Full strict.
- Sucuri Firewall: A record op Sucuri proxy IP.
- Wordfence: na een week van Learning naar Enabled.
- NinjaFirewall: uitvoering voor de core verplaatsen.
Beperkingen van een WAF
- Geen malware scanner.
- Helpt niet tegen zwakke wachtwoorden of credential stuffing.
- Agressieve regels geven valse positieven.
- Vertrouwen in cloud provider nodig.
- Geen vervanging voor updates.
WAF en PCI DSS
PCI DSS v4.0 Requirement 6.4.2 (verplicht sinds 31 maart 2025) eist een WAF of handmatig codereview proces voor elke publieke webapplicatie die kaartdata verwerkt.
Hoe helpt InspectWP?
InspectWP analyseert response headers en server signaturen van elke gecrawlde URL. Het rapport herkent WAFs aan vingerafdrukken (Server: cloudflare, X-Sucuri-ID, X-WAF) en markeert sites zonder WAF.