
Exploit proof-of-concept per CVE-2025-29384, un overflow del buffer basato su stack critico nei router Tenda AC9. Include moduli Python e Metasploit per DoS remoto non autenticato e potenziale RCE su firmware basato su MIPS.
Questo repository contiene un exploit proof-of-concept (PoC) avanzato per CVE-2025-29384, una critica vulnerabilità di buffer overflow basato sullo stack scoperta nel router Tenda AC9 con versione del firmware V15.03.05.14_multi. Questa vulnerabilità consente a attaccanti remoti non autenticati di far crashare il server web del router (Denial-of-Service, DoS) e potenzialmente eseguire codice arbitrario (Remote Code Execution, RCE).
Questo repository contiene un exploit proof-of-concept (PoC) avanzato per CVE-2025-29384, una critica vulnerabilità di buffer overflow basato sullo stack scoperta nel router Tenda AC9 con versione del firmware V15.03.05.14_multi. Questa vulnerabilità consente a attaccanti remoti non autenticati di far crashare il server web del router (Denial-of-Service, DoS) e potenzialmente eseguire codice arbitrario (Remote Code Execution, RCE).
Lo scopo di questo progetto è dimostrare competenze nello sviluppo di exploit, contribuire alla comunità della cybersecurity e fornire una vetrina educativa per valutazioni accademiche (ad esempio, borse di studio in cybersecurity). Lo scopo di questo progetto è dimostrare competenze nello sviluppo di exploit, contribuire alla comunità della cybersecurity e fornire una vetrina educativa per valutazioni accademiche, come borse di studio in cybersecurity.
CVE-2025-29384 colpisce l'interfaccia di gestione web del router Tenda AC9, in particolare l'endpoint:
/goform/AdvSetMacMtuWan
La vulnerabilità esiste a causa di controlli dei limiti inadeguati sul parametro wanMTU, che viene elaborato tramite una richiesta HTTP POST. L'input viene copiato in un buffer dello stack di dimensione fissa senza validazione, portando a un classico buffer overflow basato sullo stack.
La funzione vulnerabile (ricostruzione ipotetica) segue questa struttura:
void process_mtu(char *input) {
char buffer[256]; // Fixed-size stack buffer
strcpy(buffer, input); // No length check, causes overflow
// Process MTU value...
}
Un attaccante che invia un payload sovradimensionato (es., 1024+ byte) sovrascrive la memoria adiacente, incluso l'indirizzo di ritorno della funzione, portando potenzialmente a esecuzione di codice.
Il Tenda AC9 è un router wireless dual-band con le seguenti specifiche:
Questo repository include anche un modulo Metasploit basato su Ruby per CVE-2025-29384. Il modulo si integra perfettamente con il Metasploit Framework, permettendoti di sfruttare la vulnerabilità usando msfconsole.
git clone https://github.com/Otsmane-Ahmed/cve-2025-29384-poc
cd cve-2025-29384-poc
Individua il file del modulo Ruby e copialo nella directory degli exploit di Metasploit:
cp tenda_ac9_stack_overflow.rb ~/.msf4/modules/exploits/linux/http/
Nota: Se la directory non esiste, creala:
mkdir -p ~/.msf4/modules/exploits/linux/http/
Avvia il Metasploit Framework:
msfconsole
Carica il modulo:
use exploit/linux/http/tenda_ac9_stack_overflow
Imposta l'indirizzo IP del target:
set RHOSTS <target_ip>
Imposta la dimensione del payload (opzionale, default 1024):
set PAYLOAD_SIZE 2048
Esegui l'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...
Successo: Il server web del router crasha, causando una condizione di Denial-of-Service (DoS).
Fallimento: Il router rimane operativo, indicando che potrebbe non essere vulnerabile o che sta eseguendo una versione del firmware con patch.
Questo PoC è un exploit basato su Python che invia un input sovradimensionato a /goform/AdvSetMacMtuWan, attivando un buffer overflow per far crashare il server web e mostrando il potenziale per RCE.
Multithreading – Lancia tentativi di exploit multipli concorrenti per affidabilità.
Payload Dinamici – Genera stringhe di attacco casuali codificate in base64.
Logging – Utilizza il modulo logging di Python per debug strutturato.
Parametri Personalizzabili – Regola IP target, dimensione del payload e numero di thread.
Questo PoC è un exploit basato su Python che invia un input sovradimensionato a /goform/AdvSetMacMtuWan, attivando un buffer overflow per far crashare il server web.
python poc.py --target <router_ip> --size 2048 --threads 10
| Argomento | Descrizione |
|---|---|
--target | IP del router (default: ) |
[+] 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.
Successo: L'interfaccia web del router diventa non responsiva (condizione DoS).
Fallimento: Il router risponde ancora (non vulnerabile o firmware errato).
Per confermare che l'exploit fa crashare con successo il router, prova a ricaricare l'interfaccia web. Se diventa non responsiva, l'attacco è riuscito. Per ulteriori analisi, controlla i log di rete per connessioni interrotte o usa ping per verificare la reattività del dispositivo.
Questo progetto è solo per scopi educativi e di hacking etico. L'uso non autorizzato di questo exploit è illegale. L'autore non è responsabile per un uso improprio o danni causati da questo codice.
Sviluppato con ❤️ da Otsmane Ahmed Questo progetto è solo per scopi educativi e di hacking etico. L'uso non autorizzato di questo exploit è illegale. L'autore non è responsabile per un uso improprio o danni causati da questo codice.
Questo progetto è rilasciato sotto la Licenza MIT.
| Metrica | Valore |
|---|
| Attack Vector | Network |
| Attack Complexity | Low |
| Privileges Required | None |
| User Interaction | None |
| Confidentiality Impact | High |
| Integrity Impact | High |
| Availability Impact | High |
192.168.0.1--size | Dimensione del payload in byte (default: 1024) |
--threads | Numero di thread concorrenti (default: 5) |