Nel luglio 2025, IBM X-Force ha scoperto un nuovo malware attribuito all'attore delle minacce cinese Hive0154. Questo include una variante aggiornata del Toneshell che evita i rilevamenti e supporta diverse nuove caratteristiche, oltre a un nuovo worm USB chiamato SnakeDisk , scoperto a metà agosto. Il worm viene eseguito solo su dispositivi con indirizzi IP basati in Thailandia e elimina la backdoor Yokai, scoperta da Netskope nel dicembre 2024.
Hive0154 è un attore delle minacce ben consolidato e allineato alla Cina, con un grande arsenale di malware, tecniche coerenti e attività ben documentate negli ultimi anni. Il gruppo è composto da più sottocluster e si impegna in attacchi informatici che prendono di mira organizzazioni pubbliche e private, tra cui think tank, gruppi politici, agenzie di governo e individui. L'osservazione di X-Force sull'uso da parte del gruppo di più malware loader personalizzati, backdoor e famiglie di worm USB dimostra le loro avanzate funzionalità. L'attività di Hive0154 si sovrappone a quella di altri attori della minaccia segnalati pubblicamente come Mustang Panda, Stately Taurus, Camaro Dragon, Twill Typhoon, Polaris ed Earth Preta.
Per tutta la metà del 2025, X-Force ha osservato diversi archivi weaponized caricati su VirusTotal da Singapore e Thailandia:
Nome del file | DLL dannosa | server C2 | Data |
Informazioni per la richiesta di una sede per riunioni.zip | Loader che carica shellcode Pubload | 188.208.141[.] | 21 maggio |
Richiesta di prenotazione alberghiera.7z | Toneshell8 | 146.70.29[.] | 03 luglio |
Cyber_Safety_ | Toneshell8 | 146.70.29[.] | 30 luglio |
TNLA နှင့် အခြားတော်လှန်ရေးအင်အားစုများ.rar (tradotto Myanmar: "TNLA e altre forze rivoluzionarie") | Toneshell8 | 146.70.29[.] | 30 luglio |
Scansione (08-02-205) .zip | Toneshell8 | 146.70.29[.] | 05 agosto |
Note.rar | Loader che carica shellcode Pubload | 188.208.141[.] | 21 agosto |
CallNotes.zip | Loader che carica lo shellcode Toneshell7 | 146.70.29[.] | 4 settembre |
Hive0154 è stato osservato mentre usava un nuovo loader per caricare in modo riflessivo sia Pubload che Toneshell7, oltre a implementare direttamente la variante più offuscata Toneshell8. La variante più recente di Pubload ha subito piccole modifiche e ora supporta i server C2 decoy e il download di payload shellcode tramite HTTP POST, oltre al traffico TCP raw che imita TLS.
L'archivio "CallNotes.zip" scoperto a settembre è stato scaricato da Box Cloud Storage tramite un link in un PDF esca che impersonava il Ministero degli Affari Esteri del Myanmar:
A metà agosto, X-Force ha scoperto anche SnakeDisk, un nuovo worm USB che condivide sovrapposizioni con le precedenti varianti di Tonedisk. Il worm viene eseguito solo su dispositivi situati in Thailandia, come determinato dal loro indirizzo IP pubblico. SnakeDisk distribuisce la backdoor Yokai, che è stata pubblicamente collegata a diverse altre campagne mirate alla Thailandia da Netskope nel dicembre 2024.
Vista la storia precedente dell'uso della backdoor Yokai contro la Thailandia, la scoperta dell'ultimo worm USB sembrava coincidere con i recenti eventi geopolitici che hanno coinvolto la Thailandia:
Tradizionalmente, la Repubblica Popolare Cinese (RPC) è stata un benefattore della Cambogia, fornendo armi e investendo miliardi in progetti infrastrutturali. Eventi geopolitici recenti potrebbero aver dato uno stimolo a Hive0154 per iniziare operazioni contro la Thailandia. La distribuzione del worm USB SnakeDisk, configurato per l'esecuzione solo sulle macchine basate in Thailandia, sembra suggerire che Hive0154 possa cercare di penetrare i sistemi air-gap, spesso impiegati nelle reti del governo.
X-Force ha osservato per la prima volta la versione 8 di Toneshell nel marzo 2025. Il comportamento è molto simile a quello della precedente versione 7, ma contiene aggiornamenti minori per eludere il rilevamento statico e ostacolare l'analisi. Il cambiamento più visibile è l'inclusione di codice spazzatura nelle funzioni del malware. Queste sezioni di codice spazzatura implementano il seguente comportamento:
Questi tre esempi di codice possono essere trovati, ad esempio, nella funzione che risolve tutte le API:
Gli sviluppatori di Toneshell8 hanno anche scelto di sostituire lo Pseudo Random Number Generator (PRNG) con un'implementazione personalizzata del Linear Congruential Generator (LCG) utilizzando diverse costanti, ad esempio:
I PRNG vengono utilizzati in Toneshell per generare un ID vittima, le chiavi di crittografia del traffico C2 e verificare l'autenticità del beacon C2. La qualità delle implementazioni nei campioni Toneshell8 varia notevolmente. Il generatore sopra, ad esempio, è utilizzato dai 4 campioni elencati sopra e produce solo 11 stati diversi per la maggior parte dei seed.
Infine, i codici di risposta hardcoded inviati al server C2, che notificano agli operatori lo stato di alcuni comandi, sono ora offuscati calcolandoli da diversi numeri interi hardcoded nel campione.
A luglio, X-Force ha scoperto una nuova variante di Toneshell, che chiameremo Toneshell9. Contiene aggiornamenti significativi e al momento della stesura non presenta rilevamenti su VirusTotal (318a1ebc0692d1d012d20d306d6634b196cc387b1f4bc38f97dd437f117c7e20).
La nuova variante di Toneshell è stata osservata per la prima volta negli archivi RAR fraudolenti contenenti il software "USB Safely Remove". La struttura del codice sembra essere basata su una variante biforcata del dicembre 2024, che contiene la stessa configurazione C2.
Similmente alle varianti precedenti, Toneshell9 viene eseguito come una DLL sideloaded. L'archivio RAR weaponized contiene un file BAT, che avvia un "USBSRService.exe" eseguibile legittimo con un argomento della riga di comando "-Embedding". Una volta che la DLL di Toneshell "EasyFuncs.dll" è stata caricata in memoria e l'esportazione FS_RegActiveX è stata eseguita, inizia risolvendo una prima serie di API necessarie per l'inizializzazione. Dopo aver analizzato l'argomento "-Embedding" a linea di comando, Toneshell avvia il suo file eseguibile principale in un nuovo processo con l'argomento "EvtSys". Quest'ultimo argomento attiva il comportamento principale della DLL dannosa.
Toneshell inizia inizializzando un nuovo oggetto client che contiene i seguenti valori:
Successivamente risolve il resto delle sue API necessarie tramite una funzione di hashing personalizzata e memorizza i puntatori di funzione in una struttura separata. Successivamente, crea un nuovo evento "Windows External Module" che funge da mutex per impedire che più istanze vengano eseguite sulla stessa macchina.
Toneshell9 è disseminato di numerose sezioni di codice spazzatura, che recupera il numero corrente di tick della CPU, memorizza il risultato come stringa e lo dealloca nuovamente.
Per gestire e memorizzare le comunicazioni C2, i server proxy, i beacon e i payload in memoria, Toneshell istanzia un grande oggetto da 129 KB:
A differenza delle varianti precedenti, Toneshell9 enumera gli hive del registro HKEY_LOCAL_MACHINE, HKEY_CURRENT_USER e HKEY_USERS\\.DEFAULT per cercare server proxy configurati localmente.
Se viene trovato un server, sia il protocollo dell'URL(http, https, ftp o socks) che l'URL completo vengono memorizzati come stringhe in un elenco di oggetti.
Successivamente, Toneshell memorizza il suo dominio server C2 e l'indirizzo IP in un vettore di stringhe. Lo stesso IP e porta hardcoded sono direttamente memorizzati in un array di strutture SOCKADDR_IN. Il malware esegue quindi il loop tra le stringhe del server C2, risolvendo l'indirizzo IP di ciascuna di esse e aggiungendolo allo stesso array di strutture SOCKADDR_IN.
Come osservato nelle varianti precedenti, Toneshell procede a rilasciare un file contenente un GUID vittima casuale di 16 byte generato tramite la funzione _rand() di Windows:
Il GUID viene inoltre memorizzato in una struttura insieme al percorso del file e al nome NetBIOS della vittima.
I dati sopra sono utilizzati per costruire un oggetto beacon in memoria. In particolare, Toneshell9 esegue calcoli sulla differenza nel numero di tick della CPU prima e dopo il comportamento principale di inizializzazione descritto sopra. Questo valore è normalizzato e probabilmente utilizzato per rilevare anomalie nei tempi di esecuzione che potrebbero indicare un'esecuzione o un debug ritardato nel sandbox.
La chiave XOR da 0x300 byte viene generata tramite _rand() e utilizzata per crittografare i 101 byte di dati, a partire dall'offset 0x300. I dati di cui sopra sono contenuti in un falso pacchetto di applicazione TLS 1.2 del seguente formato:
Durante il ciclo principale, Toneshell9 esegue una funzione per stabilire una connessione socket al suo server C2. Inizia cercando di collegarsi tramite la prima struttura SOCKADDR_IN. Se questo fallisce, il malware cerca di impostare una connessione socket tramite uno qualsiasi dei server proxy raccolti dal registro. Questo viene tentato per ciascuna delle stringhe di indirizzi C2, cioè l'indirizzo IP e il dominio per il campione analizzato sopra.
Dopo aver risolto l'indirizzo del server proxy e essersi connesso tramite un socket TCP, imposta innanzitutto i timeout di invio e ricezione su 1 minuto. Successivamente, invia la seguente richiesta di connessione:
Se il server proxy restituisce un codice di stato 2xx, la connessione è stata stabilita correttamente ed è pronta per il tunneling TCP raw. Per verificare la connessione con il suo server C2, Toneshell9 utilizza un protocollo di handshake breve, trasmettendo anche l'IP e la porta del server nel processo. Se l'handshake ha successo, l'handle del socket viene memorizzato nella struct C2_CONNECTION e i timeout del socket vengono impostati a 2 minuti. Toneshell invia quindi il primo beacon pubblicitario attraverso il socket.
Si aspetta una risposta simile dal suo server, che, a parte i primi 5 byte, è criptato tramite la chiave XOR precedentemente trasmessa:
Utilizzando un proxy già configurato su un dispositivo infetto, Toneshell può mimetizzarsi efficacemente con altri traffici di rete. Gli ambienti aziendali più grandi spesso applicano il filtraggio in uscita, consentendo il traffico solo attraverso gateway attendibili, che bloccherebbero la comunicazione C2 diretta. La funzionalità aggiuntiva di Toneshell per aggirare questo filtraggio gli consente di operare in ambienti di rete ben protetti.
Ricevendo la prima risposta C2, Toneshell avvia un nuovo thread che invia beacon di risposta simili a quelli del battito cardiaco ogni 30 secondi, con il codice di risposta 0x1 e un valore shell_id casuale. I beacon di risposta hanno un formato molto simile:
Toneshell9 supporta i seguenti codici di comando:
Codice | Descrizione |
2 | Ignora questo beacon e attendi il successivo da gestire. |
3 | Crea una nuova reverse shell e assegnala a shell_id. |
4 | Scrivi una stringa di comandi nella reverse shell identificata dalla shell_id |
5 | Chiudi la reverse shell identificata dalla shell_id |
Similmente alle varianti precedenti, una reverse shell viene impostata utilizzando pipe anonime collegate agli handle stdin e stdout di un nuovo processo cmd.exe. Toneshell9 supporta due reverse shell attive in parallelo e utilizza la struttura seguente per gestire una connessione shell:
Per ogni reverse shell, viene creato un nuovo thread per verificare regolarmente la presenza di nuovi dati dalla pipe stdout e inviarli al server C2 in un beacon con codice di risposta 0x4. Gli operatori toneshell possono scrivere dati di stringa nella pipe usando il shell_id corretto ed eseguire comandi arbitrari sulla macchina. Quando si chiude una reverse shell, anche il processo conhost.exe identificato da parent_pid viene terminato sulla macchina.
Nell'agosto 2025, X-Force ha scoperto un worm USB precedentemente sconosciuto, attribuito a Hive0154. La DLL a 32 bit veniva caricata su VirusTotal come "01.dat" dalla Thailandia e presenta caratteristiche simili a Toneshell9. Entrambi vengono eseguiti tramite caricamento laterale DLL, con tutte le esportazioni, ad eccezione di DllEntryPoint e del punto di ingresso del malware che puntano alla stessa funzione, che restituisce immediatamente il risultato. Entrambi presentano anche meccanismi di risoluzione API quasi identici, coerenti con quasi tutti i malware relativi a Toneshell. Similmente al campione Toneshell9, SnakeDisk legge anche un argomento da riga di comando per selezionare uno dei due possibili percorsi di esecuzione:
Per eseguire la funzionalità di infezione USB, SnakeDisk richiede un file di configurazione, che cerca nella directory corrente del file eseguibile principale. Tutti i file trovati in quella directory, a meno che non siano denominati "System Volume Information", verranno aggiunti a un elenco di potenziali file di configurazione. Tonedisk procede ad aprire e leggere ogni file, testando le seguenti condizioni per verificare il file prima di procedere con la decrittazione.
SnakeDisk procede decriptando i dati utilizzando probabilmente un algoritmo XOR bifase personalizzato e una chiave da 320 byte memorizzata in un'intestazione da 330 byte.
Infine, il malware analizza 18 valori di stringa che definiscono la configurazione del malware. X-Force non è riuscito a recuperare un file di configurazione; tuttavia, l'analisi di SnakeDisk ha rivelato i seguenti probabili scopi dei valori.
Campo di configurazione | Scopo |
Versione | Versione del malware utilizzata per determinare se un client già infetto debba essere reinfettato con una variante aggiornata. |
mutx | Stringa Mutex. |
psd | Non utilizzato nel campione analizzato. Possibile equivalente locale di "usd": tutti i valori "u*" sono nomi di file/directory presenti sulla chiavetta USB dopo la weaponizzazione. |
urd | Probabilmente "USB root directory". Nome della directory creata sulla chiavetta USB che contiene le sottodirectory. |
uud | Probabilmente "USB user directory". Nome della directory sotto <urd> che contiene i file originali dell'utente dalla USB. |
usd | Probabilmente "USB staging directory". Nome della directory in <urd> che memorizza vari componenti dannosi di SnakeDisk. |
pnex | Probabilmente "parent name executable". Nome di un file esistente nella directory corrente di SnakeDisk durante l'esecuzione. |
pndl | Probabilmente "parent name DLL". Nome di un file esistente nella directory corrente di SnakeDisk durante l'esecuzione. |
pnen | Probabilmente "parent name encrypted". Nome di un file esistente nella directory corrente di SnakeDisk durante l'esecuzione. |
pnendl | Probabilmente "parent name encrypted DLL". Nome di un file esistente nella directory corrente di SnakeDisk durante l'esecuzione. |
unex | Probabilmente "USB name executable". Nome file di un file copiato da <pnex> alla chiavetta USB. |
undl | Probabilmente "USB name DLL". Nome file di un file copiato da <pndl> alla chiavetta USB. |
unen | Probabilmente "USB name encrypted". Nome file di un file copiato da <pnen> alla chiavetta USB. |
unendl | Probabilmente "USB name encrypted DLL". Nome file di un file copiato da <pnendl> alla chiavetta USB. |
unendl_org | Nome file di un file (probabilmente DLL) copiato da <pnendl> alla directory principale della USB e nascosto tramite attributi file. |
unconf | Il nome del file di configurazione di SnakeDisk è stato inserito nell'USB. |
regkey | Potenzialmente è collegato a un meccanismo di persistenza del registro. Non utilizzato nel campione analizzato. |
schkey | Potenzialmente si collega a un meccanismo di persistenza delle attività programmate. Non utilizzato nel campione analizzato. |
Dopo aver letto correttamente il file di configurazione, SnakeDisk tenterà di confermare che è attualmente in esecuzione su un computer con sede in Thailandia. Invia una richiesta HTTP GET a http://ipinfo[.]io/json e verifica se il campo "paese" corrisponde a "THA" o "TH". Se ciò è vero, l'esecuzione continua.
È importante notare che l'esecuzione continuerà anche se si verifica un errore durante la risoluzione delle API o durante la comunicazione di rete.
SnakeDisk poi garantisce che venga eseguito solo in un'unica istanza tentando di aprire un mutex "Global\\<mutx config value>". Se il malware esiste già, si chiude; altrimenti, crea il mutex tramite CreateMutexW.
Per infettare eventuali unità USB già collegate, SnakeDisk inizia a ripetere tutte le possibili lettere dell'unità da A a Z. Apre un handle al volume fisico, ad esempio "\\.\A:" e invia il codice di controllo IO IOCTL_STORAGE_GET_HOTPLUG_INFO (0x2D0C14) al dispositivo. Se il dispositivo è un dispositivo hotplug in base alla struttura STORAGE_HOTPLUG_INFO restituita, viene avviato un nuovo thread per infettare tale unità.
Dopo aver esaminato tutte le lettere del disco, SnakeDisk entra in sospensione per 5 secondi, poi registra una nuova classe finestra "TestClassName" e crea una finestra corrispondente "TestWindowName". Per recuperare i messaggi dal sistema operativo, la funzione crea un ciclo di messaggi Windows usando GetMessageW e invia i messaggi alla procedura finestra del malware tramite TranslateMessage e DispatchMessageW. Esce dal ciclo solo quando riceve un messaggio WM_CAP_PAL_OPEN (0x450). La classe malicious window fa riferimento a una procedura personalizzata che ascolta il messaggio WM_DEVICECHANGE (0x219), e in particolare gli eventi DBT_DEVICEARRIVAL (0x8000) e DBT_DEVICEREMOVECOMPLETE (0x8004).
Se un messaggio di questo tipo viene ricevuto, ad esempio, quando un dispositivo USB è collegato alla macchina infetta, la funzione utilizza il campo "dbcv_unitmask" della struttura DEV_BROADCAST_VOLUME per determinare la lettera del disco corrispondente. Per i dispositivi appena collegati, viene avviato un nuovo thread che infetta il disco. Se SnakeDisk rileva la rimozione di un dispositivo, avvia un thread per eliminare ed eseguire il suo payload incorporato, che avvia lo stesso percorso di esecuzione che avrebbe causato l'esecuzione della DLL SnakeDisk con l'argomento della riga di comando "-hope".
Il thread per infettare un dispositivo USB rilevato inizia cercando nel disco un file di configurazione esistente per determinare se fosse già stato contaminato. Tenta di decifrare e analizzare una configurazione da qualsiasi file con estensione .dat o .cd estensione. Se viene analizzata una configurazione, il malware confronta il numero di versione del disco già infetto con la versione della propria configurazione e reinfetterà solo i dischi con versioni più vecchie di SnakeDisk.
SnakeDisk avvia quindi un altro thread per spostare i file esistenti sull'USB in una nuova sottodirectory. Nascondendo sostanzialmente i file che l'utente si aspetta sulla sua USB, il malware aumenta la probabilità che la vittima creda che la USB non sia ancora stata aperta e clicchi accidentalmente sul file eseguibile weaponized su una nuova macchina con lo stesso nome del dispositivo. Dopo l'esecuzione, il launcher maligno copierebbe i file degli utenti per evitare qualsiasi sospetto. Il percorso contenente i dati dell'utente su un dispositivo infetto è costruito a partire dai valori di configurazione come:
Il malware può utilizzare due meccanismi diversi per l'operazione, ognuno avviato nel proprio thread. Il primo utilizza SHFIleOperationW per spostare ogni file e, durante ogni operazione, legge anche 32 byte da un file "C:\\Windows\\Tmp\\msd.log", che vengono scritti in un file "C:\\ProgramData\\app.log" prima di eliminare quest'ultimo. Lo scopo di questo comportamento non è chiaro.
Mentre il thread viene eseguito, il malware controlla regolarmente il completamento per 30 secondi prima di lanciare un secondo thread. Il secondo thread utilizza robocopy per spostare i file ed esegue il seguente comando in un nuovo processo:
Entrambi gli spostamenti di file escludono i file modificati di SnakeDisk e il file "System Volume Information", che dovrebbero rimanere nella directory principale del disco USB. Dopo aver eseguito il comando sopra, lo stesso comando viene lanciato di nuovo con due flag aggiuntivi "/IS" e "/XO", per includere gli stessi file ed escludere i file di directory sorgente più vecchi della destinazione.
Dopo aver spostato i file già esistenti sull'USB, SnakeDisk procede a copiare i propri payload dalla sua directory corrente all'unità USB. I seguenti file, come specificato nella configurazione, vengono copiati tramite CopyFileW, ciascuno in un nuovo thread:
Il nome del file EXE nella root dell'unità USB è impostato sul nome del volume del dispositivo USB, o semplicemente "USB.exe" se è vuoto. SnakeDisk imposta anche gli attributi SYSTEM e HIDDEN sul file copiato su ""<drive_letter>:\<unendl_org>". Anche tutte le directory sulla USB riportano questi attributi, nascondendo di fatto tutto tranne il file eseguibile. Sebbene X-Force non recuperasse gli altri file, i precedenti worm USB usavano la stessa tecnica per attirare le vittime a fare clic sul file eseguibile, che faceva sideload di una DLL per avviare l'infezione. Il nome file di questa DLL dannosa è probabilmente memorizzato nel valore di configurazione "unendl_org". Infine, SnakeDisk scrive la sua configurazione in un nuovo file sulla chiavetta USB con il nome ricavato dal valore "unconf".
Il thread di SnakeDisk responsabile dell'eliminazione e dell'esecuzione del payload incorporato viene avviato quando viene rilevata la rimozione di un dispositivo USB, o all'inizio dell'esecuzione di SnakeDisk tramite l'argomento della riga di comando "-hope".
Per prima cosa, il thread legge un file marker "vm.ini" nella sua directory e confronta il contenuto con il proprio percorso corrente. Questo file viene scritto anche dopo il rilascio e l'esecuzione dei payload e indica se una vittima è già stata infettata con il payload incorporato di SnakeDisk. Se i percorsi corrispondono, nessun payload verrà eliminato e il thread terminerà.
Dopo il primo controllo, SnakeDisk inizia a rilasciare una serie di payload nella directory "C:\Users\Public\". Ogni file è costruito in memoria a partire da valori immediati in grandi funzioni comprese tra 0,6 e 3,3 MB.
I payload vengono quindi decrittografati tramite una semplice operazione di XOR prima di essere rilasciati come file tramite:
Questi file vengono concatenati in gruppi di tre per produrre i due payload finali tramite i seguenti comandi:
Il nome del file EXE è creato da 10 lettere maiuscole e numeri casuali. Dopo la concatenazione, i file vengono eliminati.
Infine, il file eseguibile viene avviato in un nuovo processo con un argomento della riga di comando codificato:
Non sorprende che l'EXE (bb5bb82e5caf7d4dbbe878b75b23f793a5f3c5ca6dba70d8be447e8c004d26ce) sia un eseguibile legittimo e firmato (acwebbrowser.exe) che carica lateralmente la libcef.dll malevole durante l'esecuzione.
Il payload DLL è stato identificato come la backdoor Yokai, segnalata nel dicembre 2024 da Netskope. All'esecuzione, il malware verifica prima l'argomento "-project-mod" e poi stabilisce la persistenza tramite un compito programmato se l'utente non fa parte del gruppo dell'Amministratore:
Prosegue creando un nuovo mutex "k1tpddvivh74fo1et725okr1c1" e inizializza una struttura di configurazione interna. La variante lasciata da SnakeDisk contiene la stringa di versione "1.0.0" e raggiunge un server C2 hardcoded tramite richieste HTTP POST:
Come descritto nell'analisi di Netskope, Yokai viene utilizzato per creare un reverse shell tramite pipe anonime, permettendo agli operatori di eseguire comandi arbitrari sulla macchina infetta.
Curiosamente, Yokai mostra sovrapposizioni con altre famiglie backdoor attribuite a Hive0154, come Pubload/Pubshell e Toneshell. Sebbene queste famiglie siano chiaramente parti di malware separati, seguono approssimativamente la stessa struttura e usano tecniche simili per stabilire una shell inversa con il loro server C2.
L'analisi X-Force ha inoltre rivelato forti sovrapposizioni tra SnakeDisk e Tonedisk. Nel corso degli anni, sono emerse diverse famiglie di worm USB associate a Hive0154. Le varianti strettamente correlate alla famiglia Toneshell nelle loro implementazioni vengono tracciate da X-Force come Tonedisk. Finora sono state identificate 3 versioni principali di Tonedisk (A, B e C). Ciascuna versione di Tonedisk è una suite di diversi componenti dannosi che costituiscono la piena funzionalità del worm USB. Questi componenti includono launcher, loader, spreader, file criptati, installer e backdoor.
SnakeDisk si sovrappone specificamente alla variante ToneDisk A, che è stata anch'essa segnalata a metà 2023 da Checkpoint come WispRider. I meccanismi di propagazione USB di entrambi i malware, l'hashing API e i file di configurazione mostrano diverse somiglianze, che si allineano con la tendenza nota dei sottocluster Hive0154 a condividere e riutilizzare malware tra di loro.
X-Force traccia l'attività in questo rapporto sotto il cluster generale Hive0154, che si sovrappone parzialmente ad attività pubblicate come Mustang Panda, Stately Taurus, Camaro Dragon, Twill Typhoon, Polaris, TEMP. Hex e Terra Preta. Questo gruppo sembra gestire un ecosistema di malware considerevolmente ampio, con frequenti sovrapposizioni sia nel codice dannoso, sia nelle tecniche utilizzate durante gli attacchi, sia negli obiettivi. All'interno del cluster generale più ampio, X-Force separa almeno tre sottocluster di attività con bassa fiducia, con ogni cluster associato a uno dei ceppi malware centrali PlugX, Toneshell e Pubload. In particolare, ogni ceppo di malware è associato a un diverso framework di worm USB e a una o più varianti di malware loader correlate, che cambiano più frequentemente. Lo stesso loader può essere utilizzato per payload diversi, come Toneshell o Pubload, nello stesso intervallo di tempo. Tuttavia, è importante notare che il cluster delle attività non segnala automaticamente che operano come sottogruppi separati.
L'attività associata all'uso di SnakeDisk e della backdoor Yokai potrebbe indicare un ulteriore sottogruppo di Hive0154. Attualmente sembra essere principalmente rivolto alla Thailandia, come dimostrano i controlli di geolocalizzazione IP nei report di SnakeDisk e Netskope.
Hive0154 rimane un attore delle minacce altamente capace, con molteplici sottocluster attivi e cicli di sviluppo frequenti. X-Force valuta con grande fiducia che gruppi allineati con la Cina come Hive0154 continueranno a perfezionare il loro vasto arsenale di malware e a prendere di mira organizzazioni pubbliche e private in tutto il mondo. Il malware discusso nel rapporto sopra è probabilmente ancora in fase di sviluppo iniziale, permettendo a chi si difende dalle minacce di adottare meccanismi di rilevamento prima del loro uso diffuso. Le entità a rischio di spionaggio Hive0154 dovrebbero rimanere in uno stato di sicurezza difensiva elevato e rimanere vigili riguardo alle tecniche menzionate in questo rapporto e rivedere le seguenti raccomandazioni:
Indicatore | Tipo di indicatore | Contesto |
F8B28CAE687BD55A148D363D58F1 | SHA256 | Archivio weaponized che fornisce Toneshell8 |
8132beeb25ce7baed0b561922d26 | SHA256 | Archivio weaponized che fornisce Toneshell8 |
d1466dca25e28f0b7fae71d5c2abc0 | SHA256 | Archivio weaponized che fornisce Toneshell8 |
1272a0853651069ed4dc505007e85 | SHA256 | Archivio weaponized che fornisce Toneshell8 |
b8c31b8d8af9e6eae15f30019e39c | SHA256 | Archivio weaponized che fornisce Toneshell7 |
7087e84f69c47910fd39c3869a70 | SHA256 | Archivio weaponized che consegna Pubload |
38fcd10100f1bfd75f8dc0883b0c | SHA256 | Archivio weaponized che consegna Pubload |
69cb87b2d8ee50f46dae791b5a0 | SHA256 | PDF contenente l'URL di download per l'archivio weaponized |
564a03763879aaed4da8a8c1d60 | SHA256 | Loader che carica Toneshell7 |
e4bb60d8996999fd84126f9fa0df | SHA256 | Loader che carica Pubload |
c2d1ff85e9bb8feb14fd015dcee1 | SHA256 | Loader che carica Pubload |
188.208.141[.]196 | IPv4 | Server Pubload C2 |
bdbc936ddc9234385317c4ee83 | SHA256 | Toneshell 8 backdoor |
f0fec3b271b83e23ed7965198f3b | SHA256 | Toneshell 8 backdoor |
e7b29611c789a6225aebbc9fee37 | SHA256 | Toneshell 8 backdoor |
9ca5b2cbc3677a5967c448d9d21 | SHA256 | Toneshell 8 backdoor |
146.70.29[.]229 | IPv4 | Server Toneshell7/Toneshell8 C2 |
318a1ebc0692d1d012d20d306 | SHA256 | Backdoor Toneshell9 |
0d632a8f6dd69566ad98db56 | SHA256 | Archivio weaponized che fornisce Toneshell9 |
39e7bbcceddd16f6c4f2fc2335a | SHA256 | Archivio weaponized che fornisce Toneshell9 |
05eb6a06b404b6340960d7a6 | SHA256 | Loader contenente il fork Toneshell che è servito come base per Toneshell9 |
123.253.34[.]44 | IPv4 | Server Toneshell9 C2 |
www.slickvpn[.]com | Dominio | Server Toneshell9 C2 |
dd694aaf44731da313e4594d | SHA256 | Worm USB SnakeDisk |
bb5bb82e5caf7d4dbbe878b7 | SHA256 | Il payload EXE benigno di SnakeDisk usato per il sideload DLL di Yokai |
35bec1d8699d29c27b66e564 | SHA256 | Yokai backdoor DLL |
http://118.174.183[.]89/kptinfo | URL | Server Yokai C2 |
IBM X-Force Premier Threat Intelligence è ora integrato con OpenCTI di Filigran, offrendo informazioni fruibili sulle minacce e molto altro ancora. Accedi a insight su attori delle minacce, malware e rischi dei settori. Installa il connettore X-Force OpenCTI per migliorare il rilevamento e la risposta, rafforzando la tua cybersecurity con l'esperienza di IBM X-Force. Ottieni subito una prova di 30 giorni di X-Force Premier Threat Intelligence!