Diverse notizie sulla sicurezza delle informazioni hanno riportato la scoperta della vulnerabilità critica CVE-2021-44228 nella libreria Apache Log4j (con livello di gravità CVSS 10 su 10). Milioni di applicazioni Java utilizzano questa libreria per registrare i messaggi di errore. A peggiorare le cose, i cybercriminali stanno già sfruttando attivamente questa vulnerabilità. Per questo motivo, la Fondazione Apache raccomanda a tutti gli sviluppatori di aggiornare la libreria alla versione 2.15.0, e se questo non è possibile, di utilizzare uno dei metodi descritti nella pagina Apache Log4j Security Vulnerabilities.
Perchè CVE-2021-44228 è così pericolosa
CVE-2021-44228, chiamata anche Log4Shell o LogJam, è una vulnerabilità di classe Remote Code Execution (RCE). Se gli hacker riescono a sfruttarla su uno dei server, ottengono la possibilità di eseguire codice arbitrario e potenzialmente prendere il pieno controllo del sistema.
Ciò che rende CVE-2021-44228 particolarmente pericolosa è la facilità di sfruttamento: anche un criminale informatico inesperto può eseguire con successo un attacco utilizzando questa vulnerabilità. Secondo i ricercatori, gli hacker hanno solo bisogno di forzare l’applicazione a scrivere solo una stringa nel log, e dopo sono in grado di caricare il proprio codice nell’applicazione grazie alla funzione message lookup substitution.
Proof of Concept (PoC) funzionanti per gli attacchi tramite CVE-2021-44228 sono già disponibili su Internet. Pertanto, non è sorprendente che le aziende di cybersecurity stiano già registrando massicce scansioni di rete per le applicazioni vulnerabili, nonché attacchi su honeypot.
Questa vulnerabilità è stata scoperta da Chen Zhaojun di Alibaba Cloud Security Team.
Cos’è Apache Log4J e perché questa libreria è così popolare?
Apache Log4j fa parte del progetto Apache Logging. In generale, l’uso di questa libreria è uno dei modi più semplici per registrare gli errori, ed è per questo che la maggior parte degli sviluppatori Java la usa.
Molte grandi società di software e servizi online usano la libreria Log4j, tra cui Amazon, Apple iCloud, Cisco, Cloudflare, ElasticSearch, Red Hat, Steam, Tesla, Twitter e molti altri. Dato che la libreria è così popolare, alcuni ricercatori di sicurezza informatica si aspettano un aumento significativo degli attacchi ai server vulnerabili nei prossimi giorni.
#Log4Shell pic.twitter.com/1bKDwRQBqt
— Florian Roth (@cyb3rops) December 10, 2021
Quali versioni della libreria Log4j sono vulnerabili e come proteggere il vostro server dagli attacchi?
Quasi tutte le versioni di Log4j sono vulnerabili, a partire dalla 2.0-beta9 fino alla 2.14.1. Il metodo di protezione più semplice ed efficace è quello di installare la versione più recente della libreria, la 2.15.0. Potete scaricarla sulla pagina del progetto.
Se per qualche motivo l’aggiornamento della libreria non è possibile, Apache Foundation raccomanda di utilizzare uno dei metodi di mitigazione. Nel caso delle versioni di Log4J dalla 2.10 alla 2.14.1, consigliano di impostare la proprietà di sistema log4j2.formatMsgNoLookups, o di impostare la variabile d’ambiente LOG4J_FORMAT_MSG_NO_LOOKUPS su vero.
Per proteggere le versioni precedenti di Log4j (dalla 2.0-beta9 alla 2.10.0), gli sviluppatori della libreria raccomandano di rimuovere la classe JndiLookup dal classpath: zip -q -d log4j-core – *. Jar org / apache / logging / log4j / core / lookup / JndiLookup .class.
Inoltre, si consiglia di installare soluzioni di sicurezza sui vostri server, in molti casi questo vi permetterà di rilevare il lancio di codice dannoso e fermare lo sviluppo dell’attacco.