
Kit de exploração completo para CVE-2026-3180 - vulnerabilidade de injeção SQL no WordPress Contest Gallery. Inclui extração automatizada de dados, bypass de WAF, reverse shell, integração com SQLMap, geração de extensão Burp e relatórios para testes de penetração e pesquisa de segurança.
Ferramenta de avaliação de prova de conceito para CVE-2026-3180
Autor: Sudeepa Wanigarathna · Descoberta original: cardosource
[!IMPORTANT] Uso autorizado apenas. Esta ferramenta destina-se a pesquisa em segurança, educação e teste de sistemas que você possui ou para os quais possui permissão explícita por escrito. O acesso não autorizado a sistemas de computador é ilegal. O autor não se responsabiliza pelo uso indevido.
CVE-2026-3180 é uma injeção SQL cega não autenticada de alta severidade no plugin Contest Gallery do WordPress. A falha existe no manipulador AJAX post_cg1l_resend_unconfirmed_mail_frontend, onde o parâmetro cgl_mail é passado para uma consulta SQL sem a devida sanitização.
Este repositório fornece um PoC Python completo (v2.0) para profissionais de segurança autorizados validarem o impacto, extraírem dados do WordPress, gerarem relatórios e integrarem com ferramentas padrão da indústria (SQLMap, Burp Suite, Nuclei).
| Atributo | Valor |
|---|---|
| ID CVE | CVE-2026-3180 |
| CVSS | 7.5 (Alta) |
| Vetor de Ataque | Rede — não autenticado |
| Impacto | Violação de confidencialidade, leitura de banco de dados, roubo de credenciais |
| Produto Afetado | Plugin WordPress Contest Gallery |
| Versões Afetadas | 28.1.4 e anteriores |
| Tipo de Vulnerabilidade | Injeção SQL Cega |
| DBMS | MySQL / MariaDB |
| Campo | Valor |
|---|---|
| URL | /wp-admin/admin-ajax.php |
| Método | POST |
| Ação | post_cg1l_resend_unconfirmed_mail_frontend |
| Parâmetro Vulnerável | 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
### Referências
- [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)
- [Artigo original (cardosource)](https://dev.to/22l31on/wordpress-contest-gallery-plugin-vulnerability-2ff6)
---
## Funcionalidades
### Exploração Principal
| Capacidade | Descrição |
|---|---|
| Detecção de vulnerabilidades | Testes de consultas booleanas, baseadas em tempo, baseadas em erro, union e empilhadas |
| Extração cega | Extração de caracteres por busca binária via inferência booleana |
| Despejo completo de dados | Usuários, metadados do banco, opções, plugins, temas, posts, tabelas |
| Shell SQL interativa | Executar consultas `SELECT` arbitrárias no backend |
| Extração de wp-config.php | Tentativas de `LOAD_FILE()` em caminhos comuns |
| Shell reversa | Gravação de webshell PHP via `INTO OUTFILE` / `DUMPFILE` (quando permitido) |
### Evasão e Desempenho
| Capacidade | Descrição |
|---|---|
| Bypass de WAF | Mais de 15 técnicas de codificação e ofuscação |
| Multithreading | Threads de trabalho configuráveis para extração mais rápida |
| Limitação de taxa | Atraso configurável entre requisições |
| Lógica de repetição | Repetições automáticas em falhas transitórias |
| Rotação de User-Agent | Impressões digitais aleatórias de navegador por requisição |
| Suporte a proxy | Proxies HTTP/SOCKS e Tor (`socks5h://127.0.0.1:9050`) |
### Relatórios e Integrações
| Capacidade | Descrição |
|---|---|
| Geração de relatórios | Relatórios JSON e HTML com resumos de extração |
| Integração com SQLMap | Comando SQLMap gerado automaticamente com tampers |
| Extensão do Burp Suite | Gerador + script independente `burp_contest_gallery.py` |
| Template Nuclei | Template YAML para detecção em massa |
| Módulo Metasploit | Módulo auxiliar Ruby (`contest_gallery_sqli.rb`) |
| Automação de shell | Scripts Bash para fluxos baseados em curl e SQLMap |
### Operacional
| Capacidade | Descrição |
|---|---|
| Saída CLI colorida | Registro estruturado com níveis de severidade |
| Acompanhamento de progresso | Métricas em tempo real (requisições, temporização, velocidade de extração) |
| Modos silencioso / verboso | Adequado para scripts e depuração |
| Tratamento de sinais | Limpeza graciosa ao pressionar `Ctrl+C` |
| Pronto para Docker | Suporte a implantação containerizada |
| Pronto para pipeline CI/CD | Códigos de saída e saída JSON para automação |
---
## Instalação
### Pré-requisitos
- Python **3.8+**
- `pip`
- Conectividade de rede com o(s) alvo(s) em teste
### Ferramentas Externas Opcionais
| Ferramenta | Propósito |
|---|---|
| [SQLMap](https://github.com/sqlmapproject/sqlmap) | Injeção SQL automatizada |
| [Burp Suite](https://portswigger.net/burp) | Testes manuais e hospedagem de extensões |
| [Nuclei](https://github.com/projectdiscovery/nuclei) | Varredura baseada em templates |
| [Hashcat](https://hashcat.net/hashcat/) | Quebra de hashes offline |
| [Tor](https://www.torproject.org/) | Roteamento anônimo (`--proxy tor`) |
### Configuração```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
Requerido (runtime):```text requests>=2.31.0
**Recomendado (de requirements.txt):**```text
colorama>=0.4.6
tqdm>=4.65.0
pyyaml>=6.0
python-dateutil>=2.8.2
urllib3>=2.0.0
O exploit principal utiliza apenas a biblioteca padrão do Python mais
requests. Pacotes adicionais melhoram a saída e o relatório.
Substitua
http://target.examplepor um alvo apenas de laboratório ou autorizado.