Un malware che si rifiuta di funzionare su qualsiasi macchina tranne quella del bersaglio designato: è questa l’arma di precisione che un attore cinofono ha usato per almeno diciotto mesi contro ministeri, ospedali e centri di ricerca dell’Asia Centrale. Kaspersky GReAT ha battezzato l’operazione con i nomi dei due impianti che ne costituiscono il cuore, OctLurk e SilkLurk, e i dettagli tecnici pubblicati da Securelist disegnano il profilo di una campagna di cyberspionaggio pensata apposta per resistere all’analisi forense.
Un bersaglio, una chiave
Da gennaio 2025 il gruppo, non ancora attribuito a un cluster APT noto, ha colpito enti governativi e organizzazioni critiche in Afghanistan, Kirghizistan, Tagikistan, Uzbekistan, Kazakistan e, fuori dall’area, in Siria. La vittimologia comprende ministeri degli Esteri, forze dell’ordine, sanità, ricerca, logistica, pianificazione urbana e persino istituti scolastici pubblici — un ventaglio tipico delle operazioni di raccolta informativa a lungo termine piuttosto che del cybercrimine opportunistico.
Il tratto distintivo della campagna è la codifica “victim-specific”: entrambi i backdoor lasciano sul disco solo un minuscolo loader, mentre il payload vero e proprio resta cifrato finché non viene eseguito sulla macchina giusta. OctLurk usa il numero seriale del disco fisso come chiave di decifratura, SilkLurk il nome del computer. Se un analista prova a eseguire il campione in sandbox o su un sistema diverso da quello infettato, il payload semplicemente non si apre. È una tecnica che complica enormemente sia il rilevamento automatico sia il reverse engineering, perché toglie ai difensori la possibilità di “detonare” il malware in un ambiente controllato per osservarne il comportamento.
OctLurk: ricognizione e movimento laterale in memoria
OctLurk viene iniettato interamente in memoria tramite un loader dedicato. Prima di eseguire il payload principale, gli attaccanti verificano la connettività verso il dominio dns.ssentialserv[.]xyz, poi lanciano uno script batch che avvia LurkProxy, l’utility di proxying che stabilisce il contatto con il server di comando e controllo (C2) all’indirizzo 154.196.162[.]76.
Una volta operativo, OctLurk raccoglie le informazioni di sistema, le cifra e le invia via socket a un secondo C2 hard-coded, dns.multitoconference[.]com. Da quel momento il backdoor può caricare in memoria plugin aggiuntivi per l’esecuzione di comandi, operazioni sul filesystem, raccolta e manipolazione degli appunti, cattura di screenshot ed emulazione di mouse e tastiera. Gli operatori hanno sfruttato in particolare il plugin “command shell” per una sequenza di azioni molto concreta:
- fingerprinting completo dell’host e raccolta di informazioni estese sul sistema compromesso;
- esportazione e query degli eventi di logon interattivo remoto per individuare utenti specifici;
- dump degli hash delle password dai domain controller tramite
secretsdump.pydi Impacket; - installazione di un keylogger travestito da AnyDesk per evitare il rilevamento;
- decifratura ed estrazione delle password salvate in Google Chrome e Mozilla Firefox;
- accesso remoto persistente tramite l’agente Pandora RC;
- scansione di reti interne e pubbliche con Fscan, alla ricerca di servizi SSH (porta 22) e MySQL (porta 3306), con tentativi di accesso usando credenziali da un file chiamato
pp.txt; - connessione a server di posta per raccogliere o manipolare messaggi email.
LurkProxy, il terzo strumento del set, può operare come proxy SOCKS5 o come proxy trasparente — una modalità alla volta — per instradare il traffico verso un indirizzo target, un accorgimento che aiuta gli attaccanti a mascherare l’origine delle connessioni C2 dentro il traffico di rete della vittima.
SilkLurk e il salto verso l’esfiltrazione
SilkLurk viene avviato tramite una DLL caricata con una sequenza di DLL side-loading, tecnica ormai marchio di fabbrica di diversi gruppi cinofoni. Dopo aver creato un socket TCP verso il proprio C2, invia le informazioni sulla vittima e attende istruzioni: sincronizzazione dell’orologio di sistema, impostazione dell’intervallo di polling, aggiornamento della configurazione o iniezione di ulteriori plugin in memoria.
L’attività post-compromissione osservata è quella di un’operazione di furto documentale mirato: tramite cmd.exe e PowerShell gli operatori si connettono a risorse di rete condivise usando credenziali amministrative, cercano e mettono da parte documenti riservati, si disconnettono dalle condivisioni e infine comprimono i dati rubati con WinRAR o 7-Zip. In alcuni casi la stessa catena di side-loading viene riutilizzata per distribuire PlugX, backdoor storicamente associata a gruppi di hacking cinesi.
Le tracce di un ecosistema più ampio
Kaspersky ha individuato sovrapposizioni infrastrutturali tra questa campagna e un impianto C++ precedentemente documentato, SilentRaid (noto anche come MystRodX o TrustFall), collegato a sua volta a un cluster di attività denominato UAT-7290 attivo contro operatori telco. I ricercatori restano cauti sull’attribuzione — non è chiaro se le due campagne siano state condotte in parallelo dallo stesso gruppo o se semplicemente condividano fornitori di infrastruttura — ma il quadro complessivo conferma quanto gli ecosistemi di cyberspionaggio cinofono continuino a riciclare toolkit, loader e provider tra operazioni distinte, rendendo la clusterizzazione un esercizio sempre più complesso per i difensori.
Cosa devono fare i difensori
Il vettore di accesso iniziale resta sconosciuto, il che rende la telemetria di rete l’unica difesa realmente efficace contro un impianto che vive quasi esclusivamente in memoria. Per le organizzazioni governative e critiche nell’area centroasiatica e per chiunque abbia rapporti con enti di quella regione, ha senso monitorare le connessioni verso i domini e l’IP indicati più sotto, verificare la presenza di keylogger mascherati da eseguibili legittimi come AnyDesk, controllare i log di logon interattivo remoto per pattern anomali di query mirate e, soprattutto, dare priorità a EDR capaci di ispezionare l’esecuzione in memoria piuttosto che il solo file scanning su disco, dato che il loader lasciato sul filesystem è deliberatamente minimale e poco significativo per il rilevamento signature-based.
Indicatori di compromissione
Domini C2:
dns.ssentialserv[.]xyz
dns.multitoconference[.]com
Indirizzo IP C2:
154.196.162[.]76
Strumenti abusati:
Impacket secretsdump.py
Fscan (github.com/shadow1ng/fscan)
Pandora RC agent
Keylogger camuffato da AnyDesk
WinRAR / 7-Zip per l'archiviazione dei dati esfiltrati
File di credenziali: pp.txt
Malware correlato:
PlugX (via DLL side-loading)
SilentRaid / MystRodX / TrustFall (overlap infrastrutturale)