Martedì 05 Gennaio 2016
Ransom32, il primo JavaScript ransomware 'as a service'

Segnalata la prima variante ransomware sviluppata in linguaggio JavaScript. Si tratta di un "Ransomware as a Service" (RaaS), sulla scia del successo dei modelli dell'as-a-Service economy, applicati ormai anche in ambito criminale.

Ransom32 consente ai suoi operatori di distribuire il malware in modo rapido e semplice.
È infatti facilmente utilizzabile da chiunque, mediante un server accessibile esclusivamente attraverso la rete Tor, al fine di condurre campagne personalizzate.
L'unica informazione da fornire per registrare una nuova campagna è l'indirizzo Bitcoin, che sarà utilizzato in seguito dalle vittime, come indirizzo al quale versare il riscatto.

Gli aspiranti criminali informatici, dopo aver inserito l'indirizzo Bitcoin, hanno accesso ad un semplice pannello di amministrazione, attraverso il quale possono configurare il malware e visualizzare le statistiche della campagna avviata, tenendo sotto controllo dati come il numero di utenti infetti e di vittime che hanno pagato il riscatto. E' altresì possibile configurare l'agente malevolo che verrà installato, modificando l'importo (in Bitcoin) richiesto per il riscatto o il messaggio di richiesta riscatto che verrà visualizzato dalle vittime.

Ransom32, il primo JavaScript ransomware 'as a service'

Dopo aver premuto il bottone "Download client.scr" il malware verrà generato secondo le informazioni fornite dal novello criminale e successivamente inizierà il download degli oltre 22MB che costituiscono la dimensione del malware. Questa caratteristica ha catturato le attenzioni degli esperti, in quanto risulta evidente come Ransom32 sia molto differente dagli altri ransomware, che tipicamente hanno una dimensione inferiore ad 1MB e usano le dimensioni ridotte come strumento per pubblicizzare le loro campagne nelle comunità hacker underground.

L'analisi del file scaricato, ha evidenziato come Ransom32 sia costituito da un archivio WinRAR autoestraente; il malware utilizza il linguaggio di scripting implementato in WinRAR per decomprimere automaticamente i suoi componenti in una directory temporanea ed eseguire il file "chrome.exe" contenuto nell'archivio.
Nel dettaglio l'archivio contiene i seguenti file:

  • "chrome" → contiene una copia dell'accordo della licenza GPL
  • "chrome.exe" → è l'applicazione che contiene il codice del malware assieme al framework NW.js necessario per eseguirlo
  • "ffmpegsumo.dll", "nw.pak", "icudtl.dat" and "locales" → contengono informazioni necessaria al framework NW.js per funzionare adeguatamente
  • "rundll32.exe" → è la copia rinominata del client Tor
  • "s.exe" → è la copia rinominata di Optimum X Shortcut, uno strumento per creare e gestire collegamenti nel Desktop e nel menu avvio
  • "g" → contiene la configurazione del malware, come impostata inizialmente attraverso il pannello di gestione
  • "msgbox.vbs" → è uno script in VBS che visualizza un messaggio popup; è usato per visualizzare la richiesta di riscatto configurata inizialmente
  • "u.vbs" → è uno script che elenca e cancella tutti i file e le cartelle contenute in un dato percorso.

Di particolare interesse risulta il contenuto del file "chrome.ex" il quale, mascherandosi come l'eseguibile del browser web Chrome di Google, è in realtà è un'applicazione che utilizza il framework NW.js.

NW.js, precedentemente noto come Node-WebKit, è un framework che permette di sviluppare applicazioni desktop per Windows, Linux e Mac OS X utilizzando JavaScript.
NW.js consente agli sviluppatori di scrivere applicazioni JavaScript che, a differenza del normale codice Javascript, non vengono eseguite esclusivamente in una sandbox del browser, ma possono interagire con il sistema operativo sottostante, consentendo quindi di utilizzare JavaScript per eseguire praticamente qualsiasi operazione che sia possibile eseguire con i tradizionali linguaggi di programmazione (C++, Delphi…).
Il vantaggio è di permettere agli sviluppatori di scrivere applicazioni che possano interagire con diversi sistemi operativi; un'applicazione NW.js può quindi essere scritta una sola volta ed essere immediatamente eseguibile su Windows, Linux ed Os X. Questo significa anche che questo malware potrebbe infettare anche sistemi Linux e Os X. Fino a questo momento tuttavia sono stati individuati solo campioni Ransom32 per i sistemi Windows.

Un altro grande vantaggio per l'autore del  malware Ransom32 è che non è facilmente rilevabile dagli antivirus, poiché è pacchettizzato all'interno delle componenti legittime di NW.js. Uno dei campioni Ransom32 analizzati viene attualmente rilevato solo da una manciata di antivirus (e tra questo nessuno dei top brand utilizzati comunemente in azienda), nonostante il fatto che sia stato rilevato già da un paio di settimane.

Una volta scaricato ed eseguito in un computer, il malware esegue i seguenti passi:

  • Estrae i file contenuti nell'archivio WinRAR in una directory temporanea
  • Copia se stesso nella directory %AppData%\Chrome Browser
  • Utilizza il file s.exe contenuto nell'archivio per creare una scorciatoia di nome ChromeService nella cartella dei file eseguiti automaticamente all'avvio del sistema, in modo da venir eseguito ad ogni avvio
  • Avvia il client Tor (presente all'interno dell'archivio) per stabilire una connessione verso il proprio command and control server (C2 server)
  • Dopo una connessione con successo al C2 server negozia l'indirizzo BitCoin verso cui pagare il riscatto e scambia la chiave che verrà utilizzata per criptare i file.
  • Visualizza la richiesta di riscatto e inizia a criptare i file.

Ransom32, il primo JavaScript ransomware 'as a service'

 Il malware cerca, al fine di criptarli, file con le seguenti estensioni:

*.jpg, *.jpeg, *.raw, *.tif, *.gif, *.png, *.bmp, *.3dm, *.max, *.accdb, *.db, *.dbf, *.mdb, *.pdb, *.sql, *.*sav*, *.*spv*, *.*grle*, *.*mlx*, *.*sv5*, *.*game*, *.*slot*, *.dwg, *.dxf, *.c, *.cpp, *.cs, *.h, *.php, *.asp, *.rb, *.java, *.jar, *.class, *.aaf, *.aep, *.aepx, *.plb, *.prel, *.prproj, *.aet, *.ppj, *.psd, *.indd, *.indl, *.indt, *.indb, *.inx, *.idml, *.pmd, *.xqx, *.xqx, *.ai, *.eps, *.ps, *.svg, *.swf, *.fla, *.as3, *.as, *.txt, *.doc, *.dot, *.docx, *.docm, *.dotx, *.dotm, *.docb, *.rtf, *.wpd, *.wps, *.msg, *.pdf, *.xls, *.xlt, *.xlm, *.xlsx, *.xlsm, *.xltx, *.xltm, *.xlsb, *.xla, *.xlam, *.xll, *.xlw, *.ppt, *.pot, *.pps, *.pptx, *.pptm, *.potx, *.potm, *.ppam, *.ppsx, *.ppsm, *.sldx, *.sldm, *.wav, *.mp3, *.aif, *.iff, *.m3u, *.m4u, *.mid, *.mpa, *.wma, *.ra, *.avi, *.mov, *.mp4, *.3gp, *.mpeg, *.3g2, *.asf, *.asx, *.flv, *.mpg, *.wmv, *.vob, *.m3u8, *.csv, *.efx, *.sdf, *.vcf, *.xml, *.ses, *.dat

A titolo di esempio immagini, video, file audio, documenti, database, codice sorgente.
Il malware non tenta di criptare file presenti all'interno delle seguenti directory di sistema

  • windows\
  • winnt\
  • programdata\
  • boot\
  • temp\
  • tmp\
  • $recycle.bin\

al fine di evitare di danneggiare il sistema operativo.

I file vengono criptati utilizzando AES-128 e generando una nuova chiave per ciascun file; la chiave è criptata usando l'algoritmo RSA e la chiave pubblica ottenuta dal C2 server durante la prima comunicazione.

I criminali forniscono alle vittime, a titolo dimostrativo, la possibilità di decifrare un file gratuitamente.
Il meccanismo di cifratura del ransomware questa volta sembra non essere difettoso, come era invece avvenuto per Linux.Encoder.
Per recuperare i file criptati, le vittime devono pagare un riscatto in Bitcoin, il cui importo aumenta  se il riscatto non viene pagato entro quattro giorni. La richiesta di riscatto informa inoltre gli utenti che le chiavi necessarie per la decodifica verranno distrutte definitivamente dopo una settimana.

Come si diffonde Ransom32?

Il malware si diffonde attraverso messaggi di posta elettronica camuffati da notifiche di consegna, fatture non pagate, e così via. È dunque di estrema importanza prestare attenzione ai contenuti delle email ricevute, evitando di aprire o cliccare su messaggi non attesi o provenienti da fonti sconosciute.

Come proteggersi?

I consigli per proteggersi dalle minacce ransomware sono sempre gli stessi: risulta di particolare importanza, oltre a non aprire allegati di posta elettronica provenienti da fonti sconosciute, seguire un’efficiente strategia di backup e utilizzare soluzioni antivirus aggiornate.

 

 

 

 

 

Vedi anche: