510 likes | 628 Views
La smart card. Introduzione Caratteristiche fisiche Sicurezza Attacchi & sicurezza. Seminario di: Al Hamarneh Rani. 1 . Introduzione.
E N D
La smart card • Introduzione • Caratteristiche fisiche • Sicurezza • Attacchi & sicurezza Seminario di: Al Hamarneh Rani
1. Introduzione Una smart card non è altro che una scheda magnetica evoluta. Una scheda magnetica è una scheda sulla quale sono state temporaneamente memorizzate informazioni grazie all'impiego della tecnologia magnetica. Può essere considerata una vera e propria moneta elettronica visto che sempre più persone utilizzano queste carte per effettuare operazioni di pagamento (carte di credito, schede telefoniche prepagate).
Introduzione(2) Ma purtroppo queste non offrono un sufficiente margine di sicurezza . La smart card nasce proprio per questo motivo , con lo scopo di aumentare la sicurezza dei dati memorizzati sulla scheda consentendo alla scheda stessa di manipolare le informazioni in essa contenute .
Introduzione(3) 1.1Breve storia Nel 1974, mentre si lottava ancora con i lettori a schede perforate , Roland Moreno (un francese) depositò quattro brevetti. Il primo brevetto riguardava il meccanismo preposto alla gestione degli accessi per lo scambio dati (lettura/scrittura) ad una memoria su chip integrato VLSI (Very Large Scale Integration)
Introduzione(4) Segue breve storia Il secondo ed il terzo brevetto vertevano sulla codifica dei dati, cioè il particolare formato e modalità, associati alla lettura e scrittura delle informazioni sul chip. Infine, il quarto riguardava le modalità di trasferimento dei dati dal chip ad un computer periferico (sportelli bancomat).Cosi nel 1974 con l’accordo fatto tra moreno e la societa’ francese Bull nasce il progetto cp8,
Introduzione(5) Segue breve storia • con la produzione di una scheda di plastica sperimentale che montava un circuito integrato. • Si trattava di una scheda con a bordo memoria elettronica e poco più; ma per arrivare alla smartcard cosi detta, cioè alla scheda a microprocessore, si deve attendere l'ottobre del 1981,dove in questa data Bull presento’ la prima scheda a microprocessore monocip. che permette di implementare le tecniche crittografiche moderne.
Introduzione(6) Segue breve storia Esistono numerosissimi tipi di smartcard in circolazione che differiscono principalmente dai diversi requisiti di sicurezza che devono garantire,e si dividono in due filoni principali(come specificheremo meglio in seguito): 1.Microprocessor Cards (Schede a Microprocessore).2.Memory Card (Schede a Memoria) e queste ultime alla loro volta si dividono in due categorie: con e senza protezione.
Introduzione(7) Segue breve storia 25 bilioni ecash e internet payments transactions entro 2005. Di cui 30% si fara con le smartcards (Killen) 100 billioni transazioni smart card all’anno (Schlumberger). 3,85 bilioni Smartcards entro 2002 (5 US$billion) . Numero di smartcards con microprocessori tra 21 bilioni e 35 billion entro 2010 (Siemens and Sun) .
Introduzione(8) 1.2 I campi di applicazione • Finanza • Telefonia • Identificazione • Applicazioni di rete • Memorizzazione di informazioni sicure
Introduzione(9) 1.3 Standards Una fetta importante nello sviluppo delle smartcard è legato agli standard dei protocolli. Come per qualsiasi nuova tecnologia esistono talmente tanti standard per smartcard da poter scoraggiare chi si presta a diventare sviluppatore. Fra le organizzazioni che hanno effettuato questa standardizzazioni troviamo:
Segue standards Introduzione(10) • CEN (Comit‚ Eurp‚en de Normalisation) • ISO(International StandardInstitute)Il documento di riferimento che ne ha definito le varie caratteristiche è il 7816 ed è diviso in tre parti: • ISO 7816-1: con cui vengono definite le caratteristiche fisiche. • ISO 7816-2: con cui vengono definite le dimensioni e la posizione dei contatti: • Dimensione minima dei contatti 1,7mm x 2mm
Segue standards Introduzione(11) • ISO 7816-3:con cui vengono definiti i segnali elettrici ed i protocolli di trasmisisone: • Parity bit (per il controllo di errori di trasmissione)- Even Parity • Guardtime (tempo di separazione tra i caratteri)- uguale a due bit • Start bit (usato per la sincronizzazione) • Data bit (i veri e propri dati)
Segue standards Introduzione(12) Per il primo documento(ISO 7816-1) né mostreremo alqune delle caratteristiche meccaniche del supporto da esso definite:· Comportamento all'esposizione ai raggi-X·Resistenza elettrica dei contatti . Proprietà alla curvatura · Proprietà alla torsione …ecc.
Segue standards Introduzione(13) Un esempio per capire meglio: Affinchè il supporto che contiene l'ICC possa superare il test di torsione la sched deve, senza che l'ICC si danneggi, resistere a 1000 torsioni di 15° lungo il suo asse longitudinale con media di 30 torsioni al minuto. Alcune aziende però hanno sviluppato propri protocolli di trasmissione con l'intento di preservarne la sicurezza ma allo stesso tempo eliminano completamente la compatibilità.
Introduzione(14) La figura sopra mostra le varie operazione di input /output che una semplice smartcard può svolgere.
2. Caratteristiche fisiche IL formato fisido della smart card differisce da quello delle schede magnetiche solo per l’ assenza delle banda magnetica e di un microchip di colore oro e di varie forme su un lato della scheda. Nel singolo chip sono memorizzate tutte le informazioni riguardanti i servizi fruibili dall'utente e il software (sistema operativo, programmi di servizio)
Caratteristiche fisiche(2) necessario per l'interscambio l'aggiornamento dei dati tra la carta e il terminale di servizio. La Figura mostra le componenti fondamentali di una smartcard .
Caratteristiche fisiche(3) I potenziali utilizzi delle smartcard dipendono dalle specifiche delle stesse. La tecnologia del microprocessore e della memoria sono vari, ma le specifiche elencate di seguito possono servire come linee guida: CLOCK: 3,8, 20 MHZI chip utilizzati più frequentemente sono 6805, 8051, H8.RAM: da 128 a 1200 byte di RAM ROM: da 6 a 32 kbytes EEPROM: da 1 a 128 kbytes
Caratteristiche fisiche(4) • Come abbiamo accennato in precedenza le smart card si dividono in due principali categorie : a memoria, e con microprocessore. • Quelle a memoria possono essere : • Unprotected:non hanno capacità d'elaborazione ma contengono solo circuiti elettronici per memorizzare dati e per comunicare con il dispositivo di lettura,e quindi sono delle vere e proprie memory. • Protected:sono dotate anche di meccanismi di sicurezza come il PIN (Personal Identification Number) per proteggere i dati in lettura o scrittura.
Caratteristiche fisiche(5) • Quelle con microproces possono essere: • General Purpose: usate per obiettivigenerali dove vengono utilizzate nell'ambito bancario e dei GSM. • Specific: dette anche crypto-card, che dispongono anche di un componente interno (coprocessore crittografico) per eseguire velocemente funzioni di sicurezza (ad es. cifratura dati, "firme elettroniche"), permettendo così l'impiego delle schede per nuovi servizi ed applicazioni.
Caratteristiche fisiche(6) Le carte a microprocessore si differenziano da quelle a memoria perché al posto di semplici circuiti per la gestione della memoria e per la comunicazione con il lettore, possiedono un vero e proprio microprocessore e un proprio sistema operativo che le rendono idonee ad elaborare informazioni in maniera indipendente. Queste schede forniscono una gestione efficiente e sicura dei dati che vengono strutturati in files e directories,
Caratteristiche fisiche(7) ...utilizzano dei PIN per l'accesso alle informazioni, supportano funzionalità di sicurezza, quali crittografia, autenticazione dei messaggi, ecc.
Caratteristiche fisiche(8) 2.1 Classificazione Le Smartcard in base alla tecnologia utilizzata per l'interfaccia trasmissiva esterna di scambio dati, sono classificate nei seguenti tipi: Schede a contatto Schede a prossimità Schede ibride o combo (contatto + prossimità)
Caratteristiche fisiche(9) 2.2 Schede a contatto • Le schede a contatto sono caratterizzate dalla presenza sulla carta di piazzole di contatti tramite cui la scheda stessa riceve dal lettore l'alimentazione ed effettua lo scambio dei dati. La figura mostra i vari chip che vengono utilizzati per le carte a contatto; si può inoltre notare come la forma del chip cambi a seconda della casa costruttrice
Caratteristiche fisiche(10) 2.3 Schede a prossimtà Nella scheda a prossimità lo scambio dei dati tra la scheda e il lettore avviene per trasmissione in radio frequenza . Nella scheda è presente una minuscola antenna in grado di rilevare un segnale emesso a distanza da una antenna presente su un dispositivo fisso. La lettura/scrittura della carta può avvenire ad una certa distanza (es. 10-20cm.) dall'apposito lettore e ad elevata velocità (es. 106Kbps).
Caratteristiche fisiche(11) Schede a prossimtà(2) Oltre alla praticità di utilizzo dovuta al fatto che non occorre inserire la carta nel lettore, in quanto è sufficiente avvicinarla, le carte a prossimità risultano praticamente indistruttibili poiché, non presentando contatti esterni che si possono danneggiare in seguito a graffi o a piegature ed inoltre non sono soggette ad usura. Un'applicazione tipica di queste carte è infatti quella dei trasporti pubblici, per il pagamento di biglietti
Caratteristiche fisiche(12) 2.4 Schede ibride/combo Questo tipo di schede contengono tutte le due categorie di prima . Il vantaggio di queste schede è che l’utente può avere sullo stesso supporto appilicazioni tipiche di entrambi le tecnologie.
Caratteristiche fisiche(13) Schede ibride/combo(2) La figura mostra come le schede ibride hanno un’unica zona di memoria e un cpu che intereagisce con l’esterno tramite i due diversi sistemi di i/o. E come quelle combo i due diversi circuiti condividono il medisimo supporto plastico.
3. Sicurezza Le smartcard dispongono di una protezione fisica costituito da uno strato isolante dielettrico che copre il chip per resistere a eventuali attacchi atti a manomettere le funzioni di output. Lo strato isolante protegge il chip dalle impurità e dalla polvere, e impedisce il passaggio di radiazioni associate alla sonda, che utilizza un fascio di elettroni microscopico. Lo schema è capace di reagire alla luce, alla temperatura e alle scariche elettriche indicando al chip che lo strato isolante è stato rotto e che la sicurezza dei dati è compromessa.
Sicurezza(2) Vi sono anche meccanismi per proteggere la memoria fisica SCRAMBLING, incluso il sovraccarico di memoria, che possono scombussolare i disegni tecnici più difficili e impediscono un attacco che cerca di cancellare un preciso dato selezionato nella memoria . Le smartcard possono essere costruite con vari livelli di sicurezza fisica, con costi sempre più alti man mano che aumenta il livello di sicurezza .
Sicurezza(3) Vcc:power supply inputClk: Timing signal…. La figura mostra lo schema di una smartcard e le sue varie component
Sicurezza(4) Le tecniche di sicurezza impiegate nella progettazione delle smartcard e nelle procedure di autenticazione/trasmissione di questi dati verso i terminali d'interfaccia riguardano essenzialmente TRE settori: • INTEGRITA’ DEI DATI. • AUTENTICAZIONE. • IRRIPRODUCIBILITA’ E RISERVATEZZA.
Sicurezza(5) 3.1 Integrità Per integrità dei dati si intende la corretta trasmissione dei dati tra la sorgente e destinatario senza nessun tipo di alterazione dell'informazione. L'integrità fisica dei dati è basata in genere sul calcolo di una checksum (una firma calcolata con l’uso di algorimi one-way hashing,in particolare l’ SHA-1) su un insieme logico di dati (record, file, ecc.) memorizzata insieme ad essi . Quindi il checksum è come se fosse l’impronte dei dati
Sicurezza(6) Integrità(2) L'SHA-1 produce una firma di 160 bit per un insieme informativo di valori numerici di 264 bit di lunghezza al massimo Un’altra funz. Hash molto diffusa è la MD5 che produce una firma inferiore a quella della SHA-1 a solo 128 bit e quindi a 16 caratteri.
Sicurezza(7) Integrità(3) Il sistema operativo garantisce l'integrità del messaggio scambiato dalla carta con il mondo esterno, inserendo dopo il campo dati del comando o della risposta il Codice di Autenticazione del Messaggio (MAC) in modalità cifrata La cifratura del MAC definisce una spece di firma digitale del messaggio scambiato realizzata con algoritmi di crittografia simmetrici(DES, RC5).
Sicurezza(8) 3.2 Autenticazione Ovvero il riconoscimento reciproco tra la scheda e il mondo esterno . Secondo quanto specificato dagli standard ISO relativamente alla sicurezza logica, esistono essenzialmente tre tipi di autenticazione: 1. Interna: da parte del lettero verso la scheda. 2. Esterna: da parte della scheda verso il lettore. 3. Reciproca: da parte dei entrambi.
Sicurezza(9) Autenticazione(2) Il principio generale su cui si basa l'autenticazione è che, tra i due soggetti, vengono scambiate quantità casuali, ovvero di validità temporanea (autenticazione dinamica), che vengono crittografate, in modo simmetrico.. Le procedure di autenticazione sono solitamente gestite secondo lo standard ISO 9798/2 .
Sicurezza(10) Autenticazione(3) Ad esmpio per l’autenticazione interna succede: 1) il lettore genera un challange (byte casuali) e lo manda alla scheda assieme all'info sulla chiave da usare 2) il SO della scheda riceve il challange e genera una response (ovvero il challange cifrato usando la chiave richiesta) inviandolo al lettore 3) l'applicazione sul lettore andra' a confrontare il risponse ricevuto dalla scheda ,
Sicurezza(11) Autenticazione(4) con quanto ottenuto dalla esecuzione dell'algoritmo di autenticazione che usa lo stesso Challenge e la propria chiave di verifica. Invece nell’autenticazione di tipo esterna ,ciò quella che consete ad una scheda di sencirarsi della validità del lettore con si interfaccia succede proprio il viceversa.
Sicurezza(12) Autenticazione(5) La figura sopra descrive l’autenticazione di tipo esterno.
Sicurezza(12) Autenticazione(6) Normalmente è usato il DES per cifrare la quantità random, con una chiave di autenticazione generata di volta in volta mentre il calcolo delle firme viene fatto con il Triplo-DES. Qualora dovesse essere presente sulla carta un coprocessore crittografico che permette di realizzare algoritmi di cifratura asimmetrici (RSA, DSA), è anche possibile realizzare delle autenticazioni statiche tramite l'utilizzo di una firma applicata ad una quantità fissa (es. card ID).
Sicurezza(13) 3.3Irriproducibilità e Riservatezza Bisogna in qualche modo garantire che la firma digitale non possa essere copiata per consentire l'utilizzo non autorizzato. Questo è uno degli aspetti cruciali della sicurezza in ambito elettronico. Chiunque con un minimo di attrezzatura è in grado di copiare il contenuto informativo di un dispositivo digitale e la copia risultante sarà indistinguibile dall'originale. Inoltre l'obiettivo è di evitare che un intruso possa catturare e decifrare le operazioni interpretando di conseguenza il contenuto informativo delle card.
Sicurezza(14) 3.4 Attacchi & Sicurezza La progettazione di un sistema sufficientemente sicuro è un compito difficile da parte delle aziende che operano nel settore. Spesso i pareri sono molto differenti tra loro per cui esistono approcci diversi alla scelta degli algoritmi crittografici e alla loro implementazione nei microcontroller. Ad esempio, nel settembre '97 sono state registrate violente polemiche sul nuovo chip H8/3109 sviluppato dalla Hitachiper conto della Mondex international .
Sicurezza(15) Attacchi & Sicurezza(2) Durante l'Eurocrypt '97, la più importante conferenza del settore, molti esperti si sono scagliati contro l'enorme investimento della Mondex nella progettazione delle nuove smartcard, che apparentemente non rispecchiano gli standard moderni di sicurezza offerti dai nuovi algoritmi crittografici. Ross Anderson della Cambridge University affermò: "si stanno sviluppando troppe nuove tecniche di attacco verso questi tipi di sistemi; se un sistema viene rilasciato oggi, la sua sicurezza può durare al massimo tre mesi".
Sicurezza(16) Attacchi & Sicurezza(3) Questa affermazione era dovuta al consapevole limite delle smartcard a livello fisico. Con appositi strumenti è infatti possibile modificare strutturalmente la card in modo da poter leggere/scrivere e interpretarne il contenuto informativo. Si è dimostrato durante una conferenza dell'Eurocrypt come si possa "cortocircuitare" una smartcard in modo da poterla collegare tramite comunicazione seriale ad un qualsiasi personal computer e quindi decifrare ogni valore memorizzato..
Sicurezza(17) Attacchi & Sicurezza(4) Alcuni accademici, affermano che in realtà i costi per una eventuale manomissione non sono molto elevati. Esistono in circolazione diversi tipi di lettori di smartcard provenienti dai più famosi gruppi hackers e quindi interessanti perché autocostruiti, totalmente trasparenti nell'utilizzo e soprattutto facili da realizzare anche dal punto di vista economico.
Sicurezza(18) Attacchi & Sicurezza(5) Un altro luogo comune da sfatare è quello secondo il quale la violazione di smartcard sarebbe un evento raro e difficile da realizzare. A riprova del contrario,alcuni pirati informatici (probabilmente olandesi) erano riusciti a impartire una severa lezione al colosso delle telecomunicazioni tedesche con un danno di circa 34milioni di dollari causato dal ricarico abusivo delle card prepagate per la telefonia. Queste card usavano EEPROM sviluppato dalla Siemens,
Sicurezza(19) Attacchi & Sicurezza(6) che detrae il valore della card a seconda dei minuti di conversazione telefonica consumati fino a che non si azzera il valore. Questo gruppo di pirati è riuscito a raggirare la fase di azzeramento della card riuscendo ricaricarla senza nessun danno fisico o manipolazione della stessa. Dato che le prime smartcard richiedevano tempi lunghi (15/20sec) per elaborare pesanti algoritmi asimmetrici, inrealtà si preferiva diminuire il livello di sicurezza e aumentare la velocità.
Sicurezza(20) Attacchi & Sicurezza(7) Questa valutazione è basata anche sulla reale aspettativa di inviolabilità del sistema. In pratica i sistemi venivano progettati non tanto per essere inviolabili al 100%, ma per garantire una soglia minima di inviolabilità. Con la tecnologia CPU Risc inserite nelle card e con una gestione efficiente dei calcoli in virgola mobile si riescono a ottenere risultati notevoli anche in tempi brevissimi.