Newsgroup: it.comp.sicurezza.varie
Titolo: Smart Card

Ciao a tutti..
Esiste un modo per evitare che il contenuto di una smart card possa essere
"fisicamente" copiato in un'altra smart card?
Le card con pin di protezione (4 misere cifre) possono essere una soluzione
accettabile?
Grazie in anticipo...
Ciao, Alfonso.

"fisicamente" copiato in un'altra smart card?
Dipende da quanto e' smart la card.
Alcune cards contengono un motore crittografico ed alcune locazioni di
memoria write-only. L'algoritmo e' noto.
Quindi, tu, in un ambiente sicuro, scrivi sulla card "PUPPAMELO". Poi,
se vuoi verificare che la password della card sia giusta, da software,
prepari la cifratura di una sequenza random con la password giusta, ed
invii la stessa sequenza random alla card.
Se la card risponde con la sequenza crittata giusta, e' buona.
Una card di questo tipo la "vedi" come tre aree di memoria:
	WWWWWWRRRRRRXXXXXX
le aree W possono essere SCRITTE a volonta', le R possono essere lette
una volta sola, le aree X possono essere scritte (a volte a volonta' e
a volte solo per un numero limitato di volte).
Se cerchi di LEGGERE la card, leggi solo una sequenza di zeri :-) e se
anche avessi una card in stato "QUERIED", quello che leggi dall'area R
non ti serve piu', perche' e' la risposta ad "UNA" di (quasi) infinite
sequenze casuali...
Leonardo
-- 
"Open Source programs are designed and developed.
 Our products are tested."
 Steve Lipner, manager, Microsoft Security Response Center

 "fisicamente" copiato in un'altra smart card?
Come giustamente ha delineato Leonardo, ci sono cards piu' smart e cards
meno 'smart'.
Ho partecipato recentemente ad una ricerca relativa alla sicurezza delle
smart cards. Abbiamo testato diversi tipi di cards da diversi produttori.
I risultati (per sommi capi) sono stati i seguenti:
1. E' sempre possibile (almeno su quelle da noi testate) copiare il
contenuto della card in diverse aree di memoria e quindi ricopiarle su di
una card diversa. Ci sono alcune che non offrono alcuna 'resistenza', altre
invece che hanno un certo grado di resistenza.
2. A parte la sicurezza dell'argoritmo usato per criptare la chiave, uno dei
punti deboli della cards e' la loro struttura fisico/chimica. Infatti un
tipo di attacco comune sulle card e' quello definito come 'physical attack'.
In pratica si cerca di effettuare un 'reverse engineering' e quindi
determinare il valore delle chiave(i) segreta(e). Esistono diversi modi per
effettuare questo attacco; uno di essi e' effettuato attraverso la
fluttazione in temperature, clock rate, input voltage; oppure sottoporla a
radiazioni(UV) o addirittura colpire la card con un martello di gomma....in
pratica qualsiasi cosa che potrebbe causare fluttazione della tensione
elettrica all'interno della card.
Ci sono stati altri gruppi di ricerca che hanno fatto tali test...Il comun
denominatore e' che se la smart card non e' propriamente progettata,
qualsiasi chiave puo' essere estratta dalla card...
Esistono tuttavia nuove cards molto ben progettate dove il micro-controller
e' stato migliorato, considerando che i micro-controllers sono il punto dove
un attacker si concentra. Infatti alcuni micro-controllers so stati
programmati per essere interattivi e quindi hanno una interfaccia che
permette la comunicazione con memoria esterna...cosa che permette
potenzialmente la copia del contenuto della card...ed altro...
Quindi, come per ogni cosa relativa alla sicurezza...c'e' sempre chi trova
nuovi metodi per migliorarla, e chi trova nuovi metodi per
craccarla...dopotutto questo e' il motore del progresso e dello sviluppo...
Tony H

 invece che hanno un certo grado di resistenza.
Infatti e' quello che (anche in funzione della mia scarsa esperienza in
questo settore) avevo notato.
Ho avuto a che fare con 3 tipi di card:
1- Una semplice Eprom integrata senza alcuna protezione in scrittura
2- Una Eprom con pin di protezione in scrittura (4 misere cifre)
3- Card con Microprocessore (Atmel) e Eprom integrati.
Quello che mi occorrerebbe utilizzare (almeno inizialmente) e' una card che
contenga dati che possano essere letti e modificati da un programma.
Tali dati verranno memorizzati sulla card essendo preventivamente criptati
da un algoritmo (della suite AES) all'interno del programma stesso.
Pensi che una card con  Microprocessore possa garantire maggiore sicurezza?
E in che modo?


 memoria write-only. L'algoritmo e' noto.
Che tipo di cards sono? Dove posso trovarle e, soprattutto, quanto costano?
Grazie...
Ciao, Alfonso.

 E in che modo?
L'elemento sicurezza e' relativo all'applicazione/i e l'uso che fai della
SC(smart card). Nel tuo caso sembra che tu sia interessato semplicemente
nell' immagazzinare informazioni elaborate precedentemente dal software del
sistema.
Se la manipolazione dei dati avviene all'esterno della card allora puoi
utilizzare un IC Memory Cards. Tali cards sono di solito utilizzate per
operazioni ripetitive e fisse (come immagazzinare un chiave)...possono
contenere da 1-4 Kb di data. Si possono considerare un ottima alternativa
alle ormai obsolete ed insicure (anche se ancora molto usate) mag stripe
cards.
Se la card deve fare operazioni piu' complesse che richiedono un
elaborazione interna (fatta dalla card stessa) dei dati, allora l'opzione va
sulle IC Microprocessor cards (chip cards).
Hanno chiaramente piu' memoria (circa 16Kb ROM) e 512 bytes di RAM...se
consideri che hanno una potenza di calcolo dei primi IBM-XT (anche se con
meno RAM)..non sono affatto malaccio...
Dal punto di vista della sicurezza, ci sono dei giudizi discordanti se sono
piu sicure dell IC Memory Card. Questo perche se e' vero che tale potenza di
calcolo permette di programmarle in maniera piu' sicura, e' anche vero che a
causa della sua interagibilita' con i sistemi esterni, possono essere anche
facile preda, se non configurate e progettate bene.
Infine ci sono le ultime arrivate...Optical Memory Cards...Praticamente sono
delle card che hanno un pezzetto di CD incollato. Hanno una capacita' di
memoria di 4 Mb, ma una volta scritti, i dati non possono essere cambiati o
rimossi. Sebbene il loro prezzo e' piu' o meno simile alle IC Microprocessor
card, il prezzo invece del lettore e' relativamente elevato visto che non
usano ancora uno standard predefinito.
Non hanno ancora alcun processore (quindi sono passive) ma ho sentito dire
che molto presto ne saranno provviste...
HTH
Tony



Una card di questo tipo costa sulle 15-20 mila, mentre il lettore (che per
evidenti ragioni e' anche programmatore) costa sulle 200.
Il rivenditore a te piu' vicino e' in via Barilatti 23, 071/2801502, CREAT
snc. Altrimenti Electronic Fittings Srl, via I Maggio 20, 071/804018.
Ai sensi delle vigenti leggi devo precisare di non avere rapporti di alcun
genere con costoro, sicche' neanche ti so dire nulla su tempi di consegna,
disponibilita' e cose simili.
Fra parentesi, loroli' hanno di sicuro le cards standard a 416 e 2048 bits
<joke>nel terzo scaffale in basso sulla destra entrando</joke>, col codice
CPC2K quest'ultime (suppongo le prime abbiano codice CPC416?), 10 sacchi a
scheda, pronta cassa :-)... ma non so se hanno le carte criptografiche. Ma
di sicuro conoscono chi se le puo' procurare.
<viscido>
Potresti anche provare a farti amico il Sebastianelli - o l'assistente del
laboratorio di Elettronica. Ai tempi io al D.I.E. tornavo di casa. Come in
tutte le famiglie, cio' che era loro era mio, ecc. [1].
</viscido>
Leonardo
[1] anche se "chi rompe paga" - ricordo con disappunto una mezza milionata
    per una unita' Hall riclassificata FUBAR [2]
[2] Fucked Up Beyond All Recognition


Ma a che cosa servono? (scusate l'ignoranza)
--
Ciao, Sprea
sp...@CUTiol.it  Elimina  CUT  per scrivermi
Forse cose interessanti su: 
www.sprea.too.it