Azzerata la sicurezza delle carte di credito con chip
14 Febbraio 2010Alcuni ricercatori inglesi con a capo Ross Anderson, professore di crittografia all’università di Cambridge, concentratisi sulle moderne carte di credito (quelle col Chip) emesse da sei importanti istituti, sono riusciti ad ingannare il lettore di carte di credito (POS) convincendolo ad accettare una transazione anche con il PIN errato o addirittura assente.
Hanno quindi scoperto una ulteriore e gravissima falla strutturale che potrebbe compromettere gravemente la sicurezza di questi moderni sistemi di pagamento.
Questo tipo di attacco, chiamato “man-in-the-middle” che, secondo gli autori, ha richiesto una minima abilità di ingegnerizzazione, una programmazione abbastanza elementare ed una componentistica di basso costo, è facilmente acquistabile e potrebbe essere fatto da chiunque sia esperto in programmazione ed elettronica.
Anderson e colleghi si sono avvalsi di una falla strutturale del processo di autenticazione (in standard EMV), che prevede ed impone la verifica del codice PIN contenuto nel microchip della scheda, con la sua digitazione (da parte dell’utente) del codice esatto. Il problema risiede nel fatto che, una volta verificato il PIN, il chip invierebbe al terminale sempre il medesimo codice di risposta (0x9000) il quale conferma l’avvenuta verifica e permette il completamento della transizione.
Ora avrete capito che se riusciamo ad “iniettare” questo codice di conferma nel giusto momento potremmo ingannare il lettore POS ed effettuare qualunque prelievo senza alcun bisogno del codice PIN.
Infatti i ricercatori hanno usato un laptop, una scheda autentica (inserita nel lettore integrato), un’altra fasulla (da inserire nel terminale POS, ATM o quant’altro) ed una scheda FPGA per l’interfacciamento della smart card fasulla con il PC; hanno quindi implementato uno script in Python tale che, una volta inserita la scheda fasulla nel lettore connesso al PC, si è preso in carica la transazione sopprimendo la richiesta di verifica del PIN e trasmettendo al terminale POS il codice 0x9000 completando così l’autenticazione.
Per gli esperti della Cambridge University un simile trucco è replicabile con dispositivi poco ingombranti, molto economici e sufficientemente leggeri da portarseli in uno zaino. La scoperta rappresenta un autentico “game over” per l’intero sistema di sicurezza messo a guardia del commercio elettronico. Tutte le nuove carte di pagamento con chip infatti, tanto blasonate come sicure dalle strutture bancarie, vanno a farsi fottere e si riapre il contrasto che già il ricercatore aveva avuto con molti instituti di credito britannici alcuni anni fa.
La Payments Administration inglese, che rappresenta gli interessi delle società delle carte di credito, dice che, nonostante la serietà dello studio di Cambridge, non esistono ancora prove di attacchi reali alle smart card ed al nuovo sistema con microchip andrebbe attribuito il merito di aver fatto calare drasticamente le frodi finanziarie negli ultimi due anni.
Un po’ di storia
Ross Anderson non è nuovo ad attacchi ai grandi istituti di credito, già nel 2005 denunciò il fatto che i sistemi che proteggevano le carte di credito erano molto più vulnerabili di quanto si pensasse benché i tentativi teorici per indovinare un PIN di quattro cifre siano teoricamente molto elevati
– Uno studente fresco di analisi matematica userebbe il calcolo combinatorio e arriverebbe a contare 10.000 disposizioni con ripetizione.
– Una qualsiasi persona che si basasse sul buon senso, direbbe solo 10.000 (pensando a tutte le combinazioni possibili da 0000 a 9999).
– Uno statistico direbbe 5000 (perché il calcolo delle probabilità insegna che in media basta il 50% dei tentativi per indovinare la lista delle possibili combinazioni).
In realtà, Ross Anderson affermò che, nel caso delle carte di credito, di tentativi ne bastavano mediamente una quindicina (!).
Non so neanche io esattamente il perché, ma viste le ultime scoperte, mi fido di lui. Diceva infatti che una vulnerabilità così evidente dipendeva dal modo nel quale veniva generato il codice PIN delle carte di credito, per cui un addetto ai lavori, che abbia accesso ai sistemi informatici bancari, può usarli tranquillamente per decifrarne il codice in pochissimo tempo.
A queste dichiarazioni le banche cercarono scandalosamente di zittire Anderson per vie legali ed i produttori cercarono di evitare la circolazione di tali informazioni. In generale si volle continuare a far credere che il sistema era assolutamente sicuro anche se non lo era. Il colmo fu che che i tribunali inglesi accettarono la richiesta della banca e Ross Anderson non poteva insegnare ai suoi studenti nessun aspetto fondamentale dei suoi studi. Fortunatamente, come vedete, il professore continua instancabilmente nella sue ricerche e continua a dimostrare quanto siano poco seri i sistemi di pagamento mondiali. Un grazie a Ross e un saluto a tutti