Workok: il quadro generale PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Lavoro: il quadro generale

Concentrato principalmente sull'Asia, questo nuovo gruppo di spionaggio informatico utilizza strumenti non documentati, inclusa l'estrazione steganografica di payload PowerShell da file PNG

I ricercatori ESET hanno recentemente scoperto attacchi mirati che utilizzavano strumenti non documentati contro varie aziende di alto profilo e governi locali, soprattutto in Asia. Questi attacchi sono stati condotti da un gruppo di spionaggio precedentemente sconosciuto che abbiamo chiamato Worok e che è attivo almeno dal 2020. Il set di strumenti di Worok include un caricatore C++ CLRLoad, una backdoor PowerShell PowHeartBeat e un caricatore C# PNGLoad che utilizza la steganografia per estrarre malware nascosti payload da file PNG.

Chi è Workok?

Durante la ProxyShell (CVE-2021-34523) divulgazione delle vulnerabilità all'inizio del 2021, abbiamo osservato attività di vari gruppi APT. Uno mostrava caratteristiche comuni con TA428:

  • Tempi di attività
  • Verticali mirati
  • Utilizzo di ShadowPad

Il resto del set di strumenti è molto diverso: ad esempio, TA428 ha preso parte al Compromissione desktop in grado nel 2020. Riteniamo che i collegamenti non siano abbastanza forti da considerare Worok come lo stesso gruppo di TA428, ma i due gruppi potrebbero condividere strumenti e avere interessi comuni. Abbiamo deciso di creare un cluster e di chiamarlo Workok. Il nome è stato scelto dopo un mutex in un caricatore utilizzato dal gruppo. A questo gruppo è stata poi collegata un'ulteriore attività con varianti degli stessi strumenti. Secondo la telemetria di ESET, Worok è attivo dalla fine del 2020 e continua ad essere attivo al momento della stesura di questo documento.

Alla fine del 2020, Worok prendeva di mira governi e aziende in più paesi, in particolare:

  • Una società di telecomunicazioni nell'Asia orientale
  • Una banca in Asia centrale
  • Una società del settore marittimo nel sud-est asiatico
  • Un ente governativo in Medio Oriente
  • Una società privata nell'Africa meridionale

C'è stata un'interruzione significativa nelle operazioni osservate dal 2021-05 al 2022-01, ma l'attività di Workok è tornata nel 2022-02, mirando a:

  • Una compagnia energetica in Asia centrale
  • Un ente del settore pubblico nel sud-est asiatico

La Figura 1 presenta una mappa termica visiva delle regioni e dei verticali target.

Figura 1. Mappa delle regioni e dei verticali target

Considerando i profili degli obiettivi e gli strumenti che abbiamo visto utilizzati contro queste vittime, riteniamo che l’obiettivo principale di Worok sia rubare informazioni.

Analisi tecnica

Sebbene la maggior parte degli accessi iniziali siano sconosciuti, in alcuni casi nel 2021 e nel 2022 abbiamo visto exploit utilizzati contro le vulnerabilità ProxyShell. In questi casi, in genere vengono caricate webshell dopo aver sfruttato queste vulnerabilità, al fine di garantire la persistenza nella rete della vittima. Successivamente gli operatori hanno utilizzato vari impianti per acquisire ulteriori capacità.

Una volta ottenuto l'accesso, gli operatori hanno implementato molteplici strumenti pubblicamente disponibili per la ricognizione, tra cui Mimikatz, Lombrico, ReGeorge Scansione NBT, quindi hanno distribuito i loro impianti personalizzati: un caricatore di primo stadio, seguito da un caricatore .NET di secondo stadio (PNGLoad). Sfortunatamente, non siamo riusciti a recuperare nessuno dei carichi utili finali. Nel 2021, il caricatore della prima fase era un assembly CLR (CLRLoad), mentre nel 2022 è stato sostituito, nella maggior parte dei casi, da una backdoor PowerShell completa (PowHeartBeat): entrambe le catene di esecuzione sono illustrate nella Figura 2. Queste tre gli strumenti sono descritti in dettaglio nelle sottosezioni seguenti.

Workok: il quadro generale PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Figura 2. Catene di compromesso del lavoro

CLRLoad: caricatore di assiemi CLR

CLRLoad è un Windows PE generico che abbiamo visto sia nella versione a 32 che a 64 bit. È un caricatore scritto in C++ che carica la fase successiva (PNGLoad), che deve essere a Assembly Common Language Runtime (CLR). DLL. Quel codice viene caricato da un file situato sul disco in una directory legittima, presumibilmente per indurre in errore le vittime o gli operatori che rispondono all'incidente a pensare che si tratti di software legittimo.

Alcuni esempi CLRLoad iniziano decodificando il percorso completo del file di cui caricheranno il contenuto nella fase successiva. Questi percorsi di file sono codificati con uno XOR a byte singolo, con una chiave diversa in ogni campione. Decodificati o testo in chiaro, questi percorsi di file sono assoluti, di seguito quelli che abbiamo riscontrato:

  • C:ProgrammiVMwareVMware ToolsVMware VGAuthxsec_1_5.dll
  • C:ProgrammiUltraViewermsvbvm80.dll
  • C:ProgrammiInternet ExplorerJsprofile.dll
  • C:ProgrammiWinRarRarExtMgt.dll
  • C:Programmi (x86)Foxit SoftwareFoxit Readerlucenelib.dll

Successivamente, viene creato un mutex e abbiamo visto un nome diverso in ogni campione. Il caricatore controlla questo mutex; se trovato, esce, perché il caricatore è già in esecuzione. In uno dei campioni, il mutex Wo0r0KGWhYGO è stato incontrato, il che ha dato al gruppo il nome di Worok.

CLRLoad carica quindi un assembly CLR dal percorso del file eventualmente decodificato. Essendo codice non gestito, CLRLoad ottiene ciò tramite CorBindToRuntimeEx Chiamate API di Windows nelle varianti a 32 bit o CLRCreateInstance chiamate nelle varianti a 64 bit.

PowHeartBeat: backdoor di PowerShell

PowHeartBeat è una backdoor completa scritta in PowerShell, offuscata utilizzando varie tecniche come compressione, codifica e crittografia. Sulla base della telemetria ESET, riteniamo che PowHeartBeat abbia sostituito CLRLoad nelle campagne Worok più recenti come strumento utilizzato per lanciare PNGLoad.

Il primo livello del codice backdoor è costituito da più blocchi di codice PowerShell con codifica base64. Una volta ricostruito il payload, viene eseguito tramite IEX. Una volta decodificato, viene eseguito un altro livello di codice offuscato, che possiamo vedere nella Figura 3.

Workok: il quadro generale PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Figura 3. Estratto della funzione principale decodificata del secondo strato di PowHeartBeat

Il secondo strato della backdoor first base64 decodifica lo strato successivo del suo codice, con il quale viene poi decriptato Tripla DES (Modalità CBC). Dopo la decrittazione, questo codice viene decompresso utilizzando il file gzip algoritmo, fornendo così il terzo livello di codice PowerShell, che è la backdoor vera e propria. È diviso in due parti principali: configurazione e gestione dei comandi backdoor.

Anche il livello principale del codice backdoor è scritto in PowerShell e utilizza HTTP o ICMP per comunicare con il server C&C. Funziona come illustrato nella Figura 4.

Workok: il quadro generale PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Figura 4. Funzionamento di PowHeartBeat

Configurazione

La configurazione contiene più campi, tra cui il numero di versione, la configurazione proxy opzionale e l'indirizzo C&C. La tabella 1 descrive il significato dei campi di configurazione nelle diverse versioni che abbiamo osservato.

Tabella 1. Significati dei campi di configurazione

nome campo Descrizione
nouse / ikuyrtydyfg
(altri campioni)
Inutilizzato.
Identificativo cliente Identificativo del cliente, utilizzato per i seguenti scopi:
· Come valore durante la costruzione del Intestazione cookie per le comunicazioni C&C.
· Come artefatto crittografico per la crittografia dei dati inviati.
Versione Numero di versione di PowHeartBeat.
ExecTimes Numero di tentativi di esecuzione consentiti durante l'emissione di un EseguiCmd (comando in esecuzione) comando.
UserAgent Agente utente utilizzato per le comunicazioni C&C.
Referer Referer intestazione utilizzata per le comunicazioni C&C.
AccettaCodifica Inutilizzato.
CookieClientId
CookieTaskId
CookieTerminalId
Valori utilizzati per costruire il Cookies intestazione per le comunicazioni C&C.
UrlHttps Protocollo da utilizzare per le comunicazioni C&C.
Dominio URL
Indirizzo IP
Domini
URL, dominio/i o indirizzo IP utilizzato come server C&C. Se Domini non è vuoto, viene scelto al posto di Indirizzo IP. In altri casi, Indirizzo IP è preso.
UrlInviaHeartBeat Percorso URL utilizzato quando la backdoor richiede comandi al server C&C.
UrlSendResult Percorso URL utilizzato quando la backdoor invia i risultati del comando al server C&C.
GetUrl URL completo, utilizzato da PowHeartBeat per richiedere comandi dal server C&C. È la concatenazione degli elementi URL sopra.
PutUrl Uguale a GetUrl ma utilizzato per inviare i risultati del comando al server C&C.
currentPath Inutilizzato.
ProxyEnableFlag Flag che indica se la backdoor deve utilizzare o meno un proxy per comunicare con il server C&C.
Messaggi proxy Indirizzo del proxy da utilizzare se ProxyEnableFlag è impostato su $vero.
Intervallo Tempo in secondi durante il quale lo script dorme tra le richieste GET.
PercorsoConfigBasic Percorso di un file di configurazione opzionale contenente Tempo di attività, DownTime, Intervallo predefinitoe Domini. Tali valori verranno sovrascritti se il file è presente.
Tempo di attività Ora del giorno da cui la backdoor inizia a funzionare, ovvero inizia a effettuare richieste GET al server C&C.
DownTime Orario del giorno fino al quale la backdoor può funzionare, ovvero l'ora in cui smette di effettuare richieste al server C&C.
Indice di dominio Indice del nome a dominio corrente da utilizzare per le comunicazioni con il server C&C. Nel caso in cui una richiesta restituisca un messaggio di errore diverso da 304 ("Non modificato"), Indice di dominio è aumentato.
Chiave segreta Chiave utilizzata per decrittografare/crittografare la configurazione. La configurazione è crittografata con XOR a più byte.
SeLog Inutilizzato.
IfLogFilePath Flag che indica se la registrazione è abilitata.
logpath Percorso del file di registro.
File proxy Percorso del file della configurazione proxy opzionale. Se è vuoto o non viene trovato nel file system, la backdoor recupera le impostazioni proxy dell'utente dal valore del registro HKCUSoftwareMicrosoftWindowsCurrentVersionImpostazioni InternetProxyServer .
SeConfig Flag che indica se utilizzare un file di configurazione.

La Figura 5 mostra un esempio della configurazione estratta da un campione PowHeartBeat (SHA-1: 757ABA12D04FD1167528FDD107A441D11CD8C427).

Figura 5. Esempio di configurazione

Crittografia dei dati

PowHeartBeat crittografa i registri e il contenuto aggiuntivo dei file di configurazione.

Il contenuto del file di registro viene crittografato tramite XOR a più byte con una chiave specificata in testo non crittografato nell'esempio. È interessante notare che Identificativo cliente viene utilizzato come sale per l'indice nell'array di chiavi. La chiave è un array da 256 byte, identico in ogni campione riscontrato. Il contenuto aggiuntivo del file di configurazione viene crittografato tramite XOR a più byte con il valore da Chiave segreta come la sua chiave.

Comunicazioni C&C

PowHeartBeat ha utilizzato HTTP per le comunicazioni C&C fino alla versione 2.4, quindi è passato a ICMP. In entrambi i casi la comunicazione non è crittografata.

HTTP

In un ciclo infinito, la backdoor invia una richiesta GET al server C&C, chiedendo l'invio di un comando. La risposta crittografata viene decrittografata dalla backdoor, che elabora il comando e scrive l'output del comando in un file il cui contenuto viene quindi inviato al server C&C tramite una richiesta POST.

Il formato delle richieste GET è il seguente:

Tieni presente che la richiesta viene costruita utilizzando gli omonimi campi di configurazione.

Nella risposta del server C&C, il terzo byte del contenuto è l'identificatore del comando che indica il comando che deve essere elaborato dalla backdoor. Lo chiameremo id_comando. Il contenuto rimanente della risposta verrà passato come argomento al comando elaborato. Questo contenuto è crittografato con l'algoritmo mostrato nella Figura 6, IDattività essendo il valore del cookie da cui prende il nome CookieTaskIdil valore dalla configurazione.

Figura 6. Richiede l'algoritmo di crittografia dei dati del contenuto

La risposta del server C&C contiene anche un altro cookie, il cui nome è specificato dalla backdoor CookieTerminalId variabile di configurazione. Il valore di questo cookie viene ripetuto nella richiesta POST dalla backdoor e non deve essere vuoto. Dopo aver eseguito il comando backdoor, PowHeartBeat invia il risultato come richiesta POST al server C&C. Il risultato viene inviato come file il cui nome è .png.

ICMP

A partire dalla versione 2.4 di PowHeartBeat, HTTP è stato sostituito da ICMP, i pacchetti inviati avevano un timeout di sei secondi ed erano non frammentato. La comunicazione tramite ICMP è molto probabilmente un modo per eludere il rilevamento.

Non ci sono grandi cambiamenti nelle versioni 2.4 e successive, ma abbiamo notato alcune modifiche nel codice:

  • PowHeartBeat invia un pacchetto heartbeat ad ogni loop che contiene la stringa abcdefghijklmnopqrstuvwxyz, prima di richiedere un comando. Ciò informa il server C&C che la backdoor è pronta a ricevere comandi.
  • Le richieste per ottenere comandi eseguiti dalla backdoor contengono la stringa abcdefghijklmnop.

I pacchetti heartbeat hanno il formato descritto nella Figura 7.

Workok: il quadro generale PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Figura 7. Layout del pacchetto Heartbeat

La differenza tra Identificativo cliente ed bandiera del cliente è che Identificativo cliente differisce in ogni campione mentre bandiera del cliente è lo stesso in ogni campione che utilizza ICMP. bandiera del battito cardiaco indica che la backdoor sta inviando un heartbeat. La risposta dal server C&C ha il formato descritto nella Figura 8.

Workok: il quadro generale PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Figura 8. Layout della risposta del server C&C

bandiera qui indica se c'è un comando da inviare alla backdoor. Le richieste per ottenere comandi hanno il formato descritto nella Figura 9.

Workok: il quadro generale PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Figura 9. Layout per le richieste di acquisizione dei comandi

Tieni presente che la modalità ICMP della backdoor consente di ricevere una quantità illimitata di dati, suddivisi in blocchi, e di variabili lunghezza dei dati, posizione attuale ed lunghezza totale vengono utilizzati per tenere traccia dei dati trasmessi. Le risposte a queste richieste hanno il formato descritto nella Figura 10.

Workok: il quadro generale PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Figura 10. Layout delle risposte alle richieste di acquisizione dei comandi

Come nelle risposte HTTP, l'identificatore del comando è il terzo byte di dati.

Dopo sette risposte ICMP consecutive con contenuto vuoto o formattato in modo incoerente, i trasferimenti tra la backdoor e il server C&C vengono considerati terminati.

Per quanto riguarda le richieste di invio del risultato del comando immesso al server C&C, la modalità server viene modificata in modalità post e la stringa finale (abcdefghijklmnop) viene modificato per i dati dei risultati.

Comandi backdoor

PowHeartBeat ha varie funzionalità, tra cui l'esecuzione di comandi/processi e la manipolazione dei file. La tabella 2 elenca tutti i comandi supportati dai vari campioni analizzati.

Tabella 2. Descrizioni dei comandi PowHeartBeat

Nome Identificatore del comando Descrizione
cmd 0x02 Esegui un comando di PowerShell.
Exe 0x04 Esegui un comando come a processi.
Upload di file 0x06 Carica un file sul computer della vittima. Il contenuto del file è compresso con gzip.
Download file 0x08 Scarica un file dal computer della vittima e restituisci il percorso del file, la lunghezza del file, l'ora di creazione, i tempi di accesso e il contenuto del file al server C&C.
FileView 0x0A Ottieni informazioni sui file di una directory specifica, in particolare:
· Nomi dei file
· Attributi del file
· Ultimi tempi di scrittura
· Contenuto del file
FileElimina 0x0C Elimina un file.
FileRinomina 0x0E Rinominare o spostare un file.
Cambia dir 0x10 Cambia la posizione di lavoro attuale della backdoor.
Info 0x12 Ottieni una categoria di informazioni in base all'argomento specificato:
· "Informazioni di base": Identificativo cliente, Versione, nome host, indirizzi IP, explorer.exe informazioni su versione e dimensione, sistema operativo (architettura e flag che indicano se la macchina è un server), Intervallo, directory corrente, informazioni sull'unità (nome, tipo, spazio libero e dimensione totale), ora corrente
· “Informazioni sull'intervallo di tempo”: Intervallo e l'ora corrente
· “Informazioni sul dominio”: contenuto del file di configurazione decrittografato
Config 0x14 Aggiorna il contenuto del file di configurazione e ricarica la configurazione.
N/A 0x63 Uscita dalla porta sul retro.

In caso di errori sul lato backdoor, la backdoor utilizza uno specifico identificatore di comando 0x00 nella richiesta POST al server C&C, indicando così che si è verificato un errore.

Tieni presente che prima di inviare le informazioni al server C&C, i dati vengono compressi con gzip.

PNGLoad: caricatore steganografico

PNGLoad è il payload di seconda fase distribuito da Worok su sistemi compromessi e, secondo la telemetria ESET, caricato da CLRLoad o PowHeartBeat. Sebbene non vediamo alcun codice in PowHeartBeat che carichi direttamente PNGLoad, la backdoor ha la capacità di scaricare ed eseguire payload aggiuntivi dal server C&C, che è probabilmente il modo in cui gli aggressori hanno distribuito PNGLoad su sistemi compromessi con PowHeartBeat. PNGLoad è un caricatore che utilizza byte di file PNG per creare un payload da eseguire. È un eseguibile .NET a 64 bit, offuscato con Reattore .NET – che si maschera da software legittimo. Ad esempio, la Figura 11 mostra le intestazioni CLR di un campione mascherato da DLL WinRAR.

Workok: il quadro generale PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Figura 11. Esempio di una falsa DLL WinRAR

Una volta deoffuscato, è presente solo una classe. In questa classe c'è a Percorso principale attributo contenente il percorso della directory che la backdoor cerca, comprese le sue sottodirectory, per i file con a .png estensione, come mostrato nella Figura 12.

Workok: il quadro generale PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Immagine 12. .png elenco dei file

Ogni .png file individuato da questa ricerca di Percorso principale viene quindi controllato il contenuto incorporato steganograficamente. Innanzitutto, il bit meno significativo dei valori R (rosso), G (verde), B (blu) e A (alfa) di ciascun pixel viene recuperato e assemblato in un buffer. Se i primi otto byte di quel buffer corrispondono al numero magico visto nella Figura 13 e il successivo valore di otto byte, control, è diverso da null, il file supera il controllo del contenuto steganografico di PNGLoad. Per tali file, l'elaborazione continua con il resto del buffer decrittografato con uno XOR a più byte, utilizzando la chiave memorizzata nel file PNGLoad. SecretKeyBytes attributo e quindi il buffer decrittografato viene decompresso con gzip. Si prevede che il risultato sia uno script di PowerShell, che viene eseguito immediatamente.

Workok: il quadro generale PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Figura 13. Formato del buffer che PNGLoad crea dall'elaborazione .png file

È interessante notare che le operazioni eseguite da PNGLoad vengono registrate in un file il cui percorso è memorizzato nella variabile Percorso file di registro. Le operazioni vengono registrate solo se è presente un file il cui percorso è specificato dalla variabile interna IfLogFilePath.

Non siamo riusciti a ottenere un campione .png utilizzato insieme a PNGLoad, ma il modo in cui funziona PNGLoad suggerisce che dovrebbe funzionare con file PNG validi. Per nascondere il payload dannoso, Worok utilizza oggetti Bitmap in C#, che prendono solo informazioni sui pixel dai file, non dai metadati dei file. Ciò significa che Worok può nascondere i suoi payload dannosi in immagini PNG valide e dall'aspetto innocuo e quindi nascondersi in bella vista.

Conclusione

Worok è un gruppo di spionaggio informatico che sviluppa i propri strumenti, oltre a sfruttare quelli esistenti, per compromettere i propri obiettivi. Rubare informazioni alle loro vittime è ciò che crediamo gli operatori cerchino perché si concentrano su entità di alto profilo in Asia e Africa, prendendo di mira vari settori, sia privati ​​che pubblici, ma con un'enfasi specifica sugli enti governativi. I tempi di attività e il set di strumenti indicano possibili legami con TA428, ma effettuiamo questa valutazione con scarsa certezza. Il loro set di strumenti personalizzato include due caricatori, uno in C++ e uno in C# .NET, e una backdoor PowerShell. Sebbene la nostra visibilità sia limitata, speriamo che far luce su questo gruppo incoraggi altri ricercatori a condividere informazioni su questo gruppo.

Per qualsiasi domanda sulla nostra ricerca pubblicata su WeLiveSecurity, contattaci all'indirizzo threatintel@eset.com.

ESET Research offre ora anche report di intelligence APT privati ​​e feed di dati. Per qualsiasi domanda su questo servizio, visitare il Intelligence sulle minacce ESET .

IOC

File

SHA-1 Nome del file Nome del rilevamento ESET Commento
3A47185D0735CDECF4C7C2299EB18401BFB328D5 copione PowerShell/PowHeartBeat.B PowHeartBeat 2.4.3.0003.
27ABB54A858AD1C1FF2863913BDA698D184E180D copione PowerShell/PowHeartBeat.A PowHeartBeat 2.4.3.0003.
678A131A9E932B9436241402D9727AA7D06A87E3 copione PowerShell/PowHeartBeat.B PowHeartBeat 2.4.3.0003.
757ABA12D04FD1167528FDD107A441D11CD8C427 copione PowerShell/PowHeartBeat.B PowHeartBeat 2.1.3.0003.
54700A48D934676FC698675B4CA5F712C0373188 copione PowerShell/PowHeartBeat.A PowHeartBeat 1.1.3.0002.
C2F53C138CB1B87D8FC9253A7088DB30B25389AF copione PowerShell/PowHeartBeat.A PowHeartBeat 1.1.3.0002.
C2F1954DE11F72A46A4E823DE767210A3743B205 tmp.ps1 PowerShell/PowHeartBeat.B PowHeartBeat 2.4.3.0004.
CE430A27DF87A6952D732B4562A7C23BEF4602D1 tmp.ps1 PowerShell/PowHeartBeat.A PowHeartBeat 2.1.3.0004.
EDE5AB2B94BA85F28D5EE22656958E4ECD77B6FF copione PowerShell/PowHeartBeat.A PowHeartBeat 2.4.3.0003.
4721EEBA13535D1EE98654EFCE6B43B778F13126 vix64.dll MSIL/PNGLoader.A PNGLoader.
728A6CB7A150141B4250659CF853F39BFDB7A46C RarExtMgt.dll MSIL/PNGLoader.A PNGLoader.
864E55749D28036704B6EA66555A86527E02AF4A Jsprofile.dll MSIL/PNGLoader.A PNGLoader.
8DA6387F30C584B5FD3694A99EC066784209CA4C vssxml.dll MSIL/PNGLoader.A PNGLoader.
AA60FB4293530FBFF00D200C0D44EEB1A17B1C76 xsec_1_5.dll MSIL/PNGLoader.A PNGLoader.
B2EAEC695DD8BB518C7E24C4F37A08344D6975BE msvbvm80.dll MSIL/PNGLoader.A PNGLoader.
CDB6B1CAFEE098615508F107814179DEAED1EBCF lucenelib.dll MSIL/PNGLoader.A PNGLoader.
4F9A43E6CF37FF20AE96E564C93898FDA6787F7D vsstrace.dll Win64/CLRLoad.C CLRLarico.
F181E87B0CD6AA4575FD51B9F868CA7B27240610 ncrypt.dll Win32/CLRLoad.A CLRLarico.
4CCF0386BDE80C339EFE0CC734CB497E0B08049C ncrypt.dll Win32/CLRLoad.A CLRLarico.
5CFC0D776AF023DCFE8EDED5CADA03C6D7F9C244 wlbctrl.dll Win64/CLRLoad.E CLRLarico.
05F19EBF6D46576144276090CC113C6AB8CCEC08 wlbctrl.dll Win32/CLRLoad.A CLRLarico.
A5D548543D3C3037DA67DC0DA47214B2C2B15864 secur32.dll Win64/CLRLoad.H CLRLarico.
CBF42DCAF579AF7E6055237E524C0F30507090F3 dbghelp.dll Win64/CLRLoad.C CLRLarico.

Percorsi di file

Alcuni dei Percorso principale, Percorso file di registro ed IfLogFilePath valori che abbiamo riscontrato negli esempi PNGLoad:

Percorso principale Percorso file di registro IfLogFilePath
C:ProgrammiVMwareVMware Tools C:ProgrammiVMwareVMware ToolsVMware VGAuthreadme.txt C:ProgrammiVMwareVMware ToolsVMware VGAuthVMWSU_V1_1.dll
C:ProgrammiWinRar C:ProgrammiWinRarrarinstall.log C:ProgrammiWinRardes.dat
C:ProgrammiUltraViewer C:ProgrammiUltraViewer‌Copy Rights.dat C:ProgrammiUltraVieweruvcr.dll

Network NetPoulSafe

Dominio IP
Nessuna 118.193.78[.]22
Nessuna 118.193.78[.]57
aeroplano.agenzia-pubblicitaria di viaggio[.]. 5.183.101[.]9
central.suhypercloud[.]org 45.77.36[.]243

Mutex

Negli esempi CLRLoad, i nomi mutex che abbiamo riscontrato sono:

aB82UduGX0EX
ad8TbUIZl5Ga
Mr2PJVxbIBD4
oERiQtKLgPgK
U37uxsCsA4Xm
Wo0r0KGWhYGO
xBUjQR2vxYTz
zYCLBWekRX3t
3c3401ad-e77d-4142-8db5-8eb5483d7e41
9xvzMsaWqxMy

Un elenco completo di Indicatori di Compromise (IoC) e campioni è disponibile in il nostro repository GitHub.

Tecniche MITRE ATT&CK

Questa tabella è stata creata utilizzando Versione 11 del framework MITRE ATT&CK.

tattica ID Nome Descrizione
Ricognizione T1592.002 Raccogli informazioni sull'ospite della vittima: software PowHeartBeat si riunisce explorer.exe informazioni.
T1592.001 Raccogli le informazioni sull'ospite della vittima: Hardware PowHeartBeat raccoglie informazioni sulle unità.
T1590.005 Raccogliere informazioni sulla rete della vittima: indirizzi IP PowHeartBeat raccoglie gli indirizzi IP del computer compromesso.
Sviluppo delle risorse T1583.004 Acquisire infrastruttura: server Workok utilizza i propri server C&C.
T1588.002 Ottieni capacità: strumento Workok ha distribuito più strumenti disponibili pubblicamente sulle macchine compromesse.
T1583.001 Acquisire l'infrastruttura: domini Workok ha domini registrati per facilitare la comunicazione e la messa in scena di C&C.
T1588.005 Ottieni capacità: exploit Worok ha utilizzato la vulnerabilità ProxyShell.
T1587.001 Capacità di sviluppo: malware Worok ha sviluppato il proprio malware: CLRLoad, PNGLoad, PowHeartBeat.
T1587.003 Sviluppare capacità: certificati digitali Worok ha creato i certificati Let's Encrypt SSL per abilitare l'autenticazione TLS reciproca per il malware.
T1059.001 Interprete di comandi e script: PowerShell PowHeartBeat è scritto in PowerShell.
Persistenza T1505.003 Componente software del server: Web Shell Workok utilizza la webshell ReGeorg.
Evasione della difesa T1140 Deoffuscare/decodificare file o informazioni Worok utilizza vari schemi personalizzati basati su XOR per crittografare stringhe e log in PowHeartBeat, PNGLoad e CLRLoad.
T1036.005 Mascheramento: corrisponde al nome o alla posizione legittimi Gli esempi PNGLoad vengono distribuiti in directory VMWare dall'aspetto legittimo.
Accesso alle credenziali T1003.001 Dumping delle credenziali del sistema operativo: memoria LSASS Worok utilizza Mimikatz per eseguire il dump delle credenziali dalla memoria LSASS.
Ricerca e Sviluppo T1082 Scoperta delle informazioni di sistema PowHeartBeat raccoglie informazioni sul sistema operativo.
T1083 Scoperta di file e directory PowHeartBeat può elencare file e directory.
T1046 Individuazione dei servizi di rete Usi di lavoro NbtScan per ottenere informazioni di rete sulle macchine compromesse.
T1124 Scoperta dell'ora di sistema PowHeartBeat raccoglie le informazioni sull'ora della vittima.
Collezione T1005 Dati dal sistema locale PowHeartBeat raccoglie i dati dal sistema locale.
T1560.002 Archivia i dati raccolti: Archivia tramite la libreria PowHeartBeat gzip comprime i dati prima di inviarli al server C&C.
Comando e controllo T1071.001 Protocollo del livello di applicazione: protocolli Web Alcune varianti di PowHeartBeat utilizzano HTTP come protocollo di comunicazione con il server C&C.
T1090.001 Proxy: proxy interno PowHeartBeat gestisce la configurazione del proxy sul computer della vittima.
T1001.002 Offuscamento dei dati: steganografia PNGLoad estrae i valori dei pixel da .png file per ricostruire i payload.
T1573.002 Canale crittografato: crittografia asimmetrica PowHeartBeat gestisce le comunicazioni HTTPS con il server C&C.
T1095 Protocollo di livello non applicativo Alcune varianti di PowHeartBeat utilizzano ICMP come protocollo di comunicazione con il server C&C.
T1132.001 Codifica dati: codifica standard Worok utilizza la codifica XOR in PowHeartBeat e PNGLoad.
T1132.002 Codifica dati: codifica non standard Worok utilizza algoritmi di codifica XOR che utilizzano un sale aggiuntivo.
exfiltration T1041 Esfiltrazione sul canale C2 PowHeartBeat utilizza il suo canale di comunicazione C&C per esfiltrare informazioni.

Workok: il quadro generale PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Timestamp:

Di più da Viviamo la sicurezza