
POC for CVE-2025-29384
Este repositório contém um exploit de prova de conceito (PoC) avançado para o CVE-2025-29384, uma vulnerabilidade crítica de estouro de buffer baseado em pilha descoberta no roteador Tenda AC9 executando a versão de firmware V15.03.05.14_multi. Esta vulnerabilidade permite que atacantes remotos não autenticados travem o servidor web do roteador (Negação de Serviço, DoS) e potencialmente executem código arbitrário (Execução Remota de Código, RCE).
O objetivo deste projeto é demonstrar habilidades de desenvolvimento de exploits, contribuir para a comunidade de segurança cibernética e fornecer uma demonstração educacional para avaliações acadêmicas (por exemplo, bolsas de estudo em segurança cibernética). Este repositório contém um exploit de prova de conceito (PoC) avançado para o CVE-2025-29384, uma vulnerabilidade crítica de estouro de buffer baseado em pilha descoberta no roteador Tenda AC9 executando a versão de firmware V15.03.05.14_multi. Esta vulnerabilidade permite que atacantes remotos não autenticados travem o servidor web do roteador (Negação de Serviço, DoS) e potencialmente executem código arbitrário (Execução Remota de Código, RCE).
O objetivo deste projeto é demonstrar habilidades de desenvolvimento de exploits, contribuir para a comunidade de segurança cibernética e fornecer uma demonstração educacional para avaliações acadêmicas, como bolsas de estudo em segurança cibernética.
O CVE-2025-29384 afeta a interface de gerenciamento web do roteador Tenda AC9, especificamente o endpoint:
/goform/AdvSetMacMtuWan
A vulnerabilidade existe devido a verificação de limites inadequada no parâmetro wanMTU, que é processado através de uma requisição HTTP POST. A entrada é copiada para um buffer de pilha de tamanho fixo sem validação, levando a um clássico estouro de buffer baseado em pilha.
A função vulnerável (reconstrução hipotética) segue esta estrutura:
void process_mtu(char *input) {
char buffer[256]; // Fixed-size stack buffer
strcpy(buffer, input); // No length check, causes overflow
// Process MTU value...
}
Um atacante que envia um payload excessivamente grande (por exemplo, 1024+ bytes) sobrescreve a memória adjacente, incluindo o endereço de retorno da função, potencialmente levando à execução de código.
O Tenda AC9 é um roteador sem fio de banda dupla com as seguintes especificações:
Este repositório também inclui um módulo Metasploit baseado em Ruby para o CVE-2025-29384. O módulo integra-se perfeitamente ao Metasploit Framework, permitindo explorar a vulnerabilidade usando msfconsole.
git clone https://github.com/Otsmane-Ahmed/cve-2025-29384-poc
cd cve-2025-29384-poc
Localize o arquivo do módulo Ruby e copie-o para o diretório de exploits do Metasploit:
cp tenda_ac9_stack_overflow.rb ~/.msf4/modules/exploits/linux/http/
Nota: Se o diretório não existir, crie-o:
mkdir -p ~/.msf4/modules/exploits/linux/http/
Inicie o Metasploit Framework:
msfconsole
Carregue o módulo:
use exploit/linux/http/tenda_ac9_stack_overflow
Defina o endereço IP alvo:
set RHOSTS <target_ip>
Defina o tamanho do payload (opcional, padrão é 1024):
set PAYLOAD_SIZE 2048
Execute o exploit:
run
[*] Targeting Tenda AC9 at 192.168.0.1:80...
[*] Sending payload of size 2048...
[+] Payload sent successfully!
[*] Response: HTTP/1.1 200 OK...
Sucesso: O servidor web do roteador trava, causando uma condição de Negação de Serviço (DoS).
Falha: O roteador permanece operacional, indicando que pode não ser vulnerável ou está executando uma versão de firmware corrigida.
Este PoC é um exploit baseado em Python que envia entrada oversized para /goform/AdvSetMacMtuWan, acionando um estouro de buffer para travar o servidor web e demonstrando o potencial para RCE.
Multithreading – Lança múltiplas tentativas de exploit concorrentes para maior confiabilidade.
Payloads Dinâmicos – Gera strings de ataque aleatórias codificadas em base64.
Registro de Log – Usa o módulo de logging do Python para depuração estruturada.
Parâmetros Personalizáveis – Ajusta o IP alvo, tamanho do payload e número de threads.
Este PoC é um exploit baseado em Python que envia entrada oversized para /goform/AdvSetMacMtuWan, acionando um estouro de buffer para travar o servidor web.
python poc.py --target <router_ip> --size 2048 --threads 10
| Argumento | Descrição |
|---|---|
--target | IP do roteador (padrão: ) |
[+] CVE-2025-29384 Exploit Engine
[INFO] Target: 192.168.0.1
[INFO] Sending payload (2048 bytes)...
[WARNING] Target timeout - possible crash!
[INFO] Exploit sequence completed.
Sucesso: A interface web do roteador fica não responsiva (condição de DoS).
Falha: O roteador ainda responde (não vulnerável ou firmware incorreto).
Para confirmar que o exploit travou o roteador com sucesso, tente recarregar a interface web. Se ela ficar não responsiva, o ataque foi bem-sucedido. Para uma análise mais aprofundada, verifique os logs de rede em busca de conexões perdidas ou use ping para verificar a capacidade de resposta do dispositivo.
Este projeto é apenas para fins educacionais e de hacking ético. O uso não autorizado deste exploit é ilegal. O autor não é responsável pelo uso indevido ou danos causados por este código.
Desenvolvido com ❤️ por Otsmane Ahmed Este projeto é apenas para fins educacionais e de hacking ético. O uso não autorizado deste exploit é ilegal. O autor não é responsável pelo uso indevido ou danos causados por este código.
Este projeto é lançado sob a Licença MIT.
| Métrica | Valor |
|---|
| Vetor de Ataque | Rede |
| Complexidade do Ataque | Baixa |
| Privilégios Necessários | Nenhum |
| Interação do Usuário | Nenhuma |
| Impacto na Confidencialidade | Alto |
| Impacto na Integridade | Alto |
| Impacto na Disponibilidade | Alto |
192.168.0.1--size | Tamanho do payload em bytes (padrão: 1024) |
--threads | Número de threads simultâneas (padrão: 5) |