Tre modi per rubare denaro da un bancomat: in maniera remota, quasi remota e fisica

4 Apr 2017

Avrete notato che ci piace molto parlare dei furti ai bancomat. No, non li hackeriamo noi, ma quando qualcuno lo fa, interveniamo subito. Alla conferenza SAS 2017, il principale evento di cybersicurezza dell’anno, gli esperti di Kaspersky Lab Sergey Golovanov e Igor Soumenkov hanno trattato tre casi interessanti.

ATMitch – malware comandato a distanza

Il bancomat era vuoto. I forensi della banca non hanno trovato file dannosi, né strane impronte digitali, né alcuna traccia di interazioni fisiche con il dispositivo, né alcun circuito stampato aggiuntivo e nemmeno altri dispositivi che potessero essere usati per prendere il controllo della macchina. Non hanno trovato nemmeno soldi.

Gli impiegati della banca hanno trovato solo un file kl.txt e hanno pensato che “kl” avesse qualcosa a che fare con KL (Kaspersky Lab). Per questo motivo ci hanno contattato ed ecco come abbiamo iniziato a indagare sul caso.

Dovevamo iniziare da qualche parte, quindi i nostri ricercatori hanno iniziato a dare un’occhiata al file in questione. Basandosi sui contenuti del file di registro, sono stati in grado di creare una regola YARA (YARA è uno strumento di ricerca malware); fondamentalmente, hanno effettuato una ricerca negli archivi pubblici di malware. L’hanno usata per trovare il modello originale di malware e dopo un giorno la ricerca ha dato qualche risultato: un DLL chiamato tv.dll che fino ad allora era stato rilevato un paio di volte, una volta in Russia e una in Kazakistan. Tutto questo è bastato per sciogliere la trama.

Un’indagine approfondita del DLL ha permesso ai nostri ricercatori di analizzare l’attacco con l’ingegneria inversa, di capire realmente come era stato eseguito e anche di riprodurre l’attacco su un bancomat di prova con denaro falso nel nostro laboratorio di prova. Ecco quello che hanno scoperto.

ATMitch in azione

L’attacco è avvenuto perché i criminali hanno sfruttato una vulnerabilità molto conosciuta ma non risolta e hanno avuto accesso ai server della banca presa di mira. (Non vi avevamo detto che aggiornare il software è un must? Questo è un buon esempio).

I criminali hanno utilizzato un codice open-source e strumenti disponibili pubblicamente per infettare i computer della banca, ma il malware che hanno creato si nascondeva nella memoria dei computer, non nei loro hard drive. Non c’erano file, quindi l’attacco era molto difficile da localizzare (era fondamentalmente invisibile per le soluzioni di sicurezza). Ancora peggio, quasi tutte le tracce del malware scomparivano al riavvio del sistema.

I criminali hanno poi stabilito una connessione con il loro server command-and-control e questo ha permesso loro di installare il software in maniera remota sui bancomat.

Il malware in questione, ATMitch, è stato installato ed eseguito sul bancomat direttamente dalla banca utilizzando gli strumenti di controllo remoto. Sembrava essere un aggiornamento legittimo, quindi nessuna soluzione di sicurezza della banca ha dato l’allarme. Dopo tutto questo, il malware ha iniziato a cercare un file chiamato command.txt. Questo file contiene i comandi di controllo del bancomat. Ad esempio, “O” sta per “aprire il distributore di contanti”.

Ecco che inizia la parte interessante. Il malware attraverso comando chiede la quantità di denaro presente nel bancomat, continuando poi con un altro comando che distribuisce un certo numero di banconote. Nel momento in cui si inviava il comando, un ricettatore era già arrivato sul luogo per prendere i soldi e andare via.

I criminali hanno provato a non lasciare alcuna traccia, quindi sull’hard disk dei bancomat non sono stati trovati file eseguibili. Dopo che il denaro era stato già emesso, ATMitch scriveva tutte le informazioni riguardanti l’operazione nel file di registro e cancellava il file command.txt. Una nota importante: ATMitch potrebbe essere installato nella maggior parte dei bancomat esistenti (l’unico requisito è che il bancomat supporti una libreria XFS ed è quello che la maggior parte dei bancomat fa).

Potete trovare ulteriori informazioni sul malware ATMitch sul sito Securelist.

Bl@ckb0x_m@g1k: un trucchetto semplice e intelligente

La prossima storia, cominciata anch’essa con una richiesta da parte di una banca, è più breve. Ancora una volta i registri dei bancomat erano vuoti. L’hard disk era intatto e l’aggressore aveva coperto le telecamere di sicurezza, per cui non c’era alcun filmato dell’accaduto.

Abbiamo chiesto alla banca di portare il bancomat al nostro ufficio. L’abbiamo smontato e abbiamo fatto una scoperta impressionante: un adattatore Bluetooth connesso alla porta USB del bancomat. E sull’hard disk c’erano driver per una tastiera Bluetooth.

Ricostruire il furto da tutto questo è stato facile. Qualcuno aveva installato un adattatore Bluetooth nel bancomat e ha aspettato tre mesi affinché i registri venissero cancellati. Successivamente, i criminali sono tornati con una tastiera Bluetooth, hanno coperto le telecamere di sicurezza, hanno utilizzato la tastiera Bluetooth per riavviare il bancomat in modalità servizio e infine, hanno svuotato il distributore. Ecco tutto.

Il trapano (un trapano vero)

Alcune soluzioni, come i malware comandati a distanza e le tastiere Bluetooth, sembrano molto eleganti. Il prossimo trucchetto non lo è affatto.

La storia inizia come tutte le altre; con una banca che ci contatta per indagare su un altro furto di bancomat. Questa volta, i forensi hanno trovato una chiara prova dell’intervento fisico dei ladri; un buco dal diametro di circa 4 cm effettuato con il trapano accanto alla tastiera in cui si digita il PIN. Nient’altro. I bancomat sembrano robusti, ma hanno anche parti di plastica. E quelle parti sono facili da trapanare.

In poco tempo, si sono registrati altri casi come questo in Russia e in Europa. Quando la polizia ha catturato un sospettato con un portatile e alcuni cavi, tutto ha iniziato ad essere più chiaro.

Come abbiamo già detto, abbiamo un bancomat nel nostro laboratorio, quindi l’abbiamo smontato per capire a cosa cercava di avere accesso il criminale attraverso il buco. Abbiamo trovato un dispositivo che collegava 10 piedini, collegati a un bus che interconnetteva tutti i componenti del bancomat (dal computer interno alla cassa che distribuisce i contanti).

Abbiamo trovato anche una crittografia molto debole che è stata decifrata in poco tempo.

Qualsiasi parte del bancomat poteva controllare tutte le altri parti, non era presente alcuna autenticazione tra le parti (quindi ognuna di queste poteva essere sostituita senza che ci si accorgesse di nulla) e i comandi utilizzati per controllarle erano abbastanza semplici da capire. Vi sembra sicuro?

Trovare un circuito stampato che potesse controllare il bancomat dopo che veniva collegato al bus seriale ci è costato circa 15 dollari e un po’ di tempo. Utilizzandolo, possiamo fare in modo che il nostro bancomat di prova distribuisca denaro (falso). Sembra che i criminali abbiano usato lo stesso trucchetto nei bancomat con denaro vero, ma hanno avuto bisogno di un portatile per farlo.

Abbiamo avvisato la banca delle nostre scoperte, ma come evidenzia Soumenkov, il problema è che i bancomat non possono essere aggiornati in maniera remota. Risolvere le vulnerabilità richiede un aggiornamento dell’hardware e di conseguenza c’è bisogno che un tecnico controlli il bancomat (o molti bancomat).

Quindi?

Insomma, se non siete un impiegato della banca, nessuna delle minacce di cui abbiamo parlato vi riguarda. Sono problemi della banca, non vostri. Ad ogni modo, se lavorate in banca e avete una certa influenza sulla protezione dei bancomat, possiamo aiutarvi a smascherare il malware ATMitch, che può essere rilevato da tutte le soluzioni di Kaspersky Lab. Ma non abbiamo un protocollo antitrapano. Sta a voi e alle telecamere di sicurezza rilevarlo.