Home topics Log4j Che cos'è la vulnerabilità Log4j?
Esplora la soluzione Log4j di IBM Abbonati per ricevere aggiornamenti in materia di sicurezza
Illustrazione con collage di pittogrammi di nuvole, telefono cellulare, impronta digitale, segno di spunta
Che cos'è la vulnerabilità Log4j?

La vulnerabilità Log4j, conosciuta anche come Log4Shell, è una vulnerabilità critica scoperta nella libreria di registrazione Apache Log4j nel novembre del 2021. Sostanzialmente, Log4Shell concede agli hacker il controllo totale dei dispositivi eseguendo versioni di Log4j senza patch.

Gli attori malintenzionati possono utilizzare la falla Log4j per eseguire quasi qualsiasi codice sui sistemi vulnerabili.

I ricercatori considerano Log4Shell una vulnerabilità di sicurezza "catastrofica" perché è particolarmente diffusa, Log4J è uno dei programmi open source più diffusi al mondo e così facile da usare. Jen Easterly, direttrice della US Cybersecurity and infrastructure Security Agency (CISA), l'ha definita "una delle vulnerabilità più gravi che ho visto in tutta la mia carriera, se non addirittura la più grave".

Log4Shell ha provocato un'ondata di attacchi informatici nel dicembre del 2021. L' X-Force Threat Intelligence Index di IBM ha registrato un aumento del 34% nelle vulnerabilità tra il 2020 e il 2021, attribuito principalmente a Log4Shell.

Log4Shell è stato patchato poco dopo essere stato scoperto, ma rappresenterà un rischio per anni, perché Log4J è profondamente incorporato nella supply chain del software. Secondo le stime della US Department of Homeland Security, ci vorranno almeno dieci anni per trovare e risolvere ogni caso vulnerabile.

IBM Security X-Force Threat Intelligence Index

Acquisisci le informazioni necessarie per prevenire e reagire ai cyberattacchi con maggiore velocità ed efficacia con IBM Security X-Force Threat Intelligence Index.

Contenuti correlati

Registrati per il report Cost of a Data Breach

Cos'è Log4J?

Log4j è un framework di registrazione sviluppato dalla Apache Software Foundation. Come suggerisce il nome, Log4J è un programma di registrazione che registra informazioni importanti, come messaggi di errore e input degli utenti in un programma.

Log4J è una libreria di software open source, un pacchetto di codice pre-scritto che gli sviluppatori possono utilizzare liberamente. Invece di scrivere i propri programmi di registrazione, gli sviluppatori possono collegare la libreria Log4J nelle loro app. Questa comodità è il motivo per cui Log4J è così diffuso e integrato nei prodotti delle organizzazioni più importanti come Microsoft e Amazon, solo per citarne alcune.

Come gli hacker utilizzano Log4Shell

Log4Shell (identificativo Common Vulnerability and Exposure (CVE) CVE-2021-44228) è una vulnerabilità di esposizione (RCE) presente in alcune versioni di Log4J. L'errore interessa Apache Log4J, versione 2.14.1 e precedenti. Log4J 2.15 e versioni successive, così come tutte le versioni di Apache Log4J 1, non sono interessate.

Log4Shell nasce dal modo in cui le versioni precedenti di Log4J gestisce le ricerche Java Naming and Directory Interface (JNDI). JNDI è un'interfaccia di programmazione delle applicazioni (API) che le applicazioni Java utilizzano per accedere alle risorse in hosting su server esterni. Una ricerca JNDI è un comando che dice all'app di andare su un server e scaricare un oggetto specifico, come dati o script.Le versioni più vecchie di Log4J eseguono automaticamente qualsiasi codice scaricato in questo modo. 

Gli utenti possono inviare ricerche JNDI a versioni vulnerabili di Log4J includendole in messaggi di log. E farlo non è difficile. Ad esempio, nelle versioni più vecchie di Minecraft Java Edition, che utilizza Log4J per registrare i messaggi degli utenti, un utente può digitare la ricerca JNDI nella finestra di conversazione pubblica.

Gli hacker possono utilizzare questa funzionalità JNDI per eseguire da remoto un codice arbitrario dannoso. Innanzitutto, l'hacker imposta un server che utilizza un protocollo comune, come Lightweight Directory Access Protocol (LDAP) per evitare di attirare l'attenzione. Successivamente, l'hacker memorizza un payload malevolo sul server, ad esempio un file di malware. Infine, invia una ricerca JNDI a un programma, dicendogli di andare sul server LDAP dell'aggressore, scaricare il payload ed eseguire il codice.

L'impatto di Log4Shell

I ricercatori della sicurezza del colosso tecnologico Alibaba hanno scoperto Log4Shell il 24 novembre del 2021. La vulnerabilità ha immediatamente ricevuto il più alto punteggio possibile del Common Vulnerability Scoring System (CVSS): 10 su 10. I fattori che hanno contribuito a questa valutazione sono molteplici.

  • Log4Shell prima era una vulnerabilità zero-day, il che significava che, quando è stata scoperta, non esistevano patch. Gli attori delle minacce potrebbero utilizzare Log4Shell mentre Apache sta lavorando a una soluzione.

  • Log4J è anche una delle librerie di registrazione più utilizzate al mondo, integrata negli endpoint dei consumatori, nelle applicazioni web e nei servizi cloud aziendali. Secondo Wiz ed EY, il 93% di tutti gli ambienti cloud era a rischio quando è stato scoperta Log4Shell.

  • Le aziende non sono sempre in grado di capire immediatamente se sono vulnerabili. Log4J è spesso presente nelle reti come dipendenza indiretta, il che significa che gli asset dell'azienda potrebbero non utilizzare Log4J, ma affidarsi ad altre app o servizi che invece lo usano.

  • Infine, Log4Shell è semplice da usare. Gli hacker non hanno bisogno di autorizzazioni o autenticazione speciali. Possono creare scompiglio digitando comandi dannosi in moduli pubblici come chat box e pagine di accesso. Inoltre, poiché Log4J può comunicare con altri servizi sullo stesso sistema, gli hacker possono utilizzare Log4J per passare i payload ad altre parti del sistema.

Il 9 dicembre 2021, il codice proof-of-concept su come utilizzare Log4Shell è stato pubblicato su GitHub e gli hacker hanno iniziato a sferrare attacchi. Aziende e servizi di grandi dimensioni, come Minecraft, Twitter e Cisco, sono stati esposti. Al picco dell'attività Log4Shell, Check Point ha registrato più di 100 attacchi al minuto, con un impatto superiore al 40% di tutte le reti aziendali a livello globale.

I primi attacchi diffondevano botnet e malware di cryptomining. Alcuni hacker utilizzavano l'errore per avviare attacchi senza file, inviando script malevoli ai computer Windows e Linux per fargli divulgare le password e altre informazioni sensibili.

Diverse gang di ransomware hanno approfittato di Log4Shell.In particolare, gli hacker hanno diffuso il ceppo di ransomware Khonsari tramite Minecraft, mentre il ransomware Night Sky prendeva di mira i sistemi che eseguivano VMware Horizon.

Anche gli attori degli stati-nazione si sono uniti a loro. Gli hacker associati a Cina, Iran, Corea del Nord e Turchia hanno subito una vulnerabilità.

Risposta a Log4Shell

Apache ha implementato la prima patch (Log4J versione 2.15.0) il 10 dicembre 2021. Tuttavia, la patch ha lasciato esposta un’altra vulnerabilità, CVE-2021-45046, che consentiva agli hacker di inviare comandi malevoli ai log con determinate impostazioni non predefinite.

Apache ha rilasciato una seconda patch (Log4J versione 2.16.0) il 14 dicembre 2021. Anch'essa presentava un difetto, ovvero CVE-2021-45105, che consentiva agli hacker di avviare attacchi DoS (Denial-of-Service).

La terza patch, Log4J versione 2.17, ha corretto il difetto DoS ma ha lasciato un'ultima vulnerabilità, CVE-2021-44832,che ha permesso agli hacker di prendere il controllo di un componente Log4J denominato "appender" per eseguire codice remoto. Apache ha affrontato questo problema con una quarta e ultima patch, Log4J versione 2.17.1. 

La persistenza di Log4Shell

Sebbene Log4J 2.17.1 abbia chiuso Log4Shell e tutte le relative vulnerabilità da parte di Apache, le minacce informatiche sfruttano ancora il difetto. Fino a maggio 2023, Log4Shell è rimasta una delle vulnerabilità utilizzate più comunemente.

Log4Shell persiste per diversi motivi.

Il primo è che Log4J è nascosto in profondità nella supply chain software di numerose aziende. Oggi numerose app vengono realizzate assemblando librerie software open source preesistenti. Si tratta senz'altro di un processo comodo, ma significa anche che le organizzazioni hanno una visibilità limitata su tutti i componenti che costituiscono le loro applicazioni. Le versioni precedenti di Log4J possono essere facilmente trascurate.

Quando viene applicata una patch a una versione vulnerabile di Log4J, non è detto che valga per sempre. Nel novembre 2022, Tenable ha riferito che il 29% degli asset ancora vulnerabili a Log4Shell erano "ricorrenti". In passato erano state applicate delle patch, ma l'errore era ricomparso. Questo scenario si verifica perché, quando le persone creano o aggiornano app, a volte utilizzano accidentalmente librerie software che contengono ancora versioni di Log4J senza patch.

Infine, gli hacker hanno sviluppato una soluzione furba per coprire le loro tracce. Secondo CISA, alcuni hacker utilizzano Log4Shell per entrare in una rete e poi installano una patch sull'asset. L'azienda pensa che non vi siano problemi di sicurezza, ma gli hacker sono già "dentro".

Attenuazione e correzione

Le ultime versioni di Log4J non contengono più Log4Shell. Gli esperti di sicurezza informatica consigliano ai team di sicurezza di assicurarsi che tutte le istanze di Log4J nei loro sistemi siano aggiornate.

L'aggiornamento di Log4J può essere un processo lento, poiché le aziende spesso hanno bisogno di scavare in profondità nelle proprie risorse per trovarlo. Nel frattempo, i team di sicurezza possono utilizzare strumenti di scansione continua delle vulnerabilità e di rilevamento delle minacce come le piattaforme di gestione della superficie di attacco (ASM) e di rilevamento e risposta degli endpoint (EDR) per monitorare gli asset che si affacciano su Internet. Gli esperti raccomandano ai team di risposta agli incidenti di esaminare accuratamente qualsiasi indizio di attività di Log4Shell.

Dopo che Log4Shell è diventato pubblico, molti firewall, sistemi di rilevamento delle intrusioni (IDS) e sistemi di prevenzione delle intrusioni (IPS) hanno aggiunto regole per individuare lo sfruttamento di Log4Shell. Questi strumenti possono aiutare i team di sicurezza a rilevare e bloccare il traffico proveniente da server controllati dagli autori degli attacchi. 

Sequenza temporale di Log4Shell
  • 18 luglio 2013: Apache rilascia Log4J 2.0-beta9, la prima versione a supportare il plug-in JNDI. Sebbene la vulnerabilità venga scoperta solo anni dopo, da questo momento in poi nasce Log4Shell.

  • 24 novembre 2021: I ricercatori della sicurezza di Alibaba scoprono Log4Shell e lo segnalano ad Apache. Apache inizia a lavorare su una patch ma non rilascia un'informativa di sicurezza pubblica.

  • 9 dicembre 2021: I ricercatori della sicurezza di Alibaba scoprono prove del fatto che Log4Shell sia argomento di discussione all'esterno, e il codice exploit proof-of-concept viene postato su GitHub.

  • 10 dicembre 2021: Apache pubblica la prima patch, e gli sviluppatori di Minecraft scoprono Log4Shell in Minecraft Java Edition. La community di cybersecurity si accorge rapidamente della gravità della situazione, e le organizzazioni si affrettano a chiudere i propri sistemi.

  • 11 dicembre 2021: Cloudflare trova prove che gli attori delle minacce hanno iniziato a sfruttare Log4Shell prima di quanto si pensasse, già il 1° dicembre.

  • 14 dicembre 2021: viene scoperto CVE-2021-45046 e Apache rilascia una patch per risolverlo.

  • 17 dicembre 2021: viene scoperto CVE-2021-45105 e Apache rilascia una patch per risolverlo.

  • 28 dicembre 2021: viene scoperto CVE-2021-44832 e Apache rilascia una patch finale. A partire dalla versione 2.17.1 di Log4J, Log4Shell è stato completamente corretto.

  • Maggio 2023: Check Point rileva che Log4Shell è ancora la seconda vulnerabilità più comunemente sfruttata. 

Soluzioni correlate
Soluzioni per la sicurezza e la protezione dei dati

Implementate on-premises o in un cloud ibrido, le soluzioni IBM per la sicurezza dei dati aiutano a acquisire maggiore visibilità e insight per indagare e porre rimedio alle minacce informatiche, applicare controlli in tempo reale e gestire la conformità normativa.

Esplora le soluzioni per la sicurezza e la protezione dei dati
Team di risposta agli incidenti X-Force

L'individuazione proattiva alle minacce, il monitoraggio continuo e un'analisi approfondita delle minacce sono solo alcune delle priorità che deve affrontare un reparto IT già impegnato. Avere a disposizione un team affidabile di risposta agli incidenti può ridurre i tempi di risposta, minimizzare l'impatto di un attacco informatico e aiutarti a recuperare più rapidamente.

Esplora la risposta agli incidenti di X-Force
Take the next step

Learn how the IBM Security Guardium family of products can help your organization meet the changing threat landscape with advanced analytics, real-time alerts, streamlined compliance, automated data discovery classification and posture management.

Explore Guardium Book a live demo