Gli smartphone NFC hanno consentito ai ricercatori di hackerare sistemi di punti vendita e bancomat

Gli smartphone con NFC abilitato hanno consentito ai ricercatori di hackerare sistemi di punti vendita e bancomat, ottenendo l'esecuzione di codici personalizzati su alcuni di essi.

Nonostante siano uno degli unici modi per prelevare denaro dal tuo conto bancario mentre sei in movimento, gli sportelli bancomat hanno notoriamente avuto una serie di problemi di sicurezza nel corso degli anni. Anche adesso, non c'è molto che impedisca a un hacker di posizionare uno skimmer su un bancomat, poiché la maggior parte delle persone non si accorgerà mai della sua presenza. Naturalmente nel corso degli anni si sono verificati anche altri attacchi più complessi di così, ma in generale dovresti sempre fare attenzione quando usi un bancomat. Ora c'è un nuovo modo per hackerare un bancomat e tutto ciò che serve è uno smartphone con NFC.

COME Cablato rapporti, Josep Rodríguez è un ricercatore e consulente presso IOActive, una società di sicurezza con sede a Seattle, Washington, e ha trascorso l'ultimo anno a individuare vulnerabilità nei lettori NFC utilizzati negli sportelli bancomat e nei sistemi di punti vendita. Molti bancomat in tutto il mondo ti consentono di toccare la tua carta di debito o di credito per poi inserire il PIN e prelevare contanti, invece di richiederti di inserirlo nel bancomat stesso. Sebbene sia più conveniente, risolve anche il problema della presenza di uno skimmer fisico sul lettore di carte. Anche i pagamenti senza contatto sui sistemi di punti vendita sono ormai onnipresenti.

Fonte: Google

Hacking dei lettori NFC

Rodriquez ha creato un'app Android che dà al suo telefono il potere di imitare le comunicazioni delle carte di credito e sfruttare i difetti nel firmware dei sistemi NFC. Passando il telefono sopra il lettore NFC, può concatenare più exploit per mandare in crash i dispositivi dei punti vendita e hackerarli per raccogliere e trasmettere i dati delle carte, modificare il valore delle transazioni e persino bloccare i dispositivi con un messaggio ransomware.

Inoltre, Rodriguez afferma di poter persino forzare almeno una marca di bancomat senza nome a erogare contanti, sebbene funzioni solo in combinazione con i bug che ha trovato nel software del bancomat. Questo è chiamato "jackpot", per il quale sono molti i modi in cui i criminali hanno tentato nel corso degli anni di accedere ad un bancomat per rubare contanti. Ha rifiutato di specificare il marchio o le modalità a causa degli accordi di non divulgazione con i venditori di bancomat.

"Puoi modificare il firmware e cambiare il prezzo a un dollaro, ad esempio, anche quando lo schermo mostra che stai pagando 50 dollari. Puoi rendere il dispositivo inutilizzabile o installare una sorta di ransomware. Qui ci sono molte possibilità" dice Rodriguez degli attacchi ai punti vendita che ha scoperto. "Se concatenate l'attacco e inviate anche un carico speciale al computer di un bancomat, potete fare jackpot al bancomat, come se fosse un prelievo, semplicemente toccando il telefono."

Fonte: Josep Rodríguez

I fornitori interessati includono ID Tech, Ingenico, Verifone, Crane Payment Innovations, BBPOS, Nexgo e un fornitore di bancomat senza nome e tutti sono stati avvisati tra 7 mesi e un anno fa. Tuttavia, la maggior parte dei sistemi punto vendita non riceve aggiornamenti software o lo fa raramente, ed è probabile che molti di essi richiedano l'accesso fisico per farlo. Pertanto, è probabile che molti di loro rimangano vulnerabili. "Riparare fisicamente così tante centinaia di migliaia di bancomat è una cosa che richiederebbe molto tempo," dice Rodríguez.

Per dimostrare le vulnerabilità, Rodriguez ha condiviso un video con Cablato mostrandolo mentre agita uno smartphone sul lettore NFC di un bancomat a Madrid, facendo sì che la macchina visualizzi un messaggio di errore. Non ha mostrato l'attacco con jackpot, poiché avrebbe potuto testarlo legalmente solo su macchine ottenute come parte della consulenza di sicurezza di IOActive, il che avrebbe violato il loro accordo di non divulgazione. chiese Rodríguez Cablato di non pubblicare il video per paura di responsabilità legali.

I risultati sono "eccellente ricerca sulla vulnerabilità del software in esecuzione su dispositivi integrati," dice Karsten Nohl, fondatore della società di sicurezza SRLabs e hacker di firmware, che ha esaminato il lavoro di Rodriguez. Nohl ha anche affermato che ci sono alcuni inconvenienti per i ladri del mondo reale, incluso l'NFC violato Il lettore consentirebbe a un utente malintenzionato solo di rubare i dati della carta di credito con banda magnetica, non il PIN o i dati da EMV patatine fritte. L’attacco al jackpot ATM richiede anche una vulnerabilità nel firmware ATM, che costituisce una grande barriera.

Nonostante ciò, ottenere l'accesso per eseguire codice su queste macchine è di per sé un grave difetto di sicurezza, ed è spesso il primo punto di ingresso in qualsiasi sistema, anche se non è altro che un accesso a livello di utente. Una volta superato il livello di sicurezza esterno, spesso accade che i sistemi software interni non siano altrettanto sicuri.

Il CEO e capo scienziato di Red Balloon, Ang Cui, è rimasto colpito dai risultati. "Penso che sia molto plausibile che una volta eseguita l'esecuzione del codice su uno qualsiasi di questi dispositivi, dovresti essere in grado di ottenere direttamente al controller principale, perché quella cosa è piena di vulnerabilità che non sono state risolte per oltre un decennio," Cui dice. "Da li," Aggiunge, "puoi controllare assolutamente il dispenser delle cassette" che trattiene e rilascia denaro agli utenti.

Esecuzione di codice personalizzato

La capacità di eseguire codice personalizzato su qualsiasi macchina rappresenta una delle principali vulnerabilità e offre a un utente malintenzionato la possibilità di sondare i sistemi sottostanti in una macchina per trovare ulteriori vulnerabilità. Il Nintendo 3DS ne è un ottimo esempio: un gioco chiamato Ninja cubico è stato notoriamente uno dei primi modi per sfruttare il 3DS ed eseguire homebrew. L'exploit, soprannominato "Ninjhax", ha causato un buffer overflow che ha innescato l'esecuzione di codice personalizzato. Mentre il gioco stesso aveva accesso al sistema solo a livello di utente, Ninjhax divenne la base di ulteriori exploit per l'esecuzione di firmware personalizzato sul 3DS.

Fonte: Cloudflare

Per semplificare: un buffer overflow viene attivato quando il volume dei dati inviati supera lo spazio di archiviazione allocato per tali dati, il che significa che i dati in eccesso vengono quindi archiviati in regioni di memoria adiacenti. Se una regione di memoria adiacente può eseguire codice, un utente malintenzionato può abusarne per riempire il buffer dati spazzatura, quindi aggiungi il codice eseguibile alla fine, dove verrà letto in adiacente memoria. Non tutti gli attacchi di buffer overflow possono eseguire codice e molti semplicemente bloccheranno semplicemente un programma o causeranno comportamenti imprevisti. Ad esempio, se un campo può accettare solo 8 byte di dati e un utente malintenzionato forza l'input di 10 byte, i 2 byte aggiuntivi alla fine traboccherebbero in un'altra regione della memoria.

Per saperne di più: "PSA: se il tuo PC esegue Linux, dovresti aggiornare Sudo adesso"

Rodriguez osserva che sono possibili attacchi buffer overflow su lettori NFC e dispositivi POS, poiché ne ha acquistati molti da eBay nell'ultimo anno. Ha sottolineato che molti di loro soffrivano dello stesso difetto di sicurezza: non convalidavano la dimensione dei dati inviati tramite NFC da una carta di credito. Realizzando un'app che inviava dati centinaia di volte più grandi di quanto il lettore si aspetta, era possibile attivare un buffer overflow.

Quando Cablato ha contattato le società interessate per un commento, ID Tech, BBPOS e Nexgo non hanno risposto alle richieste di commento. Anche l’ATM Industry Association ha rifiutato di commentare. Ingenico ha risposto in una dichiarazione che le mitigazioni della sicurezza significavano che l'overflow del buffer di Rodriguez poteva solo mandare in crash i dispositivi, non ottenere l'esecuzione di codice personalizzato. Rodriguez dubita che avrebbero effettivamente impedito l'esecuzione del codice, ma non ha creato una prova di concetto per dimostrarlo. Ingenico ha affermato che "considerando l'inconveniente e l'impatto per i nostri clienti", avrebbe comunque risolto il problema.

Verifone ha affermato di aver individuato e corretto le vulnerabilità dei punti vendita nel 2018 prima che venissero segnalate, anche se questo dimostra solo come questi dispositivi non vengano mai aggiornati. Rodriguez afferma di aver testato i suoi attacchi NFC su un dispositivo Verifone in un ristorante l'anno scorso, scoprendo che rimaneva ancora vulnerabile.

"Queste vulnerabilità sono presenti nel firmware da anni e utilizziamo questi dispositivi quotidianamente per gestire le nostre carte di credito e i nostri soldi," dice Rodríguez. "Hanno bisogno di essere messi in sicurezza." Rodriguez prevede di condividere i dettagli tecnici di queste vulnerabilità in un webinar nelle prossime settimane.