GootLoader usa ZIP difettosi per eludere i controlli di sicurezza e vendere accessi persistenti alle reti compromesse, poi sfruttati da gruppi ransomware.
Autore: Redazione SecurityOpenLab
Il noto malware GootLoader ha iniziato a usare archivi ZIP volutamente corrotti, composti da centinaia di sotto archivi concatenati, per eludere i controlli di sicurezza. Si è ormai affermato come una delle armi preferite di diversi gruppi ransomware ed è interessante perché rientra nel modello poco pubblicizzato di Access‑as‑a‑Service: compromette le vittime, stabilisce una presenza affidabile in rete e poi rivende quell’accesso a operatori terzi. Fra i suoi clienti ci sono gruppi ransomware come Vanilla Tempest e Rhysida.
GootLoader è un nome noto per chi si occupa di incident response. Nato come esponente della famiglia GootKit, attiva almeno dal 2014, negli ultimi anni è arrivato a rappresentare circa l’11% dei malware che sono riusciti ad aggirare con successo le difese. Il dato dà la misura del ruolo centrale di GootLoader nell’ecosistema del cybercrime.
Storicamente questa minaccia si è distinta per una combinazione di tecniche fileless e di social engineering ben congegnate: campagne di SEO poisoning per piazzare falsi siti con documenti, installer freeware e template dall’apparenza innocui, dietro cui si nascondevano script per scaricare il payload vero e proprio. Questa impostazione non è cambiata nel tempo, ma oggi al centro della scena c’è il modo in cui il loader confeziona e distribuisce il file ZIP che contiene lo script JScript iniziale.
La novità tecnica è un archivio ZIP che in realtà consiste in un mix di 500-1.000 archivi ZIP concatenati uno dopo l’altro, con una struttura di directory volutamente danneggiata e vari campi di intestazione riempiti con valori casuali. Dal punto di vista di molti tool di decompressione questo file è “rotto”: i metadati sono sbagliati, il numero di dischi che ci si aspetta non coincide, l’end of central directory è troncato e l’analisi finisce nel nulla o provoca errori. In realtà è tutto previsto e la chiave corretta di interpretazione è che lo standard ZIP prevede la lettura delle informazioni a partire dalla fine del file. Sfruttando questo dettaglio tecnico, gli autori riescono a produrre un archivio che risulta inutilizzabile per molti strumenti specializzati, ma che funziona senza intoppi con l’utility di estrazione predefinita integrata in Windows. Ed è esattamente questo quello che serve agli attaccanti, che hanno l’obiettivo di far sì che l’utente veda e apra il file JScript.
I ricercatori di Expel hanno pubblicato una ricerca in cui descrivono questa scelta come una vera e propria tecnica anti‑analisi: il file è deliberatamente formattato in modo non conforme, così da non poter essere estratto da 7‑Zip, WinRAR e dagli strumenti tradizionali di analisi automatica. La minaccia passa quindi indenne da soluzioni evolute che spesso ruotano attorno a pipeline di unpacking, sandbox e scanner statici, pur restando perfettamente usabile per la vittima che fa doppio clic da Esplora file. È una forma geniale di ingegneria della compatibilità al contrario: funziona per l’utente e fallisce per il SOC.
Un altro elemento centrale è il concetto di hashbusting, che GootLoader porta alle estreme conseguenze. Ogni download del file ZIP, spiegano gli analisti, viene generato in modo unico: cambia il numero di archivi concatenati, cambiano i valori casuali inseriti nei campi non critici delle intestazioni, cambia il contenuto dello stesso JScript, così che ogni esemplare abbia un hash differente. In queste condizioni, il classico approccio che cerca Indicatori di Compromissione sotto forma di hash adatti per tutti diventa pressoché inutile.
Ancora più insidioso è il modo in cui il file viene consegnato alla vittima. Nel caso osservato da Expel, il server non invia un archivio ZIP già pronto, ma un insieme confuso di dati codificati che, una volta raggiunto il browser, viene decodificato e copiato ripetutamente lato client fino a comporre l’archivio finale. Così facendo si riduce la visibilità dei controlli di sicurezza a livello di rete: i dati malevoli in transito hanno tutta l’aria di un flusso di dati poco interessante, perché la vera minaccia prende forma solo sulla macchina dell’utente, quindi fuori dal raggio d’azione di molte soluzioni di ispezione del traffico.
Vediamo adesso che cosa accade quando la vittima apre l’archivio con l’estrattore di Windows. L’utente si trova davanti a un singolo file JavaScript o JScript che ha quasi sempre un nome che richiama documenti o contenuti legittimi. Se il malcapitato lo attiva con un doppio clic, Windows Script Host esegue lo script da una directory temporanea e avvia il resto dell’infezione. Lo script crea un link nella cartella di avvio dell’utente, puntato verso un secondo file JScript che assicura la ripartenza automatica del loader a ogni riavvio del sistema.
Da qui in avanti, la catena di esecuzione avvia a cascata processi di script e PowerShell per recuperare e lanciare ulteriori componenti, riconfigurare il sistema e preparare il terreno per i successivi payload. In questa fase l’accesso iniziale ottenuto da GootLoader viene monetizzato dagli affiliati: può distribuire ransomware legati a Vanilla Tempest, attuare movimenti laterali, rubare dati e svolgere tutte le funzioni che sfociano in una doppia estorsione.