Un Web Application Firewall (WAF) e un livello di sicurezza che ispeziona ogni richiesta HTTP e HTTPS in ingresso a un sito web e blocca il traffico malevolo prima che raggiunga l applicazione. A differenza di un firewall di rete classico che filtra per IP e porta, un WAF comprende il protocollo HTTP e analizza URL, parametri, corpo della richiesta, cookie, intestazioni e user agent. Per WordPress blocca SQL injection, cross site scripting (XSS), local file inclusion, tentativi di brute force, spam nei commenti, scanner di vulnerabilita e pattern di exploit noti per plugin e temi. I WAF seguono le categorie OWASP Top 10 e sono requisito riconosciuto del PCI DSS (Requirement 6.4.2 nel PCI DSS v4.0, obbligatorio dal marzo 2025) per ogni sito che tratta dati di carta.
Come funziona un Web Application Firewall?
Un WAF ispeziona il traffico HTTP rispetto a un set di regole. Ogni regola cerca un pattern specifico: corpo con UNION SELECT, URL con ../../etc/passwd, modulo di login colpito piu di 5 volte al minuto dallo stesso IP. Al match il WAF puo bloccare con HTTP 403, sfidare con CAPTCHA o solo registrare. La maggior parte combina firme, anomalie e modelli di machine learning.
Quali tipi di WAF esistono?
- WAF in cloud (DNS): Cloudflare, Sucuri, Akamai, AWS WAF con CloudFront, Imperva.
- WAF reverse proxy: nginx con ModSecurity o HAProxy.
- WAF endpoint: plugin come Wordfence, All In One WP Security. Non ferma DDoS.
- WAF di rete (hardware): F5 BIG-IP ASM, FortiWeb, Barracuda.
Quali minacce blocca un WAF?
OWASP Top 10 (versione 2021, aggiornamento 2025 in bozza):
- A01 Broken Access Control.
- A02 Cryptographic Failures.
- A03 Injection.
- A04 Insecure Design.
- A05 Security Misconfiguration: blocca
wp-config.php.bak,.git/config,.env,xmlrpc.php. - A06 Vulnerable Components: patch virtuali per Elementor (CVE-2023-48777), WPBakery, RevSlider.
- A07 Authentication Failures: brute force su
/wp-login.php. - A08 Integrity Failures.
- A09 Logging Failures.
- A10 SSRF.
Cos e il virtual patching?
Quando viene pubblicata una vulnerabilita critica di plugin (per esempio l elevazione di privilegi CVE-2024-28000 in LiteSpeed Cache, oltre 5 milioni di siti coinvolti ad agosto 2024), il patch ufficiale impiega giorni a diffondersi. Un WAF applica una patch virtuale al bordo in pochi minuti. Wordfence le fornisce via Threat Intelligence Feed (Premium in tempo reale, Free con 30 giorni di ritardo).
Opzioni WAF popolari per WordPress
| Soluzione | Tipo | Gratis | Caratteristiche |
|---|---|---|---|
| Cloudflare | Cloud / DNS | Si | CDN, DDoS, Bot Fight Mode |
| Sucuri Firewall | Cloud / DNS | No, da 9,99 USD/mese | Pulizia malware inclusa |
| Wordfence | Plugin endpoint | Si | Threat Feed in tempo reale (Premium) |
| All In One WP Security | Plugin endpoint | Si | Login lockdown |
| NinjaFirewall | Endpoint pre WP | Si | Gira prima del core |
| AWS WAF | Cloud | No | Managed Rule Groups |
| Imperva | Cloud / DNS | No | SLA enterprise |
| ModSecurity + OWASP CRS | Reverse proxy open source | Si | Configurabile |
OWASP Core Rule Set
OWASP CRS e l insieme open source di regole usato da ModSecurity e sempre piu da Cloudflare e AWS WAF. Versione stabile CRS 4.0 (gennaio 2024), livelli di paranoia 1 a 4.
WAF cloud o plugin endpoint?
- Cloud: ferma gli attacchi prima del server, indispensabile contro i DDoS.
- Endpoint: vede traffico decifrato e contesto WordPress.
- Best practice: combinare entrambi.
Come attivare un WAF per WordPress
- Cloudflare Free: cambia nameserver, attiva Managed Rules e Bot Fight Mode, SSL Full strict.
- Sucuri Firewall: punta A record al proxy Sucuri.
- Wordfence: da Learning Mode a Enabled dopo una settimana.
- NinjaFirewall: sposta l esecuzione prima del core.
Limiti di un WAF
- Non e uno scanner di malware.
- Non protegge da password deboli o credential stuffing.
- Regole aggressive generano falsi positivi.
- Serve fiducia nel provider cloud.
- Non sostituisce gli aggiornamenti.
WAF e PCI DSS
PCI DSS v4.0 Requirement 6.4.2 (obbligatorio dal 31 marzo 2025) richiede un WAF o un processo manuale di revisione del codice per ogni applicazione web pubblica che tratta dati di carta.
Come InspectWP aiuta nel rilevamento WAF?
InspectWP analizza intestazioni di risposta e firme del server di ogni URL. Il report riconosce WAF comuni dalle impronte (Server: cloudflare, X-Sucuri-ID, X-WAF) e segnala i siti senza WAF.