Log4j è una delle librerie di log più diffuse e viene utilizzata per creare file di log che tengono traccia di eventi e attività all’interno di un sistema o di un’applicazione. Log4j può essere utilizzato per acquisire grandi volumi di dati da applicazioni locali e remote con costi minimi e prestazioni elevate. Tuttavia, nel dicembre 2021, alcuni ricercatori di sicurezza hanno scoperto una vulnerabilità zero-day di Log4j che ha potenzialmente compromesso milioni di dispositivi.
In risposta a questa scoperta, Apache ha rilasciato diversi aggiornamenti software, mentre i team di sicurezza hanno adottato ulteriori misure per proteggere le loro reti. Tuttavia, come previsto, gli attori malevoli hanno continuato a tentare di sfruttare Log4j. Per fornire una migliore visibilità sui tentativi attivi ancora oggi, abbiamo sfruttato la telemetria anonimizzata dei nostri clienti che hanno scelto di condividere le informazioni, ottenendo in particolare informazioni sui tentativi di Log4j che hanno come obiettivo specifico gli ambienti OT/IoT.
In questo blog, riassumiamo le attività di Log4Shell, illustriamo le indicazioni tecniche formulate dai nostri laboratori e forniamo raccomandazioni e best practice per mantenere le reti protette.
Gli attori delle minacce continuano a tentare di sfruttare Log4j.
Log4Shell, un recap
La vulnerabilità di Log4j (CVE-2021-44228), chiamata “Log4Shell” e contrassegnata da un punteggio di 10 su 10 del Common Vulnerability Scoring System (CVSS), è altamente sfruttabile e può consentire agli attori malintenzionati di eseguire codici da remoto su server vulnerabili. Pochi giorni dopo la divulgazione iniziale, è stata rilasciata un’altra vulnerabilità di Log4j, CVE-2021-45105, che ha introdotto la possibilità di lanciare attacchi Denial of Service (DoS).
Log4j utilizza una funzione nota come lookup. Esistono diversi lookup che possono essere utilizzati, ma i due sfruttati da Log4Shell sono:
1. Il lookup di Java Naming and Directory Interface (JNDI) consente agli utenti di accedere a risorse memorizzate in remoto attraverso una connessione di rete. Ciò permette di ricercare facilmente le informazioni necessarie per stabilire una connessione.
2. L’environment lookup che consente agli utenti di accedere alle variabili ambientali presenti sul computer da cui si utilizza Log4Shell. Ciò significa che tutte le variabili ambientali definite dall’utente e accessibili dal computer in uso possono essere consultate attraverso Log4Shell.
In questo caso, la utility Log4j aveva abilitato la sostituzione del messaggio come impostazione predefinita. Ciò ha permesso agli attori delle minacce di incorporare codici malevoli all’interno di una richiesta, attivando l’esecuzione automatica di Log4j senza alcun intervento da parte dell’utente.
Indicazioni di Nozomi Networks Labs
Subito dopo la divulgazione di Log4Shell, i nostri ricercatori di sicurezza hanno sviluppato regole di pacchetti per identificare potenziali attività Log4shell negli ambienti dei nostri clienti. Sfruttando la telemetria anonima dei clienti partecipanti, abbiamo ottenuto preziose informazioni sulla diffusione dei tentativi di exploit di Log4j.
Tra il 16 maggio e il 16 novembre 2022, abbiamo registrato oltre 60.000 tentativi di primo e secondo livello in almeno 14 ambienti dei nostri clienti. Di seguito è riportata un’analisi degli exploit tentati utilizzando i seguenti protocolli:
In base alla nostra telemetria, ci sono stati 40.000 tentativi di sfruttare il lookup JDNI nei server vulnerabili utilizzando TCP. Gli attori delle minacce preferiscono utilizzare TCP rispetto a UDP e HTTP perché consente loro di stabilire una connessione affidabile con il sistema di destinazione, il che rende più facile sfruttare le vulnerabilità di sicurezza note. TCP garantisce inoltre la sicurezza dei dati trasferiti tramite crittografia e autenticazione, consentendo agli attori delle minacce di trasferire i dati senza essere intercettati.
Sebbene vi siano stati tentativi di interrogare LDAPS, RMI e DNS, le minacce hanno tentato di interrogare LDAP circa 40.000 volte. LDAP è un protocollo standardizzato che può essere utilizzato su quasi tutti i sistemi operativi e su una varietà di linguaggi di programmazione, rendendo relativamente facile per gli attori delle minacce costruire applicazioni o script attorno al protocollo.
Raccomandazioni
A un anno dalla divulgazione di Log4j, le minacce di sicurezza continuano a sfruttare le vulnerabilità nella speranza di compromettere un sistema senza patch. Per questo motivo è importante assicurarsi che Log4j sia aggiornato all’ultima versione per proteggere l’organizzazione da CVE-2021-44228, CVE-2021-45105 e altre vulnerabilità.
Ulteriori misure di mitigazione raccomandate dal CISA, come l’inventario delle risorse vulnerabili, la scansione della rete e la caccia alle minacce, sono disponibili qui
A cura di Roya Gordon, OT/IoT Security Research Evangelist, Nozomi Networks