
Analisi educativa della vulnerabilità Log4Shell (CVE-2021-44228), che ne dettaglia lo sfruttamento in una campagna di mining di criptovalute con IoC, mappatura MITRE ATT&CK e indicazioni per il rilevamento.
Il team di sicurezza di Alibaba Cloud ha divulgato pubblicamente una vulnerabilità critica (CVE-2021-44228) che consente l'esecuzione di codice remoto non autenticato su diverse versioni di Apache Log4j2 (Log4Shell). I server vulnerabili possono essere sfruttati da aggressori che si connettono tramite qualsiasi protocollo come HTTPS e inviano una stringa appositamente predisposta.
Darktrace ha rilevato attività di crypto-mining su diverse installazioni dei clienti, verificatesi a seguito dello sfruttamento di questa vulnerabilità Log4j. In ciascuno di questi incidenti, lo sfruttamento è avvenuto tramite connessioni SSL in uscita che sembrano essere richieste di script PowerShell codificati in base64 per bypassare le difese perimetrali e scaricare file script batch (.bat) e molteplici eseguibili che installano malware di crypto-mining. L'attività presentava indicatori di campagna più ampi, inclusi IP hard-coded comuni, file eseguibili e script.
Il ciclo di attacco inizia con quella che sembra essere una scansione opportunistica di dispositivi connessi a Internet alla ricerca di server VMWare Horizons vulnerabili allo sfruttamento di Log4j. Una volta trovato un server vulnerabile, l'aggressore effettua connessioni HTTP e SSL verso la vittima. Dopo uno sfruttamento riuscito, il server effettua un callback sulla porta 1389, recuperando uno script chiamato mad_micky.bat. Questo ottiene quanto segue:
In almeno due casi, lo script mad_micky.bat è stato recuperato in una connessione HTTP che aveva lo user agent Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Win64; x64; Trident/6.0; MAARJS). Questa è stata la prima e unica volta che questo user agent è stato visto su queste reti. Sembra che questo user agent sia utilizzato legittimamente da alcuni dispositivi ASUS con installazioni di fabbrica nuove; tuttavia, essendo un nuovo user agent visto solo durante questa attività, risulta sospetto.
Dopo uno sfruttamento riuscito, il server effettua un callback sulla porta 1389 per recuperare file script. In questo esempio, /xms.ps1 è uno script PowerShell codificato in base64 che bypassa la politica di esecuzione sull'host per chiamare ‘mad_micky.bat’:
Figura 1: Ulteriori dettagli sullo script PowerShell xms.ps1
Lo snapshot dettaglia il registro eventi per un server interessato e indica un Log4j RCE riuscito che ha comportato il download del file mad_micky.bat:
Figura 2: Dati di log che evidenziano il file mad_micky.bat
Sono state avviate connessioni aggiuntive per recuperare file eseguibili e script. Gli script contenevano due indirizzi IP situati in Corea e Ucraina. È stata effettuata una connessione all'IP ucraino per scaricare il file eseguibile xm.exe, che attiva il miner. Il miner, XMRig Miner (in questo caso) è uno strumento di mining open source e multipiattaforma disponibile per il download da più posizioni pubbliche. Il successivo download di exe osservato è stato per ‘wxm.exe’ (f0cf1d3d9ed23166ff6c1f3deece19b4).
Figura 3: Ulteriori dettagli sull'eseguibile XMRig
La connessione all'IP coreano ha comportato una richiesta per un altro script (/2.ps1) e un file eseguibile (LogBack.exe). Questo script elimina le attività in esecuzione associate alla registrazione, inclusi il filtro del registro eventi SCM o il consumer del registro eventi PowerShell. Lo script richiede anche un file da Pastebin, che è probabilmente un file di configurazione del beacon Cobalt Strike. Le eliminazioni dei log sono state effettuate tramite attività pianificate e WMI inclusi: Eventlogger, SCM Event Log Filter, DSM Event Log Consumer, PowerShell Event Log Consumer, Windows Events Consumer, BVTConsumer.
Il secondo file richiesto da Pastebin, sebbene non più ospitato da Pastebin, fa parte di un comando schtasks, e quindi probabilmente utilizzato per stabilire la persistenza:
Il file eseguibile Logback.exe è un altro strumento di mining XMRig. È stato anche scaricato un file config.json dallo stesso IP coreano. Successivamente sono stati utilizzati comandi cmd.exe e wmic per configurare il miner.
Questi download di file e la configurazione del miner sono stati seguiti da ulteriori connessioni a Pastebin.