
Kit di sfruttamento completo per la vulnerabilità SQL Injection CVE-2026-3180 - WordPress Contest Gallery. Include estrazione automatica dei dati, bypass WAF, reverse shell, integrazione con SQLMap, generazione di estensioni Burp e reporting per penetration testing e ricerca sulla sicurezza.
Strumento di valutazione proof-of-concept per CVE-2026-3180
Autore: Sudeepa Wanigarathna · Scoperta originale: cardosource
[!IMPORTANT] Solo per uso autorizzato. Questo strumento è destinato alla ricerca sulla sicurezza, all'istruzione e al test di sistemi di tua proprietà o per i quali hai esplicita autorizzazione scritta. L'accesso non autorizzato a sistemi informatici è illegale. L'autore non si assume alcuna responsabilità per un uso improprio.
CVE-2026-3180 è una SQL injection cieca, ad alta gravità e non autenticata nel plugin Contest Gallery di WordPress. Il difetto si trova nel gestore AJAX post_cg1l_resend_unconfirmed_mail_frontend, dove il parametro cgl_mail viene passato a una query SQL senza una corretta sanitizzazione.
Questo repository fornisce un PoC Python completo (v2.0) per professionisti della sicurezza autorizzati per convalidare l'impatto, estrarre dati WordPress, generare report e integrarsi con strumenti standard del settore (SQLMap, Burp Suite, Nuclei).
| Attributo | Valore |
|---|---|
| ID CVE | CVE-2026-3180 |
| CVSS | 7.5 (Alto) |
| Vettore d'attacco | Rete — non autenticato |
| Impatto | Violazione della riservatezza, lettura del database, furto di credenziali |
| Prodotto interessato | Plugin Contest Gallery di WordPress |
| Versioni affette | 28.1.4 e precedenti |
| Tipo di vulnerabilità | SQL Injection cieca |
| DBMS | MySQL / MariaDB |
| Campo | Valore |
|---|---|
| URL | /wp-admin/admin-ajax.php |
| Metodo | POST |
| Azione | post_cg1l_resend_unconfirmed_mail_frontend |
| Parametro vulnerabile | cgl_mail |
POST /wp-admin/admin-ajax.php HTTP/1.1 Host: target.example Content-Type: application/x-www-form-urlencoded
action=post_cg1l_resend_unconfirmed_mail_frontend &cgl_mail=qualquer'OR/**/1=1#@teste.com &cgl_page_id=1 &cgl_activation_key= &cg_nonce=%20
### Riferimenti
- [CVE-2026-3180](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2026-3180)
- [Exploit-DB 52609](https://www.exploit-db.com/exploits/52609)
- [Articolo originale (cardosource)](https://dev.to/22l31on/wordpress-contest-gallery-plugin-vulnerability-2ff6)
---
## Funzionalità
### Sfruttamento Principale
| Capacità | Descrizione |
|---|---|
| Rilevamento vulnerabilità | Test boolean, basati sul tempo, su errori, UNION e stacked query |
| Estrazione blind | Estrazione di caratteri tramite ricerca binaria per inferenza booleana |
| Dump completo dei dati | Utenti, metadati del database, opzioni, plugin, temi, post, tabelle |
| Shell SQL interattiva | Esegui query `SELECT` arbitrarie sul backend |
| Estrazione di wp-config.php | Tentativi di `LOAD_FILE()` su percorsi comuni |
| Reverse shell | Scrittura webshell PHP tramite `INTO OUTFILE` / `DUMPFILE` (quando consentito) |
### Evasione e Prestazioni
| Capacità | Descrizione |
|---|---|
| Bypass WAF | 15+ tecniche di codifica e offuscamento |
| Multi-threading | Thread worker configurabili per un'estrazione più rapida |
| Limitazione della velocità | Ritardo configurabile tra le richieste |
| Logica di ripetizione | Ripetizioni automatiche su fallimenti transienti |
| Rotazione dello User-Agent | Impronte digitali del browser casuali per richiesta |
| Supporto proxy | Proxy HTTP/SOCKS e Tor (`socks5h://127.0.0.1:9050`) |
### Report e Integrazioni
| Capacità | Descrizione |
|---|---|
| Generazione di report | Report JSON e HTML con riepiloghi dell'estrazione |
| Integrazione SQLMap | Comando SQLMap generato automaticamente con tampers |
| Estensione Burp Suite | Generatore + file autonomo `burp_contest_gallery.py` |
| Template Nuclei | Template YAML per rilevamento di massa |
| Modulo Metasploit | Modulo ausiliario Ruby (`contest_gallery_sqli.rb`) |
| Automazione shell | Script Bash per flussi di lavoro basati su curl e SQLMap |
### Operativi
| Capacità | Descrizione |
|---|---|
| Output CLI colorato | Logging strutturato con livelli di gravità |
| Tracciamento progressi | Metriche in tempo reale (richieste, tempistiche, velocità di estrazione) |
| Modalità silenziosa/verbose | Adatto per scripting e debug |
| Gestione dei segnali | Pulizia graziosa su `Ctrl+C` |
| Pronto per Docker | Supporto per distribuzione containerizzata |
| Pronto per pipeline CI/CD | Codici di uscita e output JSON per automazione |
---
## Installazione
### Prerequisiti
- Python **3.8+**
- `pip`
- Raggiungibilità di rete ai target sotto test
### Strumenti Esterni Opzionali
| Strumento | Scopo |
|---|---|
| [SQLMap](https://github.com/sqlmapproject/sqlmap) | Iniezione SQL automatizzata |
| [Burp Suite](https://portswigger.net/burp) | Test manuale e hosting di estensioni |
| [Nuclei](https://github.com/projectdiscovery/nuclei) | Scansione basata su template |
| [Hashcat](https://hashcat.net/hashcat/) | Cracking offline di hash |
| [Tor](https://www.torproject.org/) | Routing anonimo (`--proxy tor`) |
### Configurazione```bash
git clone https://github.com/CerberusMrXi/WP-Contest-Gallery-28.1.4-Exploit.git
cd WP-Contest-Gallery-28.1.4-Exploit
python3 -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
python3 cve-2026-3180.py --help
Richiesto (runtime):```text requests>=2.31.0
**Consigliato (da requirements.txt):**```text
colorama>=0.4.6
tqdm>=4.65.0
pyyaml>=6.0
python-dateutil>=2.8.2
urllib3>=2.0.0
Lo script di sfruttamento principale utilizza solo la libreria standard di Python più
requests. I pacchetti aggiuntivi migliorano l'output e la generazione di report.
Sostituisci
http://target.examplecon un target di laboratorio o autorizzato solo.