INFORMATICA - ELECTRONIC FORENSICS - PAYMENT CARDS

… numeri e non più carta moneta, transazioni elettroniche e non più ricevute ...

Marzo 2007

Premessa

Le carte di credito, debito e prepagate sono usualmente, a livello italiano, un sistema di memorizzazione dati basato su una banda magnetica quindi una memoria che conserva dati digitali di modesta quantità e di natura alfanumerica. Tali dati, attraverso la combinazione dei sistemi bancari e talvolta di specifiche password (si pensi al bancomat) realizzano sostanzialmente transazioni economiche. Dal punto di vista fisico copiare tali dati è estremamente semplice. Si possono impiegare dei dispositivi di ridotta dimensione e grande flessibilità di impiego (perfettamente legali) denominati skimmer. Essi vanno poi collegati ad un PC sia per lo scaricamento dei dati che eventualmente per il loro impiego per transazioni o clonazioni (realizzazione di carte clonate).

Nell'ambito dell'impiego delle carte di credito va poi segnalato un filone molto flessibile, dinamico e carico di transazioni che spesso viene individuato con il termine MTIO (Mail, Telephone and Internet Orders). Anche prima del massiccio avvento di Internet con l'E-commerce ed i movimenti elettronici di denaro la carta di credito aveva aperto la porta alla virtualizzazione degli ordini mediante posta e telefono. Ad oggi la virtualizzazione è così spinta che sono state determinate specifiche carte ricaricabili la cui destinazione precipua è la Rete delle reti ed il cui impiego crescente ed anonimato spinge a pensare che presto soppianteranno la moneta cartacea.

Per le FFPP la tracciabilità di una carta o in genere di una transazione elettronica si riconduce all'individuazione di un numero di telefono, un IP address o nel migliore dei casi di dati fisici (es. indirizzo, identità, ecc.). Usualmente l'attività di indagine coinvolge gli Istituti bancari ed i provider di servizi telematici su Internet. Entrambi forniscono LOG (file report di attività), i primi sulle transazioni ed i secondi sulle comunicazioni ed i collegamenti. Tali tipologie di dati devono essere incrociate dall'investigatore tecnico al fine di determinare validi dati di tracciamento. Alcune osservazioni a questo proposito sono importanti: (1) il tracciamento come processo complesso ha un serio costo in termini di uomini, mezzi, preparazione tecnica e ditte/Enti coinvolti per cui spesso si tende a tracciare solo nei casi di maggiore importanza (che coinvolgono grosse transazioni o serie di transazioni) o paradossalmente in quelli più banali che si possono risolvere con relativa facilità perchè il responsabile non ha posto in atto validi meccanismi per nascondere la sua identità; (2) il tracciamento non è sempre possibile sia a seguito della non disponibilità dei LOG (tecnica in quanto potrebbero non esistere o legale in quanto gli istituti coinvolti - es. esteri o fraudolenti - potrebbero non volerli fornire) che per l'implementazione da parte del responsabile di forti meccanismi di anonimizzazione come l'impiego di PROXY, anonymizer ed intermediari finanziari elettronici che forniscono come servizio proprio l'impossibilità di risalire al richiedente di esso.

Carte magnetiche di pagamento

Ci sono diversi esempi di impiego delle carte con banda magnetica (biglietti aerei, carte per shopping, per club, di identificazione, le patenti d'auto, ecc.) ma la carta di pagamento (ricaricabile, debito e/o credito) rimane sicuramente una delle più importanti ed interessanti dal punto di vista tecnico.

Lo standard cui fanno riferimento tali carte è lo ISO/IEC-7811. Sono previste, nella tipica banda magnetica, tre tracce di registrazione:

- la prima (quella più in alto) ospita i dati in un formato stabilito dalla International Air Transport Association (IATA - ad esempio contiene il nome del possessore della carta);

- la seconda ospita i dati in un formato definito dalla American Bankers Association (ABA - ad esempio essa contiene il numero di carta di credito);

- la terza è chiamata THRIFT è stata studiata per l'uso negli ATM (Automatic Teller Machine). Al contrario delle prime due questa traccia è infatti abilitata sia in lettura che scrittura proprio perchè le ATM vanno a modificarne il contenuto durante le operazioni. Tutte le cosiddette debit card, le italiane "pago-bancomat" e le carte bancomat, impiegano quindi la terza traccia.

Guardando frontalmente la banda magnetica i dati sono sempre scritti da destra verso sinistra e la codifica parte sempre con il bit meno sìgnificativo. I dati si possono pensare registrati sullo stripe come una serie di piccole barre magnetiche di larghezza definita poste una dopo l'altra in maniera tale che si guardino sempre i poli dello stesso tipo (N con N e S con S). Data l'abbondanza delle linee di flusso magnetico nelle zone di confine tra le barrette si può ben affermare che tali punti siano dei marcatori facilmente rilevabili da una testina magnetica di lettura. Quest'ultima infatti altro non è che induttore in cui le citate linee di flusso, durante la "strisciata" determinano un passaggio di corrente elettrica (un picco) e precisamente se l'interfaccia N-N produce un picco di corrente positivo, l'altra S-S uno identico ma negativo. Un semplice circuito elettronico può trasformare la sequenza di picchi in onda quadra F2F.

A questo punto un altro circuito elettronico rileva la temporizzazione di base (clock) mediante dei clocking bit posti all'inizio ed alla fine dello stripe. Si tratta del tempo necessario ad attraversare (nella strisciata) delle barre magnetiche iniziali di riferimento di lunghezza X (definita all'atto della scrittura) che per definizione contengono il valore 0. Per il valore 1 la convenzione è che sempre nello spazio X ci siano due barrette di lunghezza ovviamente X/2. L'onda quadra F2F potrà avere quindi nel tempo T necessario ad attraversare lo spazio X (nella strisciata):

- nessuna transizione: da cui il valore rilevato è 0;

- una transizione: da cui il valore rilevato è 1.

Un sistema molto elementare per implementare elettronicamente quanto detto è impiegare un microprocessore cui inviare i picchi di marcatura provenienti dalla testina opportunamente filtrati al fine di renderli dei segnali di interrupt. Il resto dell'elaborazione potrà essere fatta mediante un software che conta basandosi sul clock della CPU stessa.

La codifica dei dati per le tre tracce è poi la seguente:

Track Standard BPI Character Type Number of Characters EncodingScheme Comments

1

IATA

210

Alphanumeric

79

6 Bits + Odd Parity

Read Only

2

ABA

75

BCD

40

4 Bits + Odd Parity

Read Only

3

Thrift

210

BCD

107

4 Bits + Odd Parity

Read & Write (uncommon usage)

Track 1 Layout Specifico

zeros | SS | FC | Primary Acct (19 characters max) | Name (26 characters max) | FS | other data | ES | LRC | zeros

Track 2 Layout Specifico

zeros | SS | Primary Acct (19 characters max) | FS | other data | ES | LRC | zeros

Track 3 - Layout non standard

Le Card e le Smartcard

Card e smartcard possono risultare costituite da un supporto plastico ospitante un sistema in grado di memorizzare dei dati digitali e/o processing. Tale sistema può essere:

- Un codice inciso o serigrafato: il contenuto informativo è racchiuso nel codice evidente all’esterno.

- Una banda magnetica: il codice relativo alla carta è registrato su una banda magnetica dove può essere letto e/o modificato da appositi strumenti.

- Una pista ottica: il codice relativo alla carta è registrato su una pista ottica seguendo la stessa teoria di “incisione” dei CD-R (sola lettura); tali carte possono essere lette da appositi strumenti ma non modificate.

- Un micro-circuito (smartcard nel senso pieno del termine): sul supporto fisico viene impiantato un micro-circuito (chip) che può avere diverse funzionalità e quindi definire diverse tipologie di carta:

A) Carte della prima generazione (T1G): il chip è una ROM (Read Only Memory) che contiene dei dati i quali non possono essere cambiati né da azioni elettriche né da azioni meccaniche;

B) Carte della seconda generazione (T2G): il chip contiene memoria riscrivibile che può mutare il suo contenuto nel tempo a patto che un determinato codice di accesso sia specificato ed una specifica apparecchiatura sia impiegata per lettura e modifica.

C) Carte a microprocessore CISC (8 bit): in genere carte di credito in cui il chip è un microprocessore accompagnato da una memoria digitale riscrivibile; il vantaggio del microprocessore rispetto le T1G e le T2G è che il chip può contenere non solo dati ma anche capacità elaborative come le classiche procedure di crittazione o particolari programmi applicativi.

D) Carte a microprocessore RISC – Java based: come il caso precedente ma il microprocessore può essere programmato in Java (uno standard di programmazione notevole ed open) a svolgere funzioni e procedure di alta complessità che richiedono quindi alta performance.

E) Carte senza contatto (contact-less): carte dotate di capacità di memorizzazione ed elaborazione che basano il loro I/O su onde radio.

La norma internazionale ISO 7816 definisce le caratteristiche di tali carte a livello di forma, segnali elettrici, protocolli di trasmissione, ecc.

Usi e Produzione delle card e delle smartcard

Le card e le smartcard vengono utilizzate per diverse applicazioni commerciali:

- Carte di credito.

- Carte per la moneta virtuale: ossia carte ricaricabili che mantengono al loro interno un codice al quale risulta collegabile una certa cifra spendibile. Nel caso della carta di credito l’informazione relativa alla possibilità monetaria è registrata in banca mentre, per questo tipo di carta, all’interno del chip stesso.

- PayTV: carte per l’abilitazione alla visione dei canali televisivi a pagamento.

- Carte sanitarie e/o di identificazione: nel cui chip sono inserite informazioni e procedure riguardanti l’identità ed il curriculum sanitario del soggetto possessore.

- Carte GSM/GPRS/UMTS (SIM/USIM).

Il ciclo di vita di card e smartcard, ossia il processo che determina la creazione di una carta digitale fino alla commercializzazione è il seguente:

- Costruzione: la carta viene realizzata come supporto fisico e digitale incollando le componenti elettroniche sullo strato plastico.

- Inizializzazione: nel chip o nello stripe vengono inserite le informazioni e le procedure di base comuni a tutte le carte della famiglia prodotta.

- Personalizzazione: da un punto di vista grafico vengono inserite figure e scritte (magari incise come accade per il codice evidente delle carte di credito), mentre da quello digitale si registrano alcune informazioni peculiari, ad esempio l’identità del possessore, una cifra di denaro disponibile, ecc.

Le Frodi

Esistono diverse tipologie di frodi di base applicabili a card e smartcard alcune delle quali ben conosciute e classificate. Di seguito se ne considerano le classi principali.

1. Embossing

Il procedimento di embossing consiste nel modificare o imporre le cifre raffigurate esternamente una carta di credito. Si tratta di una tecnica ormai di interesse storico a meno che non la si consideri assieme ad altri procedimenti di clonazione dei dati contenuti nella carta.

Le carte modificate in genere vengono rivendute all’estero per confonderne le tracce o per diffonderle in un ambiente più consono (magari per motivi di controllo o legali) all’utilizzo commerciale.

2. Skimming

Il processo di skimming prende il nome dallo skimmer, ossia dal particolare strumento di lettura dei codici delle smartcard il quale risulta in grado di memorizzarne un certo numero limitato per poi scaricarli successivamente nella memoria di un PC. Ottenuti un notevole numero di codici (registrati nell’hard-disk del PC) è possibile riscriverli su carte “vergini”(white-card) mediante uno strumento di registrazione guidato dallo stesso PC.

Lo skimming avviene all’insaputa del possessore della carta attraverso diversi stratagemmi:

- Allontanamento temporaneo della carta dal possessore (in genere dai benzinai o negli hotel);

- Lettura di carte perdute o non recapitate al legittimo possessore;

- Lettura di carte rubate.

Nel caso delle carte di credito, le white-card possono, dopo la registrazione, subire un processo di “embossing” e riportare quindi il vero codice di identificazione fisicamente stampigliato. Sempre per la carte di credito, i codici registrati possono anche non essere di natura originale ma versioni modificate da opportuni software. In questo modo è come se si creassero più carte di credito a partire da un unico originale.

3. Internet Frauds

Il commercio elettronico su Internet si basa sullo scambio di codici di carte di credito e precisamente di quella parte di codice che risulta stampigliata fisicamente sulla carta (seguita dalla data si scadenza e dal nome del possessore) e spesso anche sul codice di protezione (dietro la carta). L’appropriarsi di tali codici (ad esempio con lo skimming) o il generarne (con appositi software) significa poter instaurare delle transazioni economiche su Internet a danno di ignari utenti che si ritrovano addebiti sul loro conto senza comprenderne la provenienza.

Frodi che si affiancano a quelle relative all’e-commerce sono realizzabili nella vendita per corrispondenza, nell’accesso di siti Internet a pagamento e nella ricarica di carte prepagate GSM.

4. Clonazione di carte dotate di chip

Le frodi identificate in precedenza sono relative soprattutto a carte con banda magnetica. Clonare una carta dotata di chip (T1G, T2G, ecc.) è molto più complesso dato che essa non interagisce solo a livello di dati forniti ma anche a quello delle procedure da utilizzare per accedere ai dati (si pensi alla crittazione).

Per clonare una smartcard bisogna quindi non solo replicare il contenuto dell’eventuale banda magnetica o ottica ma anche quello del chip collegato. Per fare questo è necessario avere una smartcard della stessa tipologia e vergine per poi programmarla secondo l'obiettivo di clonazione. Si tratta di una operazione che richiede un buon investimento finanziario, sia per gli strumenti di progettazione che per il personale tecnico da impegnare.

Ciò posto è evidente che tale tipo di frode non viene perpetrata in quantità limitate ma su larga scala come ad esempio avveniva per le smartcard relative alla PayTV.

5. Frodi con la moneta virtuale

Il meccanismo della moneta virtuale è simile a quello della carta GSM ricaricabile ed infatti le clonazioni, in paesi in cui tale sistema è già attivo, sono un fenomeno preoccupante ed in forte espansione. Per questo motivo le applicazioni della moneta virtuale in futuro tendono a coinvolgere spese potenzialmente molto limitate come l’automazione del pagamento dei biglietti del BUS o del treno, magari con sistemi contact-less (basta entrare nel mezzo perché dalla carta ricaricabile venga estratta la somma necessaria per il viaggio).

6. Identificazione

Riguarda la possibilità di utilizzare le smartcard per identificare in qualche modo il possessore (carta di identità elettronica, carta sanitaria, carta di accesso al posto di lavoro, ecc.). Le frodi a tale livello possono essere:

- Falsificazione della identità attraverso alterazione di una carta esistente;

- Scambio di identità attraverso clonazione di una carta esistente;

- Creazione di nuove identità partendo da una carta “vergine” e da un software di realizzazione di un nuovo codice da registrare sulla carta;

Uno dei problemi fondamentali è che ancora non si è trovato un modo efficace e semplice per collegare univocamente l’identità di una persona all’identità della carta, ossia ad un codice alfanumerico registrabile su chip. Fino a quando ciò non sarà possibile le possibilità di frode saranno sempre notevoli.

7. Secure storage

L’uso delle smartcard per la registrazione di dati confidenziali, come somme di denaro, codici, procedure riservate, ecc. Le frodi a tale livello possono riguardare:

- Data extraction: prelievo forzato dei dati dalla carta;

- Data manipulation: alterazione dei dati presenti sulla carta;

Bisogna poi ricordare che quasi tutti i meccanismi di protezione dei dati sulle carte sono di tipo “crittazione” e generalmente “strong encryption” ossia crittazione basata su meccanismi matematici con solide basi e garanzie teoriche e quindi molto difficili da “attaccare”. Alcune ditte utilizzano strumenti di crittazione così potenti da non essere neanche loro in grado di decrittare e quindi “aprire” il contenuto di una carta. Tale garanzia di riservatezza va discussa soprattutto a livello governativo. Negli Stati Uniti ogni meccanismo di crittazione che non può essere “aperto” dagli esperti del governo in tempo utile (dipende dal tipo di messaggio, per messaggi militari il tempo utile è meno di 2 giorni) è dichiarato illegale.

8. Loyalty

Uso delle smartcard come sistema di accumulo per punteggi (classici nei supermercati). Le frodi a tale livello possono riguardare:

- La creazione di nuovo punteggio alterando il contenuto della carta;

- La possibilità di usufruire più volte del punteggio sulla carta grazie alla clonazione della stessa.

9. Computation

Uso della smarcard per contenere procedure e dati complessi. Si tratta naturalmente di carte microprocessorate in grado di operare alla stregua di un PC. Le frodi a tale livello possono riguardare:

- Alterazione delle applicazioni (programmi) esistenti sulla carta;

- Prelievo non autorizzato delle informazioni contenute nella carta (copia);

- Apertura non autorizzata di informazioni crittate;

- Realizzazione di virus informatici per modificare le informazioni contenute nella carta.

Metodi di identificazione delle carte clonate

Possono essere utilizzati diversi sistemi e metodologie per l’identificazione delle smartcard clonate o alterate a scopo di frode. Si individuano generalmente le seguenti categorie:

- Metodi e tool commerciali: le ditte responsabili per le smartcard rilasciano dei tool e relativi manuali di utilizzo in maniera da consentire una investigazione di base corretta. Si tratta di sistemi sicuramente validi ma limitati ai casi di frode più noti.

- Riconoscimento fisico: si opera sfruttando un data-base (archivio) di immagini ricche di particolari che consente il confronto tra il modello presumibilmente clonato/alterato e quello originale. Molta attenzione viene posta nell’analisi dei font (difficilmente clonabili alla perfezione) e dei metodi di incisione utilizzati per riportare i caratteri sulla carta (tracce microscopiche lasciate dal meccanismo di incisione) nonchè dei vari elementi di sicurezza che ogni casa costruttrice provvede.

- Signal timing (1): ogni encoder registra i dati digitali seguendo una certa temporizzazione imposta dallo standard della carta in questione. Naturalmente tale rispetto dei tempi è limitato alla precisione del sistema e quindi, studiando le tracce di registrazione di encoder diversi si possono osservare lievi differenze. Tali scostamenti, ammesso che si abbia un sistema per rilevarli sufficientemente sensibile, sono una caratteristica propria del singolo encoder; in pratica è come se ogni encoder lasciasse una propria “firma” sulla traccia registrata. Tale firma è un possibile metodo per identificare tutte le carte di uno stesso gruppo prodotte con lo stesso encoder. Se si viene quindi in possesso di una carta probabilmente falsa basta confrontarne la “firma” con quella di una originale appartenente allo stesso gruppo.

- Signal timing (2): se si deve analizzare il chip di una smartcard per vedere se è originale o clonato lo si può sottoporre a stress di tipo elettrico (spike: picchi di alimentazione molto brevi) e registrare le temporizzazioni dei segnali elettrici imposti. Tali temporizzazioni sono una caratteristica propria di gruppi di carte originali e quindi possono essere utilizzati per l’identificazione come nel punto precedente.

- Company support: la collaborazione tra FFPP e ditte di produzione e/o sfruttamento commerciale delle smartcard è necessaria in quanto le caratteristiche tecniche delle smartcard sono soggette a continuo studio tecnico ed innovazione. Senza un assiduo contatto con l’innovazione tecnologica relativa a tool e metodi investigativi si rischia velocemente di non essere più in grado di operare. Non bisogna poi dimenticare che ad esempio i maggiori circuiti di carte di credito gestiscono proprie Sezioni “sicurezza” che si occupano dell’aspetto prettamente investigativo sulle frodi.

Open source: ossia software e consigli pratici che si possono trovare su Internet.

Crittazione e smartcard

La crittazione è uno degli strumenti fondamentali nella implementazione dei nuovi meccanismi di sicurezza nelle smartcard. Come accennato, infatti, le smartcard microprocessorate possono contenere oltre che dati alfanumerici anche procedure elaborative. Tali micro-software (firmware) sono studiati per rendere più sicura la procedura di accesso ai servizi che la carta fornisce.

Il sistema più semplice per gestire l’accesso ad una smartcard privata di un utente è proteggerla mediante un PIN (Personal Identifier Number) che dovrà risultare noto solo al possessore. La procedura di identificazione del PIN avviene facendo "viaggiare il PIN palesemente dal sistema di controllo (es. tastierino) verso la smartcard per poi essere direttamente confrontato con un PIN di riferimento (REFPIN) registrato sul chip. Naturalmente questa semplice e poco costosa attività (in termini di macchine che la implementano e di algoritmi) permette di catturare il REFPIN dalla memoria della smartcard oppure di individuarlo sulla linea di trasmissione durante la richiesta di autenticazione.

Un metodo alternativo (oggi implementato in molte forme diverse) sfrutta la crittazione simmetrica.

Sia X*=f(x,K) una funzione di crittazione, dove x è il messaggio di partenza (plain-text), K la chiave unica e X* il crittato di x (cipher-text).

La smartcard genera un numero casuale RND (necessaria una funzione di elaborazione...) che viene inviato sulla linea verso il sistema di controllo (es. PC). Quest’ultimo preleva il PIN via tastiera dall’utente, lo combina con il numero RND mediante un opportuno operatore matematico/logico (XOR) e critta il risultato con f(.).

Il PIN crittato che viaggia sulla linea è quindi PIN* = f(RND XOR PIN,K). La smartcard quindi lo riceve e lo decritta ottenendo R=f-1(PIN*,K) il quale, combinato con il PIN di riferimento (REFPIN) mediante un operatore XOR fornire H=R XOR REFPIN. A questo punto, se H=RND il controllo ha avuto esito positivo altrimenti il PIN deve essere reimmesso.

Si può vedere come in questo caso gli unici codici a viaggiare in linea di trasmissione siano RND e PIN*. Il primo è un numero casuale, quindi assolutamente ininfluente dal punto di vista dell’individuazione del PIN. Il secondo è il PIN crittato, molto difficile da aprire, dato che la chiave K esiste solo nel sistema di controllo e nel chip della smartcard.