⚡️ Cloudflare Image Resizing <= 1.5.6 - Execução Remota de Código sem Autenticação (CVE-2025-8723) Exploit
🚨 Visão Geral da Vulnerabilidade
O plugin Cloudflare Image Resizing para WordPress (versões <= 1.5.6) sofre de uma vulnerabilidade de Ausência de Autenticação que permite Execução Remota de Código (RCE) não autenticada através do hook rest_pre_dispatch.
- CVE: CVE-2025-8723
- Pontuação CVSS: 9.8 (Crítico)
- Publicado: 18 de Agosto de 2025
- Vetor:
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- Descoberto por: Wordfence Intelligence
Descrição:
O endpoint da API REST do plugin não autentica usuários e sanitiza incorretamente a entrada no método hook_rest_pre_dispatch(). Essa falha permite que atacantes injetem e executem código PHP arbitrário ao criar requisições maliciosas — sem necessidade de login.
🛠 Funcionalidades Deste Exploit
- Script Python profissional, modular e extensível
- Detecção automática da vulnerabilidade do plugin analisando o arquivo
readme.txt
- Múltiplas técnicas de bypass para WAF e ambientes restritivos:
- Conjuntos de cabeçalhos mínimos e avançados (User-Agent, Referer, Origin, X-Forwarded-For randomizados, etc.)
- Tentativas repetidas com rotação de cabeçalhos
- Suporte a proxy (personalizado ou estilo BurpSuite)
- Execução de comando personalizado:
- Padrão:
whoami, mas o usuário pode especificar qualquer comando
- Saída clara e profissional com códigos de status informativos
- Lida com todos os casos de erro de forma elegante (plugin ausente, proibido/não autorizado, erros de servidor, etc.)
📦 O que há dentro do Script?
1️⃣ Detecção Automática de Vulnerabilidade
- Obtém
wp-content/plugins/cf-image-resizing/readme.txt
- Extrai e verifica a versão do plugin
- Se a versão for ≤ 1.5.6, prossegue para a exploração
2️⃣ Múltiplas Estratégias de Exploit
- Cabeçalhos mínimos: Envia apenas o necessário para maximizar a compatibilidade
- Cabeçalhos avançados: Randomiza User-Agent, Referer, Origin, Accept-Language e mais para cada tentativa
- Rotação de cabeçalhos: Tenta várias combinações para evadir WAF e limite de taxa
3️⃣ Execução Personalizável
- Execute qualquer comando do sistema no alvo via argumento CLI
Exemplo: -c "id"
4️⃣ Suporte a Proxy
- Use
--proxy para enviar requisições através de um proxy (ex.: BurpSuite)
5️⃣ Saída Abrangente
- Mostra a versão detectada, status da vulnerabilidade, métodos tentados e a saída real do comando
🚀 Uso
python3 CVE-2025-8723.py -u http://target.com/
Especifique um comando personalizado:
python3 CVE-2025-8723.py -u http://target.com/ -c "id"
Use um proxy (ex.: BurpSuite):
python3 CVE-2025-8723.py -u http://target.com/ --proxy http://127.0.0.1:8080
Aumente as tentativas de cabeçalho avançado (padrão é 5):
python3 CVE-2025-8723.py -u http://target.com/ --attempts 10
🧩 Exemplo de Saída
[+] CVE-2025-8723 Exploit | by Khaled Alenazi (Nxploited)
[+] Detected version: 1.5.6
[+] Target is vulnerable (<=1.5.6). Proceeding with exploit.
[*] Trying minimal headers (only Content-Type)...
[=] Minimal Headers | Status: 200
www-data
[+] Exploit worked with this method!
🛡️ Técnicas de Bypass e Evasão
- Randomização de Cabeçalhos: Tenta várias combinações de User-Agent, Referer, Origin e Accept-Language
- Suporte a Proxy: Use um proxy para rotacionar IPs e contornar restrições baseadas em IP
- Múltiplas Tentativas: Repete com novos cabeçalhos se as requisições forem bloqueadas ou proibidas
- Tratamento de Erros: Interpreta de forma inteligente todas as respostas comuns (404, 401, 403, 5xx, timeouts)
📖 Estrutura do Script Explicada
- normalize_url: Garante a correção do formato da URL
- get_headers: Gera cabeçalhos avançados randomizados para cada tentativa
- get_readme/extract_version/is_vulnerable: Lógica automatizada de detecção de vulnerabilidade
- try_exploit: Tenta a exploração com um conjunto de cabeçalhos fornecido
- exploit_all: Orquestra todas as tentativas de exploit, alternando automaticamente as estratégias de cabeçalho
- scan: Verifica a presença do plugin e a vulnerabilidade
- Nxploited (main): Análise de argumentos, relatórios e fluxo de trabalho do exploit
⚠️ Aviso Legal
Esta ferramenta é apenas para testes de segurança autorizados e fins educacionais.
O desenvolvedor não é responsável por qualquer uso indevido ou dano causado por este código.
Por: Khaled Alenazi (Nxploited)