
Este repositório descreve sobre cve-2021-29447 e um pequeno script para explorar automaticamente.
Este repositório detalha a vulnerabilidade CVE-2021-29447, uma falha crítica de segurança no WordPress que permitia ataques autenticados de Entidade Externa XML (XXE) através da Biblioteca de Mídia. Ele também fornece um script automático que demonstra a prova de conceito (PoC).
A vulnerabilidade existia no processamento de metadados em arquivos de áudio enviados pelo WordPress. Especificamente:
Causa Raiz: O WordPress usa a biblioteca getID3 para analisar metadados de arquivos de mídia como arquivos WAV. Um arquivo WAV pode conter um bloco de dados XML chamado iXML. Atacantes poderiam criar um arquivo WAV malicioso com conteúdo XML que, ao ser analisado pela biblioteca vulnerável, desencadeia um ataque XXE.
Versões Afetadas: WordPress versões 5.6 a 5.7.
Requisito Chave: A instalação do WordPress deve estar rodando no PHP 8, pois as mudanças na configuração padrão do Libxml2 do PHP 8 foram centrais para o exploit.
Impacto: A exploração bem-sucedida poderia levar à divulgação arbitrária de arquivos (por exemplo, ler wp-config.php para obter credenciais do banco de dados) e Server-Side Request Forgery (SSRF)
Abaixo está o trecho de código que tenta analisar dados XML no sub-bloco iXML:
Automatiza todo o processo: Cria o arquivo WAV malicioso e o DTD, gerencia o upload do arquivo para o site WordPress alvo e configura um ouvinte para receber os dados exfiltrados.
Configurável: Permite especificar o caminho do arquivo alvo para exfiltração.
./payload.sh