Guarda la panoramica sul prodotto Richiedi una demo Valutazione della sicurezza informatica Contattaci

Stories

The latest cybersecurity trends, best practices,
security vulnerabilities, and more

Il ritorno dello pseudo-ransomware

Il recente annuncio di una campagna “ransomware” contro l'Ucraina ha generato molte discussioni, con i media che si sono concentrati non solo sui responsabili, ma anche sulle loro possibili motivazioni. Unlike traditional ransomware campaigns where the motive is obvious, this particular campaign is believed to be pseudo in nature1. Qui, l'intenzione è probabilmente quella di distruggere i sistemi infetti poiché il malware “wiper” nella fase 4 sovrascrive semplicemente i dati sul sistema della vittima. In altre parole, qualsiasi decrittazione è impossibile. Sebbene la campagna sia rivolta principalmente a un singolo paese, il team Advanced Threat Research di Trellix ha pubblicato una campagna MVISION Insights per monitorare da vicino questa minaccia. Questo mostra gli indicatori che sono stati osservati in altri paesi. (Ulteriori dettagli)

Fonte: Presentazione di MVISION Insights

Pertanto, consigliamo vivamente alle aziende di verificare se il loro stato di sicurezza incorpora i controlli necessari per rilevare e proteggersi dalla minaccia. Indicators of Compromise for active hunting are available within the preview, and we have incorporated all known indicators into our products. Stiamo anche continuando la nostra ricerca per identificare eventuali nuovi elementi specifici di questo attacco man mano che si presentano.

Dettagli della campagna

I primi campioni e indicatori sono stati segnalati giovedì 13 gennaio in tarda serata (UTC), ovvero intorno all'una di notte e successivamente in Ucraina.

The attack consists of three stages, as can be seen below.

Figura 1: flusso di attacco

Fase 1: sovrascrittura del record MBR e distruzione di tutte le partizioni
I file inizialmente scoperti sono i seguenti:

Nome file Stage1.exe
Data/ora di compilazione 01-10-2022 10:37:18
SHA1 189166d382c73c242ba45889d57980548d4ba37e
SHA256 a196c6b8ffcb97ffb276d04f354696e2391311db3841ae16c8c9f56f36a38e92
MD5 5d5c99a08a7d927346ca2dafa7973fc1

Fase 2: download del malware della fase 3 tramite una rete di distribuzione dei contenuti (CDN) ospitata da Discord

Nome file Stage2.exe (in origine conosciuto come Tbopbh.exe)
Data/ora di compilazione 01-10-2022 14:39:54
SHA1 16525cb2fd86dce842107eb1ba6174b23f188537
SHA256 dcbbae5a1c61dbbbb7dcd6dc5dd1eb1169f5329958d38b58c3fd9384081c9b78
MD5 14c8482f302b5e81e3fa1b18a509289d

Fase 3: esecuzione del file wiper

Nome file Frkmlkdkdubkznbkmcf.dll
SHA1 82d29b52e35e7938e7ee610c04ea9daaf5e08e90
SHA256 9ef7dbd3da51332a78eff19146d21c82957821e464e8133e9594a07d716d892d
MD5 e61518ae9454a563b8f842286bbdb87b

Il percorso di entrambi i file eseguibili era "C:\". Per la cronaca, i nomi dei file sono originali...

Entrambi i file hanno un carattere dannoso, come abbiamo potuto osservare durante l'analisi dei campioni.

Fase 1 – Riscrivere il Master Boot Record (MBR)

Nella prima fase (Stage1.exe), il malware agisce come un ransomware dopo l'esecuzione, sovrascrivendo il record di avvio principale (MBR). Dopo aver eseguito il malware in una macchina virtuale e aver riavviato la macchina, viene visualizzato il seguente messaggio:

As with most ransomware notes, the usual language is in there: a notification that the device has been encrypted, and that files are being held hostage, together with a payment address to send the demanded amount to, in the requested currency. In questo caso, tuttavia, nel messaggio è stato incluso un ID TOX, cosa rara. TOX è uno strumento di messaggistica istantanea peer-to-peer, le cui comunicazioni sono crittografate end-to-end.

L'analisi delle diverse varianti ha rivelato che la quantità di bitcoin e l’indirizzo rimangono gli stessi, mentre cambiano nella maggior parte delle operazioni RaaS (Ransomware-as-a-Service) con l'uso di mixer di bitcoin per nascondere le transazioni.

Dopo l'analisi, abbiamo osservato che non esisteva alcun codice che eliminasse le copie shadow del volume o bloccasse il processo di avvio in modalità di ripristino, che in genere permette di rimuovere il malware e/o ripristinare le transazioni. Questi passaggi sono presenti nella maggior parte dei campioni di ransomware.

Il frammento di codice seguente mostra che il malware accede al disco fisico in cui risiede l'MBR, dopodiché sovrascrive l’MBR.

Fase 2 – Downloader Discord

The ‘Stage2’ file is using an icon that resembles the icon of the proxy client “Proxifier”. Gli autori hanno tentato di eludere il rilevamento firmando il campione con un certificato e spacciandolo come un file binario di Microsoft appartenente al sistema operativo. I metadati allegati al file sono in russo, come mostrato nella schermata qui sotto. Sia la descrizione che il titolo dell'assembly sono denominati “Проводник” (guida o conduttore in italiano), come si vede nelle righe 24 e 25 della schermata qui sotto.

Quando viene eseguito, Stage2 esegue un comando PowerShell codificato, mostrato qui sotto.

powershell.exe" -enc UwB0AGEAcgB0AC0AUwBsAGUAZQBwACAALQBzACAAMQAwAA==

Una volta che il comando base64 è stato decodificato, appare il vero comando: una sospensione di 10 secondi per ritardare l'esecuzione.

Powershell.exe Start-Sleep -s 10

Il malware scarica quindi il file “Tbopbh.jpg” da un server Content Delivery Network (CDN) Discord.

hxxps://cdn[.]discordapp[.]com/attachments/928503440139771947/930108637681184768/Tbopbh[.]jpg

Nome file Tbobph.jpg
SHA1 b2d863fc444b99c479859ad7f012b840f896172e
SHA256 923eb77b3c9e11d6c56052318c119c1a22d11ab71675e6b95d05eeb73d1accd6
MD5 b3370eb3c5ef6c536195b3bea0120929

Questo file non è un'immagine, ma piuttosto un file PE invertito. Prima di essere chiamati, i dati vengono invertiti nell’ordine. Il file è una DLL DotNet Framework in cui viene osservata la chiamata riflessiva al punto iniziale della fase 3, come illustrato nel frammento di codice seguente.

La funzione statica della fase 3 è denominata “Ylfwdwgmpilzyaph” e risiede in “ClassLibrary1.Main” come spazio di nomi e classe. La funzione non accetta argomenti e non restituisce valori.

Fase 3 – Caricatore riutilizzato

Nome file Frkmlkdkdubkznbkmcf.dll
SHA1 82d29b52e35e7938e7ee610c04ea9daaf5e08e90
SHA256 9ef7dbd3da51332a78eff19146d21c82957821e464e8133e9594a07d716d892d
MD5 e61518ae9454a563b8f842286bbdb87b

Anche questa fase è un file binario DotNet Framework, poiché può essere determinato dalla chiamata riflessiva del passaggio precedente. Il caricatore utilizzato è più comune e generalmente viene utilizzato per distribuire malware commerciale. As described in this recent Twitter thread, the xClient RAT was also distributed via this loader family.

Il caricatore avvia diversi processi mentre è in esecuzione, dopodiché utilizza uno svuotamento del processo per iniettare ed eseguire la fase 4. Innanzitutto, il caricatore verifica di disporre dei privilegi di amministratore. In caso contrario, il processo viene riavviato mentre richiede detti privilegi.

The first process it starts, is a file it drops to “%temp%\Nmddfrqqrbyjeygggda.vbs”. Il contenuto di questo file è piuttosto piccolo, come si può vedere di seguito.

CreateObject("WScript.Shell").Run "powershell Set-MpPreference -ExclusionPath 'C:\'", 0, False

Ciò permette di escludere “C:\” dal monitoraggio di Windows Defender. Come abbiamo detto sopra, le prime due fasi si svolgono in questo particolare luogo. In altre parole, la loro presenza non sarà rilevata dalle analisi di Windows Defender, una volta che l'esclusione è in atto.

The two processes that are started after that, utilise the same tool to execute commands: AdvancedRun by Nir Sofer. La versione utilizzata (1.2.2.6, firmata lunedì 3 agosto 2020, alle 5:45:51 da Nir Sofer), è un file eseguibile legittimo sfruttato da questo malware.

La prima esecuzione di AdvancedRun viene utilizzata per arrestare Windows Defender utilizzando una finestra invisibile.

%temp%\AdvancedRun.exe /EXEFilename "C:\Windows\System32\sc.exe" /WindowState 0 /CommandLine "stop WinDefend" /StartDirectory "" /RunAs 8 /Run

La seconda esecuzione permette di rimuovere in modo permanente i file di Windows Defender dal sistema.

%temp%\AdvancedRun.exe /EXEFilename "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" /WindowState 0 /CommandLine "rmdir 'C:\ProgramData\Microsoft\Windows Defender' -Recurse" /StartDirectory "" /RunAs 8 /Run

Il caricatore usa quindi la funzionalità di interoperabilità di DotNet Framework per eseguire codice non gestito da un contesto gestito. L'elenco delle funzioni riportato di seguito mostra le funzioni non gestite utilizzate, in ordine sparso. I nomi di questi file sono codificati in base64 nel caricatore.

  • ResumeThread
  • Wow64SetThreadContext
  • SetThreadContext
  • GetThreadContext
  • VirtualAllocEx
  • WriteProcessMemory
  • ZwUnmapViewOfSection
  • CreateProcessA
  • CloseHandle
  • ReadProcessMemory

Queste chiamate di funzione sono indicative dell'uso della cosiddetta tecnica di iniezione di processo. Da lì può iniziare la fase 4, analizzata di seguito.

Fase 4 – Il wiper

Nome file -
SHA1 8be3c66aecd425f1f123aadc95830de49d1851b5
SHA256 191ca4833351e2e82cb080a42c4848cfbc4b1f3e97250f2700eff4e97cf72019
MD5 343fcded2aaf874342c557d3d5e5870d

Il wiper è scritto in linguaggio C e non contiene simboli o altre informazioni di debug. Di seguito viene mostrata la funzione principale, con alcune osservazioni.

Il malware esegue l'iterazione su tutte le unità e procede all'eliminazione di tutti i file corrispondenti alle seguenti 191 estensioni.

.HTML, .HTM, .SHTML, .XHTML, .PHTML, .PHP, .JSP, .ASP, .PHPS, .PHP5, .ASPX, .PHP4, .PHP6, .PHP7, .PHP3, .DOC, .DOCX, .XLS, .XLSX, .PPT, PPTX, .PST, .OST, .MSG, .EML, .VSD, .VSDX, .TXT, .CSV, .RTF, .WKS, .WK1, .PDF, .DWG, .ONETOC2, .SNT, .JPEG, .JPG, .DOCB, .DOCM, .DOT, .DOTM, .DOTX, .XLSM, .XLSB, .XLW, .XLT, .XLM, .XLC, .XLTX, .XLTM, .PPTM, .POT, .PPS, .PPSM, .PPSX, .PPAM, .POTM, .EDB, .HWP, .602, .SXI, .STI, .SLDX, .SLDM, .BMP, .PNG, .GIF, .RAW, .CGM, .SLN, .TIF, .TIFF, .NEF, .PSD, .AI, .SVG, .DJVU, .SH, .CLASS, .JAR, .BRD, .SCH, .DCH, .DIP, .PL, .VB, .VBS, .PS1, .BAT, .CMD, .JS, .ASM, .H, .PAS, .CPP, .C, .CS, .SUO, .ASC, .LAY6, .LAY, .MML, .SXM, .OTG, .ODG, .UOP, .STD, .SXD, .OTP, .ODP, .WB2, .SLK, .DIF, .STC, .SXC, .OTS, .ODS, .3DM, .MAX, .3DS, .UOT, .STW, .SXW, .OTT, .ODT, .PEM, .P12, .CSR, .CRT, .KEY, .PFX, .DER, .OGG, .RB, .GO, .JAVA, .INC, .WAR, .PY, .KDBX, .INI, .YML, .PPK, .LOG, .VDI, .VMDK, .VHD, .HDD, .NVRAM, .VMSD, .VMSN, .VMSS, .VMTM, .VMX, .VMXF, .VSWP, .VMTX, .VMEM, .MDF, .IBD, .MYI, .MYD, .FRM, .SAV, .ODB, .DBF, .DB, .MDB, .ACCDB, .SQL, .SQLITEDB, .SQLITE3, .LDF, .SQ3, .ARC, .PAQ, .BZ2, .TBK, .BAK, .TAR, .TGZ, .GZ, .7Z, .RAR, .ZIP, .BACKUP, .ISO, .VCD, .BZ, .CONFIG

Il processo di cancellazione è mostrato nel diagramma seguente.

L'elenco di esclusione dei nomi contiene i seguenti nomi di file: “.”, “..”, “$RECYCLE.BIN” o il valore della variabile di ambiente denominata “HOMEDRIVE”.

I nomi di file troppo lunghi non possono essere gestiti correttamente utilizzando una designazione del disco, motivo per cui è necessario adottare un approccio diverso. Microsoft’s documentation describes all scenarios clearly, including the how and why.

Una volta completata la cancellazione, viene chiamata la seconda funzione all'interno della funzione principale. Questa chiamata garantisce l'esecuzione asincrona del comando dato e la conclusione del proprio processo che porta alla cancellazione del file wiper, diventato inutile in questa fase. Il codice è illustrato di seguito.

Il nome del modulo viene copiato nel comando, che esegue una finestra ridotta a icona in cui viene emessa una richiesta di ping 5 volte a “111.111.111.111”, con 10 millisecondi di attesa tra ogni richiesta. L'output del comando viene inviato a “Nul”, mascherando così l'output. Inoltre, il percorso d’accesso del wiper viene utilizzato come argomento per la sua rimozione forzata e silenziosa dal disco. Questo comando fallirebbe se il programma fosse ancora in esecuzione, motivo per cui il comando ping viene eseguito per primo. La funzione nella schermata qui sotto esegue il comando dato e chiude tutti gli handle.

Infine, il malware chiama ExitWindowsEx utilizzando EWX_SHUTDOWN come flag per garantire che tutti i buffer del file vengano scaricati su disco. Il motivo addotto per l'arresto è correlato alla connettività di rete.

Tecniche MITRE ATT&CK
T1059.001 PowerShell Utilizzo di PowerShell per scaricare il file da Discord ed eseguirlo.
T1485 Data Destruction Cancellazione dell’MBR e/o sovrascrittura dei file per danneggiarli
T1059.005 Visual Basic Stage3 esegue vbs con un'inizializzazione di Wscript.
T1562.004 Disable or Modify System firewall Disattivazione di Windows Defender da parte di Stage3
T1112 Modify Registry Modifica delle impostazioni del registro per disattivare gli strumenti
T1105 Ingress Tool Transfer I file come Stage1.exe e stage2.exe vengono trasferiti in e attraverso la rete.

Consigli per difendersi

Intelligence sulle minacce

MVISION Insights fornisce una visibilità anticipata sugli indicatori di compromissione (IOC) associati a questa campagna, nonché su eventuali rilevamenti nel tuo ambiente.

MVISION Insights ti comunica anche i segni di prevalenza nel tuo ambiente abbinando i rilevamenti dalla soluzione ENS alla campagna e fornendo informazioni di tracciamento del processo per mostrare il flusso di esecuzione.

Verifica che le definizioni di ENS AMCore siano aggiornate e che GTI e Real Protect siano abilitati.

Figura 2: elementi rilevati da ENS per le fasi 1 e 2

MVISION EDR offre una visibilità completa sull'esecuzione dei processi:

Qui puoi vedere il flusso di comunicazione per i carichi utili della seconda fase e lo scopo dell'esecuzione degli script di PowerShell.

Quando creiamo un'indagine a partire dai rilevamenti della minaccia, possiamo vedere l'uso di due strumenti, ad esempio PowerShell e CMD per eseguire comandi del sistema operativo, modificare il sistema ed eseguire altri carichi utili.


1 https://www.helpnetsecurity.com/2017/08/14/pseudo-ransomware/

Ricevi le ultime notizie sulla sicurezza

La sicurezza informatica non ha più segreti per noi. Ma siamo una nuova azienda.
Resta aggiornato sulle nostre novità e sui nostri numerosi progetti.

Inserisci un indirizzo email valido.
Non ti invieremo mai spam. Puoi annullare l'iscrizione in qualunque momento.