Zeppelin – Ransomware che attacca aziende nel campo Medico e ICT

12/12/2019

ransomware Zeppelin

I ricercatori di BlackBerry Cylance hanno pubblicato una ricerca riguardante un nuovo ransomware denominato Zeppelin.

Zeppelin è una variante del più noto Vega o VegaLocker o Buran, osservato all’inizio del 2019 ed è stato distribuito come malware finanziario. Il ransomware è stato veicolato attraverso campagne di spam, downloader, strumenti di cracking e falsi aggiornamenti.

Il ransomware è stato scritto in Delphi ed appartiene alla categoria di Ransomware-as-a-Service (RaaS). I file binari sono firmati con certificato digitale.

Modalità di infezione

Zeppelin sembra essere altamente configurabile e può essere distribuito come EXE, DLL o veicolato tramite un loader PowerShell. Ci sono ragioni per ritenere che almeno alcuni degli attacchi siano stati condotti attraverso MSSP, che avrebbero similitudini con un’altra recente campagna altamente mirata che utilizzava un ransomware chiamato Sodinokibi.

Tutte le stringhe sensibili nei binari Zeppelin sono offuscate con una diversa chiave RC4 a 32 byte, anteposta a ciascuna stringa crittografata.

L’offuscamento utilizza chiavi RC4 diverse per eludere il rilevamento da parte dei vari software antivirus e complicare l’analisi. I ricercatori hanno isolato anche sample del ransomware con tre strati di offuscamento

Contestualmente alla creazione della chiave, Zeppelin può essere configurato in vari modi specificando le opzioni come da esempio seguente. Tutti i dati sono poi salvati nella sezione “.itext” del file binario di Zeppelin.

Nella stessa sezione vengono anche conservati altri parametri di configurazione, utilizzati poi successivamente per l’esecuzione vera e propria del ransomware.

L’esecuzione può avvenire utilizzando vari parametri e si realizza in varie fasi:

  • Viene fatto un check sul country code della macchina compromessa, accertandosi che non appartenga a queste nazioni:
    • Federazione Russa
    • Ucraina
    • Bielorussia
    • Kazakhstan
  • A seconda delle opzioni parametri specificati verifica la lingua di default o il country calling code.
  • Viene creato un file con estensione “.zeppelin” nella Temp dir.
  • Se specificato il comando “Startup” viene creata una nuova directory avente un nome casuale scelto tra i processi attivi nella posizione %APPDATA%\Roaming\Microsoft\Windows.
  • Il nome scelto è cifrato in Base64 applicando una chiave di cifratura random a 32 byte e salvata, come chiave di registro assicurandosi che venga eseguita.
  • Viene fatta una scansione dei file escludendo quelli nelle share di rete e quelli di sistema (.bat;.cmd;.com;.cpl;.dll;.msc;.msp;.pif;.scr;.sys;.log;.lnk;.zeppelin;boot.ini;bootfont.bin;bootsect.bak;desktop.ini;iconcache.db;ntdetect.com;ntldr;ntuser.dat
    ;ntuser.dat.log;ntuser.ini;thumbs.db)
  • I file vengono cifrati utilizzando AES-256 in CBC mode e applicando una chiave simmetrica generata in maniera randomica.
  • Cifra la chiave AES con la chiave pubblica RSA della vittima e la “offusca” applicando la chiave RC4 a 32 byte.
  • Aggiunge una stringa all’inizio e una serie di parametri alla fine del file per identificare in maniera univoca il file e l’host compromesso.
  • Come di consueto viene rilasciato un file con le istruzioni per il “ransom”

Conclusioni

Zeppelin risulta essere molto sofisticato e, sebbene al momento non sembra abbia coinvolto utenti italiani, come di consueto il CERT-PA raccomanda di tenere aggiornati i propri dispositivi e di attenersi alle linee guida pubblicate sul sito del CERT-PA.

Indicatori di Compromissione

  • IoC (.txt) – Hash, Domini
  • Hashr (.txt) – SHA256