I manutentori di OpenSSH hanno rilasciato aggiornamenti di sicurezza per contenere una falla di sicurezza critica che potrebbe comportare l’esecuzione di codice remoto non autenticato con privilegi di root nei sistemi Linux basati su glibc.
Alla vulnerabilità è stato assegnato l’identificatore CVE CVE-2024-6387. Risiede nel componente server OpenSSH , noto anche come sshd, progettato per ascoltare le connessioni da qualsiasi applicazione client.
“La vulnerabilità, che è una race condition del gestore del segnale nel server OpenSSH (sshd), consente l’esecuzione di codice remoto (RCE) non autenticato come root su sistemi Linux basati su glibc”, ha affermato Bharat Jogi, direttore senior dell’unità di ricerca sulle minacce di Qualys. in un comunicato pubblicato oggi. “Questa race condition influisce su sshd nella sua configurazione predefinita.”
Una race condition, è una situazione in cui il comportamento di un software dipende dalla sequenza o dal tempismo delle operazioni non sincronizzate. Questo problema si verifica spesso nei sistemi concorrenti o multi-thread, dove due o più processi o thread tentano di accedere o modificare una risorsa condivisa contemporaneamente. Se non gestite correttamente, le race condition possono causare comportamenti imprevedibili, errori di programmazione, e vulnerabilità di sicurezza. In ambito sicurezza, una race condition può essere sfruttata da un attaccante per eseguire azioni non autorizzate, accedere a dati sensibili o compromettere l’integrità del sistema, rendendo fondamentale l’implementazione di adeguate tecniche di sincronizzazione e controllo degli accessi.
La società di sicurezza informatica ha affermato di aver identificato non meno di 14 milioni di istanze di server OpenSSH potenzialmente vulnerabili esposte su Internet, aggiungendo che si tratta di una regressione di un difetto di 18 anni già corretto e identificato come CVE-2006-5051 , con il problema ripristinato nell’ottobre 2020. come parte di OpenSSH versione 8.5p1.
“È stato dimostrato uno sfruttamento di successo su sistemi Linux/glibc a 32 bit con [ randomizzazione del layout dello spazio di indirizzamento ]”, ha affermato OpenSSH in un avviso. “In condizioni di laboratorio, l’attacco richiede in media 6-8 ore di connessioni continue fino al massimo che il server accetterà”.
La vulnerabilità ha un impatto sulle versioni tra 8.5p1 e 9.7p1. Anche le versioni precedenti alla 4.4p1 sono vulnerabili al bug della race condition, a meno che non vengano patchate per CVE-2006-5051 e CVE-2008-4109 . Vale la pena notare che i sistemi OpenBSD non sono interessati, in quanto includono un meccanismo di sicurezza che blocca il difetto.
Nello specifico, Qualys ha scoperto che se un client non esegue l’autenticazione entro 120 secondi (un’impostazione definita da LoginGraceTime), il gestore SIGALRM di sshd viene chiamato in modo asincrono, in un modo che non è async-signal-safe .
L’effetto netto dello sfruttamento di CVE-2024-6387 è la compromissione e il controllo completo del sistema, consentendo agli autori della minaccia di eseguire codice arbitrario con i privilegi più elevati, sovvertire i meccanismi di sicurezza, rubare dati e persino mantenere un accesso persistente.
“Un difetto, una volta corretto, è ricomparso in una successiva versione software, in genere a causa di modifiche o aggiornamenti che inavvertitamente reintroducono il problema”, ha affermato Jogi. “Questo incidente evidenzia il ruolo cruciale di test di regressione approfonditi per impedire la reintroduzione di vulnerabilità note nell’ambiente”.
Sebbene la vulnerabilità presenti ostacoli significativi a causa della sua natura di condizione di gara remota, si consiglia agli utenti di applicare le patch più recenti per proteggersi da potenziali minacce. Si consiglia inoltre di limitare l’accesso SSH tramite controlli basati sulla rete come il firewalling e di imporre la segmentazione della rete per limitare l’accesso non autorizzato e il movimento laterale.