Tecnologia
Prodotti
Risorse
Azienda
Italiano
Tecnologia
Prodotti
Blog
Risorse
Azienda

Rilevamento e risposta a Log4Shell

Max Heinemeyer, Director of Threat Hunting | Justin Fier, Director of Cyber Intelligence & Analytics | mercoledì 15 dicembre 2021

In questo blog, analizzeremo la vulnerabilità Log4Shell e forniremo esempi relativi al mondo reale su come Darktrace rileva e risponde a tentativi di attacco che tentano di sfruttare le vulnerabilità Log4Shell.

Log4Shell è il nome ormai noto relativo a CVE-2021-44228, una vulnerabilità zero-day di livello 10 che sfrutta un’utilità di accesso Java ben nota chiamata Log4j. Le vulnerabilità vengono scoperte ogni giorno e alcune sono più gravi di altre, ma il fatto che questa utility open source sia contenuta praticamente in qualsiasi cosa, incluso il drone Mars Ingenuity, la rende molto più che una semplice minaccia. Alla data della pubblicazione di questo blog stanno ancora emergendo dettagli e ulteriori aggiornamenti relativi a Log4Shell.

Tipicamente, gli zero-day con la capacità di colpire così tanti sistemi sono utilizzati raramente e solo da nation state per obiettivi o operazioni di alto livello. Tuttavia, questo è stato scoperto per la prima volta mentre veniva utilizzato contro i server di gioco di Minecraft, condivisi nelle chat dei gamer.

Anche se sono state adottate tutte le fasi per mitigare la vulnerabilità Log4Shell, questo processo può richiedere del tempo. Come evidenziato qui, il rilevamento comportamentale può essere utilizzato per cercare segnali di attività post-sfruttamento come scansioni, estrazione di coin, movimenti laterali e altre attività.

Darktrace ha inizialmente rilevato la vulnerabilità Log4Shell che prendeva di mira i server collegati a Internet di un proprio cliente, come è possibile vedere in dettaglio nel threat investigation reso anonimo e riportato di seguito. Ciò è stato evidenziato e segnalato utilizzando Cyber AI Analyst, installato in questo ambiente dal nostro team SOC. Ricordiamo che sono stati utilizzati algoritmi preesistenti senza riqualificazione delle classificazioni o modifiche dei meccanismi di risposta in reazione all’attacco informatico Log4Shell.

Come funziona Log4Shell

La vulnerabilità agisce sfruttando una convalida input impropria da parte dell’interfaccia Java Naming and Directory Interface (JNDI). Un agente utente HTTP, una connessione HTTPS o anche una messaggio chat room invia un comando e la JNDI lo invia al sistema target nel quale deve essere eseguito. Molte librerie e applicazioni utilizzano verifiche e protezioni per evitare che ciò succeda, ma, come visto in questo caso, a volte qualcosa non funziona.

Vari pirati informatici hanno iniziato a sfruttare la vulnerabilità nei propri attacchi, da campagne di crypto-mining indiscriminate ad attacchi mirati e più sofisticati.

Esempio 1 relativo al mondo reale: Log4Shell sfruttato alla data di pubblicazione di CVE ID

Darktrace ha rilevato questo primo esempio il 10 dicembre, lo stesso giorno in cui è stato pubblicato CVE ID. Spesso assistiamo a vulnerabilità pubblicamente documentate che vengono sfruttate in pochi giorni da parte dei pirati informatici. Questo attacco ha colpito un dispositivo collegato a Internet in un’area di rete di un’organizzazione accessibile pubblicamente, nota come DMZ (demilitarized zone). Darktrace ha automaticamente classificato il server come dispositivo collegato a Internet sulla base del suo comportamento.

L’organizzazione aveva installato Darktrace nella rete on-premise come una delle principali protezioni che includevano Cloud, e-mail e SaaS. In questa installazione, Darktrace aveva una buona visibilità sul traffico DMZ. Antigena non era attivo in questo ambiente e Darktrace era configurato solo in modalità rilevamento. Nonostante ciò, il client in questione è stato in grado di identificare e bloccare l’incidente entro poche ore dall’allarme iniziale. L’attacco era di tipo automatizzato e aveva come obiettivo l’installazione di un crypto-miner conosciuto come Kinsing.

In questo attacco, il pirata informatico aveva reso difficile la rilevazione della compromissione crittografando l’inserimento del comando iniziale utilizzando HTTPS rispetto al più comune HTTP normalmente rilevato. Nonostante questo metodo avesse consentito di bypassare i sistemi tradizionali basati su regole e firme, Darktrace ha rilevato numerosi comportamenti insoliti pochi secondi dopo la connessione iniziale.

Dettagli sulla compromissione iniziale

Attraverso un’analisi tra pari Darktrace aveva precedente appreso come questo specifico dispositivo DMZ e il suo gruppo peer si comportano normalmente nell’ambiente. Durante lo sfruttamento iniziale, Darktrace ha rilevato varie impercettibili anomalie che, considerate insieme, rendevano ovvia la presenza di un attacco.

  1. 15:45:32 Connessioni HTTPS in ingresso verso un server DMZ da un raro IP russo - 45.155.205[.]233;
  2. 15:45:38 Il server DMZ esegue nuove connessioni in uscita verso lo stesso raro IP russo utilizzando due nuovi agenti utente: Java utilizza un agente e un cURL su una porta il cui funzionamento con HTTP è insolito se confrontato con comportamenti precedenti;
  3. 15:45:39 Il server DMZ utilizza una connessione HTTP con un altro nuovo agente utente cURL (“curl/7.47.0”) per lo stesso IP russo. L’URI contiene informazioni di ricognizione dal server DMZ.

Tutta questa attività è stata rilevata non perché Darktrace l’avesse già fatto in precedenza, ma perché devia notevolmente dal normale “pattern of life” per questo server e per quelli simili in questa specifica organizzazione.

Questo server non si era mai collegato a indirizzi IP rari su Internet, utilizzando agenti utente mai utilizzati in precedenza, con una combinazione tra protocollo e porta mai utilizzati prima. Ogni anomalia temporizzata presa da sola avrebbe presentato un comportamento leggermente insolito ma, prese insieme e nel contesto di questo particolare dispositivo e ambiente, questi rilevamenti indicano chiaramente un contesto più ampio relativo a un attacco informatico in corso.

Darktrace aveva rilevato questa attività utilizzando vari modelli, ad esempio:

  • Anomalous Connection / New User Agent to IP Without Hostname
  • Anomalous Connection / Callback on Web Facing Device

Download di ulteriori strumenti e crypto-miner

Meno di 90 minuti dopo la compromissione iniziale, il server infetto ha avviato il download di script ed eseguibili pericolosi da un raro IP ucraino 80.71.158[.]12.

Successivamente dallo stesso IP ucraino è stato eseguito il download dei seguenti payload:

  • hXXp://80.71.158[.]12//lh.sh
  • hXXp://80.71.158[.]12/Expl[REDACTED].class
  • hXXp://80.71.158[.]12/kinsing
  • hXXp://80.71.158[.]12//libsystem.so
  • hXXp://80.71.158[.]12/Expl[REDACTED].class

Senza utilizzare threat intelligence o rilevamenti basati su indicatori statici di compromissione (IoC) come IP, nomi di dominio o hash dei file, Darktrace ha rilevato in tempo reale questa fase successiva dell’attacco.

Il server DMZ in questione non aveva mai comunicato in passato con questo indirizzo IP ucraino utilizzando queste porte non comuni. Inoltre, era fortemente insolito per questo dispositivo e per i suoi peer eseguire il download di script o file eseguibili da questo tipo di destinazione esterna e con queste modalità. Subito dopo questi download, il server DMZ aveva iniziato ad eseguire crypto-mining.

Darktrace aveva rilevato questa attività utilizzando vari modelli, ad esempio:

  • Anomalous File / Script from Rare External Location
  • Anomalous File / Internet Facing System File Download
  • Device / Internet Facing System with High Priority Alert

Analisi immediata dell’incidente Log4Shell

Oltre al rilevamento in tempo reale da parte di Darktrace di ogni singola fase di questo attacco, Darktrace Cyber AI Analyst aveva inoltre evidenziato l’incidente di sicurezza complessivo, creando un riepilogo logico relativo all’intero attacco, indicandolo come il principale incidente con priorità elevata tra tutti quelli rilevati in una settimana e ha avvisato Darktrace. Ciò significa che questo incidente è risultato l’elemento più ovvio e immediato evidenziato al team della sicurezza non appena è stato rilevato. Cyber AI Analyst di Darktrace ha scoperto ogni fase di questo incidente e si è posto le stesse domande che si sarebbero fatti gli analisti SOC. Dal report redatto in linguaggio naturale generato da Cyber AI Analyst, è stato presentato un riepilogo di ogni fase dell’incidente, seguito dai punti dati fondamentali necessari agli analisti umani, in un formato facile da riepilogare. Ogni scheda rappresenta una parte differente di questo incidente, sottolineando le azioni reali messe in pratica in ogni processo di indagine.

Il risultato è nessun tempo sprecato nell’analisi di allarmi di basso livello, nessuna necessità di analizzare rilevamenti temporizzati, nessun inserimento dei rilevamenti in un contesto più ampio sull’incidente e nessuna necessità di scrivere un report. Ognuno di questi elementi è stato automaticamente completato da AI Analyst, consentendo un risparmio di tempo ai team di persone.

Il seguente report sull’incidente è stato creato automaticamente e può essere scaricato come file PDF in varie lingue.

Figura 1: Cyber AI Analyst di Darktrace mette in evidenza le numerose fasi dell’attacco e spiega il proprio processo di indagine

Esempio 2 relativo al mondo reale: risposta a un attacco differente utilizzando Log4Shell

Il 12 dicembre era stato inizialmente compromesso, sempre tramite Log4Shell, il server collegato a Internet di un’altra organizzazione. Anche se i dettagli della compromissione erano differenti (erano coinvolti altri IoC), Darktrace ha rilevato e segnalato l’attacco allo stesso modo descritto nel primo esempio.

Cosa interessante, questa organizzazione aveva Darktrace Antigena in modalità autonoma sul proprio server, e ciò significa che l’AI poteva agire in modo autonomo per rispondere agli attacchi informatici in corso. Queste risposte possono essere attivate tramite una varietà di meccanismi, ad esempio, interazioni API con firewall, altri strumenti di sicurezza, o tramite risposte di tipo native fornite da Darktrace.

Nel corso di questo attacco era stato utilizzato il raro IP esterno 164.52.212[.]196 per comunicazioni Command & Control (C2) e la distribuzione di malware, utilizzando HTTP sulla porta 88, attività estremamente insolita per questo dispositivo, il suo gruppo peer e per l’intera organizzazione.

Antigena ha reagito in tempo reale in questa organizzazione, sulla base del contesto specifico dell’attacco, senza alcun intervento umano nel processo. In questo caso Antigena ha interagito con il firewall dell’organizzazione per bloccare qualsiasi connessione da o verso l’indirizzo IP pericoloso, in questo caso 164.52.212[.]196, attraverso la porta 88 per 2 ore, con la possibilità di riadattare il blocco e la durata nel caso in cui l’attacco continuasse. Ciò viene illustrato nell’immagine seguente:

Figura 2: la risposta di Antigena

Ecco dov’è il trucco: grazie alla Self-Learning AI, Darktrace sa esattamente cosa normalmente fa e non fa il server collegato a Internet, nel dettaglio di ogni singolo punto dati. Sulla base di varie anomalie, Darktrace ha la certezza che ciò rappresenti un principale attacco informatico.

Antigena ora entra in azione e forza il normale “pattern of life” relativo a questo server in DMZ. Ciò significa che questo server può continuare a funzionare come fa normalmente, ma tutte le azioni estremamente anomale vengono interrotte in tempo reale non appena si verificano, come le trasmissioni su un raro indirizzo IP esterno sulla porta 88 via HTTP per il download di file eseguibili.

Ovviamente l’utente può modificare o eliminare il blocco in qualsiasi momento. Antigena inoltre può essere configurato in modalità di conferma umana, coinvolgendo l’utente nei processi in determinati orari durante la giornata (ad esempio orari di lavoro) o in qualsiasi momento, in base alle esigenze e ai requisiti dell’organizzazione.

Conclusione

Questo blog illustra ulteriori aspetti relativi agli attacchi informatici che sfruttano la vulnerabilità Log4Shell. Spiega anche come Darktrace rileva e risponde agli attacchi zero-day nel caso in cui Darktrace abbia visibilità sulle entità attaccate.

Mentre Log4Shell domina le notizie relative a IT e sicurezza, in passato sono emerse vulnerabilità simili e altre emergeranno in futuro. Abbiamo illustrato il nostro approccio per rilevare e rispondere a vulnerabilità simili e ad attacchi informatici correlati precedenti, ad esempio:

  • la recente vulnerabilità Gitlab;
  • le vulnerabilità ProxyShell Exchange Server quando erano ancora uno zero-day;
  • e la vulnerabilità Citrix Netscaler.

Come sempre, le aziende devono adottare una strategia mirata alla difesa completa abbinata a controlli di sicurezza preventivi con meccanismi di rilevamento e risposta, nonché un’efficace gestione delle patch.

Grazie a Brianna Leddy, Direttore delle analisi di Darktrace, per il suo contributo al rilevamento delle minacce descritto in precedenza.

Max Heinemeyer

Max is a cyber security expert with over a decade of experience in the field, specializing in a wide range of areas such as Penetration Testing, Red-Teaming, SIEM and SOC consulting and hunting Advanced Persistent Threat (APT) groups. At Darktrace, Max oversees global threat hunting efforts, working with strategic customers to investigate and respond to cyber-threats. He works closely with the R&D team at Darktrace’s Cambridge UK headquarters, leading research into new AI innovations and their various defensive and offensive applications. Max’s insights are regularly featured in international media outlets such as the BBC, Forbes and WIRED. When living in Germany, he was an active member of the Chaos Computer Club. Max holds an MSc from the University of Duisburg-Essen and a BSc from the Cooperative State University Stuttgart in International Business Information Systems.

Justin Fier

Justin is one of the US’s leading cyber intelligence experts, and holds the position of VP, Tactical Risk and Response at Darktrace. His insights on cyber security and artificial intelligence have been widely reported in leading media outlets, including the Wall Street Journal, CNN, The Washington Post, and VICELAND. With over 10 years’ experience in cyber defense, Justin has supported various elements in the US intelligence community, holding mission-critical security roles with Lockheed Martin, Northrop Grumman Mission Systems and Abraxas. Justin is also a highly-skilled technical specialist, and works with Darktrace’s strategic global customers on threat analysis, defensive cyber operations, protecting IoT, and machine learning.