Penetration Test WordPress: Plugin CVE, REST API e Sicurezza CMS Enterprise
WordPress alimenta il 43% di tutti i siti web — incluse migliaia di PMI italiane, e-commerce WooCommerce, e blog editoriali. Le vulnerabilità WordPress si concentrano nei plugin (1.500+ CVE/anno secondo WPScan) e nell'API REST. CVE-2024-1827 (Elementor), CVE-2023-5561 (REST API user enum), CVE-2023-1862 (jQuery XSS) sono solo esempi recenti. Matproof Sentinel esegue pentest WordPress mirati con audit-ready report DORA / GDPR da 149 €.
Perché WordPress richiede attenzione speciale al penetration test
WordPress è il CMS più popolare al mondo, ma anche il più attaccato: Sucuri rapporta che 43% dei siti hackerati nel 2024 erano WordPress, con la maggior parte dei breach causati da plugin obsoleti. I plugin sono il vettore #1: WPScan ha catalogato oltre 5.000 CVE in plugin WordPress nel solo 2023-2024. CVE-2024-1827 (Elementor < 3.16.4) permette stored XSS sfruttabile per session hijacking. CVE-2023-5561 (WordPress core < 6.3.2) abilita user enumeration via REST API anche con autenticazione richiesta. Oltre alle CVE, le installazioni WordPress espongono superfici legacy: XML-RPC abilitato di default permette amplificazione DDoS e brute-force, wp-config.php exposed se mal configurato, wp-admin senza limitazione IP attacca da botnet (50.000+ tentativi/giorno per sito tipico). Per aziende italiane con presence WordPress (sito istituzionale, e-commerce WooCommerce, blog corporate), un pentest WordPress documentato è elemento standard di compliance GDPR Art. 32 e DORA Art. 24 (per fintech con landing pages WordPress).
- CVE-2024-1827 (Elementor < 3.16.4): stored XSS sfruttabile per session hijacking — Elementor è installato su 5+ milioni di siti WordPress.
- CVE-2023-5561 (WordPress core < 6.3.2): user enumeration via REST API anche con autenticazione richiesta — facilita preparation phase per brute-force.
- CVE-2023-1862 (jQuery XSS via plugins): exploitable XSS in centinaia di plugin che ancora usano jQuery vulnerabile.
- 5.000+ CVE in plugin WordPress documentate da WPScan nel 2023-2024 — la maggior parte dei siti hackerati ha plugin obsoleti come root cause.
- XML-RPC abilitato di default: permette amplificazione DDoS (pingback method) e brute-force con bypass del rate limiting standard wp-login.php.
- REST API esposta: enumerazione utenti (/wp-json/wp/v2/users), post privati (privacy bug se mal configurato), exposed meta data.
- WooCommerce + e-commerce: superficie attacco aggiuntiva — payment processing, customer PII, REST API per inventario, plugin di pagamento con CVE.
Cosa testiamo specificamente in un'installazione WordPress
- Plugin audit: enumerazione di tutti i plugin installati (anche se inattivi), cross-reference con WPScan vulnerability database (5.000+ CVE), priorità su plugin con installazioni > 100k.
- WordPress core: detection della versione (anche se hidden), check CVE applicabili (es. CVE-2023-5561), audit di custom themes/child themes.
- REST API: enumerazione endpoint /wp-json/, user enumeration via /wp-json/wp/v2/users, exposed sensitive data, autenticazione corretta su endpoint riservati.
- XML-RPC: verifica abilitazione (default ON in molte installazioni), test di pingback amplificazione DDoS, brute-force via system.multicall.
- Authentication: wp-login.php con limitazione tentativi (Wordfence, Limit Login Attempts), 2FA (Two-Factor, Wordfence 2FA), wp-admin con HTTPS + IP whitelist se possibile.
- wp-config.php / file system: protezione di wp-config.php e .env, file upload directory (wp-content/uploads/) senza esecuzione PHP, backup files (.bak, .old) non esposti.
- Database security: prefix tabelle non default (wp_), utente DB con privilegi minimi (no DROP/ALTER necessari runtime), connection over TLS.
- WooCommerce / e-commerce specifici: payment gateway plugin audit, PCI-DSS scope (per stores con > 1k transactions/anno), customer data export endpoints.
- SEO plugins (Yoast, RankMath): admin panel exposure, XML sitemap che leakano post privati, REST API endpoints con auth bypass.
- Backup plugins: UpdraftPlus, BackupBuddy, WP All-in-One Migration — backup files esposti pubblicamente via prediction degli URL.
Esempio di finding
Plugin Elementor < 3.16.4 con stored XSS sfruttabile (CVE-2024-1827)
L'installazione WordPress utilizza Elementor 3.15.2, affetto da CVE-2024-1827 (CVSS 5.4 secondo NVD, ma escalabile a 8+ in contesti con autenticazione admin). La vulnerabilità permette a un utente con ruolo Contributor o superiore di inserire stored XSS nei widget Elementor che vengono renderizzati nel pannello admin di altri utenti. Il test ha dimostrato: (1) creazione di un utente Contributor; (2) inserimento di payload XSS in Elementor widget; (3) quando un Administrator accede al pannello, l'XSS si esegue rubando il cookie wordpress_logged_in_*; (4) takeover completo dell'account Administrator. Impact: chiunque possa registrarsi al sito (registrazione aperta o invite-link) può escalare a admin tramite questo flow.
Correzione: Azione immediata (priorità 1): aggiornare Elementor ≥ 3.16.4 (versione patched). Disabilitare temporaneamente la registrazione aperta utenti se la patch non può essere applicata immediatamente. Azioni complementari: audit completo di tutti i plugin con WPScan CLI (npm install -g @wpscan/wpscan-cli, poi `wpscan --url https://yoursite.com --enumerate vp`); abilitare 2FA per tutti gli utenti con ruolo Editor+ (plugin Wordfence Login Security o Two-Factor); restringere wp-admin per IP whitelist tramite .htaccess o Cloudflare WAF rule; configurare auto-updates per plugin minor (plugin core e di sicurezza si aggiornano automaticamente); log monitoring per attività anomale degli utenti (audit log plugin come WP Activity Log).
Riferimento: CVE-2024-1827 (CVSS 5.4) · WPScan: ID 5d80e0e4-2873-4dd1-8b6b-2d7e0e3e6e4f · CWE-79 Cross-site Scripting · OWASP A03:2021 Injection
Pentest WordPress: opzioni a confronto
| — | Scan gratuito | Matproof Sentinel | Consulenza tradizionale |
|---|---|---|---|
| Motore di scansione automatizzato | ✓ (anteprima 3 min) | ✓ Scansione completa | ✗ Solo manuale |
| Copertura OWASP Top 10 | Parziale | ✓ Completa | ✓ Completa |
| Prova di exploit | ✗ | ✓ Per finding | ✓ Per finding |
| Mapping normativo (DORA/NIS2/ISO 27001) | ✗ | ✓ Automatizzato | ✓ Manuale |
| Report PDF pronto per l'audit | ✗ | ✓ Immediato | ✓ Consegna 2–4 settimane |
| Scansioni continue / ricorrenti | ✗ | ✓ Per deploy | ✗ Impegno annuale |
| Tempo al primo risultato | ~3 min | ~30 min scansione completa | 2–4 settimane |
| Prezzo | €0 | Da €149 | €8.000–€25.000 |
| Revisione codice sorgente (SAST) | ✗ | ✓ Piano Growth | ✓ In scope |
| Test API (REST/GraphQL) | ✗ | ✓ Automatizzato | ✓ Manuale |
Pacchetti pentest WordPress
- 1 scansione pentest completa
- Risultati prioritizzati da AI con CVSS 3.1
- Proof-of-exploit per ogni finding
- Report PDF (pronto per l'audit)
- Mapping normativo (DORA, NIS2, ISO 27001)
- Scansioni illimitate (fino a 3 domini)
- Monitoraggio continuo
- Integrazione CI/CD (GitHub, GitLab)
- Tutti i mapping normativi
- Supporto prioritario
- Scansioni + domini illimitati
- Test autenticati / White-Box
- Test API e infrastruttura cloud
- Account manager dedicato
- SLA risposta 24h
Domande frequenti sul pentest WordPress
Quante CVE di plugin WordPress controllate?
Cross-referenziamo l'inventario di plugin del sito contro il database WPScan completo: 5.000+ CVE catalogate per WordPress core, themes, e plugin. Priorità su plugin con > 100k installazioni e CVE classificate CVSS ≥ 7.0. Anche i plugin inattivi sono testati — un plugin disabilitato ma installato può ancora essere exploit-bersaglio se le file sono leggibili via web.
Testate anche WooCommerce specifically?
Sì. WooCommerce ha la propria superficie di attacco: REST API endpoints (/wp-json/wc/v3/*), payment gateway plugin (Stripe, PayPal, Bancomat italiani), customer data export, checkout flow per IDOR. Per stores PCI-DSS scoped (> 1k transazioni/anno), il pentest WooCommerce è elemento richiesto per audit annuale.
Cosa testate per le installazioni multisite (WordPress Network)?
Multisite ha rischi specifici: super admin con accesso cross-network, plugin attivati a livello network che ereditano vulnerabilità su tutti i siti, file system condiviso (un breach può cross-contaminate). Testiamo: privilege escalation cross-site, file path traversal tra siti, network-wide plugin CVE.
Possiamo integrare il pentest in un workflow di publishing editoriale?
Sì. Per editorial workflows (testate periodiche, magazine), proponiamo: scan mensile dopo deployment, alert immediato se nuova CVE high/critical è scoperta in un plugin installato, audit log automatico per attività utente. Plan Starter o Growth.
Il pentest può causare downtime al nostro sito WordPress in produzione?
Il rischio è minimo. Scan automatico è semi-intrusivo (no DoS reale, no destructive testing). Per siti high-traffic (> 1M visite/mese), eseguiamo test contro staging environment. Per Critical findings con risk durante remediation, forniamo piano step-by-step. Assicurazione professionale (5 M€) copre eventuali danni accidentali.
Audit anche custom themes / child themes?
Sì. Custom themes sono spesso fonte di vulnerabilità: SQL injection in template files, IDOR in theme options, XSS via custom shortcodes. Testiamo tutti i .php files del theme attivo per: input non sanitizzato, eval()/system()/exec() usage, SQL queries con concatenation, file inclusion patterns.
Quanto tempo richiede un pentest WordPress completo?
Scansione automatica completa: 45-60 minuti per installazione WordPress tipica (50-200 plugin). Test include: WPScan cross-reference, REST API, XML-RPC, authentication, custom theme audit, WooCommerce se installato. Per installazioni complesse (multisite con 50+ siti, custom plugins), 2-3 ore. Report audit-ready in 24 ore.
Il report è accettato per audit GDPR / Codice Privacy italiani?
Sì. Il report tecnico fornisce evidenza di « misure tecniche adeguate » richieste da GDPR Art. 32. Per ispezioni del Garante della Privacy, il pentest documentato dimostra: testing regolare delle protezioni, identificazione vulnerabilità con remediation tracking, post-fix verification. Elemento mitigante per sanzioni in caso di data breach (Art. 83(2)(d) GDPR).
Argomenti correlati
Approfondisci — articoli correlati dal blog
Proteggi il tuo sito WordPress ora
Primo scan in 3 minuti, pentest WordPress completo in 45-60 minuti incluso audit di 5.000+ CVE plugin. Report audit-ready GDPR / DORA da 149 €.
Avvia scan gratuito