La vulnerabilità Log4jShell, siglata come CVE-2021-44228 e individuata nella libreria Log4j, uno strumento open source incluso praticamente in ogni prodotto o servizio Web basato su Java, è stata definita come una vera e propria “pandemia informatica”, dato il numero esponenziale di attacchi che si stanno verificando in ogni dove del mondo. La situazione, già fortemente drammatica, va però ulteriormente ad aggravarsi con la scoperta di una seconda falla.
CVE-2021-45046: nuova falla nella libreria Log4j
La nuova vulnerabilità, catalogata con il codice CVE-2021-45046 e valutata con un punteggio di 3.7 su un massimo di 10 nel sistema CVSS, consente ai malintenzionati che se ne servono di sfruttare JNDI Lookup per eseguire un attacco Denial of Service (DoS). Interessa tutte le versioni di Log4j, dalla 2.0-beta9 fino alla 2.12.1 e dalla 2.13.0 alla 2.15.0.
Riportiamo di seguito, in forma tradotta, quanto dichiarato Ralph Goers dell’Apache Software Foundation in merito alla situazione.
La gestione di CVE-2021-44228 ha mostrato che il JNDI ha problemi di sicurezza significativi. Anche se abbiamo mitigato ciò di cui siamo consapevoli, sarebbe più sicuro per gli utenti disabilitarlo completamente per impostazione predefinita, soprattutto perché è improbabile che la grande maggioranza lo utilizzi.
Fortunatamente, però, esiste già una patch: la nuova vulnerabilità viene infatti risolta con la versione 2.16.0 di Log4j rilasciata da Apache, disponibile per chi utilizza Java 8 o versioni successive. Il fix rimuove quasi del tutto il supporto per le ricerche di messaggi e disabilita per impostazione predefinita JNDI (Java Naming and Directory Interface), un insieme di API che forniscono ad applicazioni scritte in Java funzionalità di accesso a servizi di naming e servizi di directory.
La soluzione più immediata, nel caso non sia possibile installare aggiornamenti o patch per eventuali problemi di continuità di servizio o retrocompatibilità, è quella di disabilitare la funzionalità JNDI.