Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-60137-WordPress-Core-SQL-Injection-PoC — Prova de conceito não destrutiva e harness de verificação para CVE-2026-60137, uma injeção SQL cega no núcleo do WordPress (`WP_Query::author__not_in`), acessível por meio do parâmetro `author_exclude` da API REST. | Kitploit
Ferramentas/GitHubGitHub/abdullahmaqbool22/cve-2026-60137-wordpress-core-sql-injection-poc
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebColeta de InformaçõesSegurança WebTestes de Penetração
GitHubabdullahmaqbool22/cve-2026-60137-wordpress-core-sql-injection-poc

CVE-2026-60137-WordPress-Core-SQL-Injection-PoC

Prova de conceito não destrutiva e harness de verificação para CVE-2026-60137, uma injeção SQL cega no núcleo do WordPress (`WP_Query::author__not_in`), acessível por meio do parâmetro `author_exclude` da API REST.

Ver Repositório
há 1 mêsAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE-2026-60137 — PoC de Injeção de SQL no WordPress Core

Prova de conceito não destrutiva e ambiente de verificação para CVE-2026-60137, uma injeção de SQL cega no núcleo do WordPress (WP_Query::author__not_in), acessível via parâmetro author_exclude da API REST.

Causa Raiz

WP_Query::get_posts() constrói SQL concatenando strings da variável de consulta author__not_in em:

root@kitploit:~
... AND {wpdb->posts}.post_author NOT IN ( <value> )

O valor é sanitizado (absint por elemento) apenas quando chega como array. Se uma string escalar for entregue — o parâmetro author_exclude da REST mapeia internamente para — a proteção de sanitização é ignorada e a string bruta cai dentro da cláusula , resultando em injeção de SQL ().

author__not_in
is_array()
NOT IN (...)
CWE-89

Um payload da forma 1) OR SLEEP(6)# produz:

root@kitploit:~
post_author NOT IN ( 1) OR SLEEP(6)# )

que é interpretado como post_author NOT IN (1) OR SLEEP(6) (o ) final é consumido pelo comentário #) — um oráculo cego baseado em tempo, limpo e com zero escritas no banco de dados.

Afetado / Corrigido

Afetado6.8.0 – 6.8.5, 6.9.0 – 6.9.4, 7.0.0 – 7.0.1
Corrigido6.8.6, 6.9.5, 7.0.2 (2026-07-17)
CVSS 3.1AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N → 5.9 (sink isolado)
Encadeadocom CVE-2026-63030 (confusão de rota batch na REST) → 9.8 RCE pré-auth em 6.9.0 – 7.0.1

Notas de acessibilidade

  • 6.9.0+ — sink acessível pré-auth via confusão de rota /wp-json/batch/v1.
  • 6.8.x — o schema da REST rejeita um author_exclude escalar (HTTP 400) na rota padrão de posts, então o sink normalmente só é acessível quando um plugin/tema repassa entrada não confiável, ou através de uma sessão autenticada (--cookie) via rota batch.

O que o script faz

cve_2026_60137_poc.py é somente leitura contra o banco de dados:

  1. Coleta impressão digital do alvo (meta tag do gerador, feed, readme.html, índice /wp-json/) para verificar se a versão está em uma faixa afetada.
  2. Detecta a injeção com um oráculo baseado em tempo: linha de base vs. um controle de parse SLEEP(0) vs. um payload SLEEP(n), através de vários vetores de entrega (rotas REST diretas, ?rest_route= e o endpoint batch), e reporta um veredito por vetor.
  3. Opcionalmente extrai uma linha de wp_users (user_login, user_pass, user_email) via temporização de busca binária cega, usando estritamente SELECT/SLEEP — nunca escreve no banco de dados.

Uso

root@kitploit:~
# Apenas impressão digital, nenhum payload enviado
python3 cve_2026_60137_poc.py --url https://target --safe

# Executar a matriz de detecção
python3 cve_2026_60137_poc.py --url https://target --sleep 6 --samples 3

# Sessão autenticada + extrair a linha 1 de wp_users
python3 cve_2026_60137_poc.py --url https://target \
    --cookie 'wordpress_logged_in_XXX=YYY' --extract --user-id 1

# Roteamento via Burp, ignorar verificação TLS, salvar evidência legível por máquina
python3 cve_2026_60137_poc.py --url https://target \
    --proxy http://127.0.0.1:8080 --no-verify-tls --json-out evidence.json

Opções

FlagPadrãoDescrição
--urlobrigatórioURL base do alvo
--safedesligadoApenas impressão digital; não envia payloads
--sleep6Segundos de SLEEP() usados pelo oráculo de detecção
--samples3Amostras de temporização por medição (a mediana é usada)
--threshold0.7Fração de --sleep tratada como delta positivo
--extractdesligadoExtrai uma linha de wp_users via oráculo cego
--user-id1wp_users.ID a extrair
--extract-sleep2.0Segundos de SLEEP() por sonda de extração
--limit64Máximo de caracteres por campo extraído
--only-vector—Testa apenas vetores cujo nome contém esta string
--cookie—Cookie autenticado para vetores que exigem auth
--proxy—Proxy HTTP(S), ex.: http://127.0.0.1:8080 (Burp)
--timeout30Tempo limite de requisição em segundos
--no-verify-tlsdesligadoDesativa a verificação de certificado TLS
--json-out—Grava evidência legível por máquina em um arquivo JSON

Uso Legal / Responsável

Esta ferramenta é fornecida apenas para testes de segurança autorizados — testes de penetração, CTFs e pesquisas contra sistemas que você possui ou para os quais tem permissão escrita explícita para avaliar. Executá-la contra sistemas sem autorização é ilegal. O autor não aceita nenhuma responsabilidade por uso indevido.

Qualquer saída gravada com --json-out pode conter a URL testada, a impressão digital da versão e evidências de temporização — trate-a como dado sensível de engajamento.

Baixar ferramenta