Gli analisti dei laboratori Kaspersky hanno studiato possibili correlazioni tra il wiper NotPetya, anche noto come ExPetr, e il gruppo BlackEnergy, fautore di KillDisk, malware dall’obiettivo analogo impiegato per rendere inutilizzabili molti sistemi industriali.
La ricerca è stata ripresa anche da Eset che ne ha approfondito il legame con Telebots.
NotPetya è un wiper, questo ormai è chiaro; avevamo già approfondito questo aspetto sottolineando come la scrittura dell’engine di criptazione sull’MBR fosse irreversibile. Ma c’è dell’altro: la Master File Table (tabella che indicizza ogni file in NTFS) viene crittata ed è resa irrecuperabile a meno di backup.
L’identificativo dell’infezione, inoltre, è generato in modo assolutamente casuale e non contiene dati che – nemmeno volendo – possano essere usati per il recupero delle informazioni memorizzate sul disco; secondo Eset, inoltre, le chiavi di cifratura conterrebbero caratteri non riproducibili dall’utente pregiudicando la possibilità di inserirli all’interno della schermata del ransomware.
La principale somiglianza individuata tra NotPetya e KillDisk è costituita dalla lista delle estensioni attaccate , che sebbene in NotPetya sia più ampia, include le stesse estensioni di KillDisk ed è formattata nel codice allo stesso modo (le estensioni sono concatenate e separate da punti).
Il codice per il riconoscimento dell’estensione, tuttavia, è leggermente differente: l’implementazione in NotPetya risulta essere più generica.
Il confronto del risultato di alcuni algoritmi di signature utilizzati sulle parti di codice per l’esplorazione ricorsiva del file system ha restituito risultati positivi fornendo, anche in questo caso, evidenze sulla similarità dei due malware.
Nell’analisi del codice dei due sample, inoltre, sono state riconosciute alcune stringhe simili:
– shutdown.exe /r /f
– ComSpec
– InitiateSystemShutdown
Di seguito la regola YARA utilizzata:
strings:
//shutdown.exe /r /f
$bytes00 = { 73 00 68 00 75 00 74 00 64 00 6f 00 77 00 6e 00 2e 00 65 00 78 00 65 00 }
//ComSpec
$bytes01 = { 43 00 6f 00 6d 00 53 00 70 00 65 00 63 00 }
//InitiateSystemShutdown
$bytes02 = { 49 6e 69 74 69 61 74 65 53 79 73 74 65 6d 53 68 75 74 64 6f 77 6e 45 78 57}
//68A4430110 push 0100143A4;'ntdll.dll'
//FF151CD10010 call GetModuleHandleA
//3BC7 cmp eax,edi
//7420 jz...
$bytes03 = { 68 ?? ?? ?1 ?0 ff 15 ?? ?? ?? ?0 3b c7 74 ?? }
// "/c"
$bytes04 = { 2f 00 63 00 }
//wcscmp(...
$hex_string = { b9 ?? ?? ?1 ?0 8d 44 24 ?c 66 8b 10 66 3b 11 75 1e 66
85 d2 74 15 66 8b 50 02 66 3b 51 02 75 0f 83 c0 04 83 c1 04 66 85 d2 75
de 33 c0 eb 05 1b c0 83 d8 ff 85 c0 0f 84 ?? 0? 00 00 b9 ?? ?? ?1 ?0 8d
44 24 ?c 66 8b 10 66 3b 11 75 1e 66 85 d2 74 15 66 8b 50 02 66 3b 51 02
75 0f 83 c0 04 83 c1 04 66 85 d2 75 de 33 c0 eb 05 1b c0 83 d8 ff 85 c0
0f 84 ?? 0? 00 00 }
condition:
((uint16(0) == 0x5A4D)) and (filesize < 5000000) and
(all of them)
}
Ovviamente, tutto ciò non costituisce una prova inequivocabile dell’esistenza di un collegamento tra i due malware, ma è curioso come essi condividano alcune scelte di design.
Nel frattempo, il gruppo (o la persona) che si cela dietro al malware ha effettuato alcune transazioni di BitCoin per il valore di 3,96298755 BTC (circa 10 mila dollari) dal portafogli 1Mz7153HMuxXTuR2R1t78mGSdzaAtNbBWX verso l’account 1Ftixp78FjTWFi3ssJjBw5NqKf5ZPQjXBb ; inoltre sono stati scritti due post su PasteBin e DeepPost nei quali viene offerta la chiave privata di NotPetya alla “modica” cifra di 100 BTC.
Sul Web stanno emergendo alcuni tool per il controllo della presenza delle vulnerabilità sfruttate da NotPetya e WannaCry: uno di questi è EternalBlues , che nasce come vulnerability scanner per le problematiche di sicurezza segnalate nell’ambito di Vault 7.
Questo strumento, di cui non è noto il codice sorgente, ha come obiettivo quello di fornire un metodo immediato e alla portata di tutti per verificare lo stato di sicurezza del sistema nei confronti degli exploit firmati NSA.
Dopo quattro giorni dal rilascio, nella giornata del 2 Luglio, è stato erogato un aggiornamento per correggere risultati non attendibili e sono stati forniti dettagli sul funzionamento.
EternalBlues esegue una scansione della rete alla ricerca di sistemi vulnerabili, inviando 4 messaggi SMB appositamente forgiati:
– SMB Negotiate Protocol
– SMB Session Setup AndX Request
– SMB Tree Connect (to IPC$)
– SMB Peek Named Pipe
Se la risposta a questa sequenza di messaggi è STATUS_INSUFF_SERVER_RESOURCES , l’host è vulnerabile; nel caso in cui il messaggio ricevuto sia invece STATUS_ACCESS_DENIED oppure STATUS_INVALID_HANDLE , l’host ha già la patch MS17-010 e non presenta le problematiche di sicurezza sfruttate dai derivati di EternalBlue.
Le raccomandazioni per i lettori continuano ad essere le stesse: disabilitare SMBv1, tenere il sistema costantemente aggiornato e, soprattutto, effettuare backup periodici dei propri file e documenti.
Patrizio Tufarolo