Università Degli Studi Di Salerno
SOMMARIO
•
Facoltà di Scienze Matematiche, Fisiche e Naturali
Corso di Laurea in Informatica, a.a. 20022002-2003
Smart card
- Veduta d’insieme
- Struttura e classificazione delle smart card
- Lettore e terminale di base
- Standard
- Sicurezza
Sistemi di Elaborazione: Sicurezza su Reti
Prof.: Alfredo De Santis
•
Smart card: autenticazione utenti sotto Windows
Autenticazione
- Cos’è l’autenticazione
- Rischi delle tecnologie, attacchi più comuni e trasmissione dat i su reti
- Processo di autenticazione tramite smart card
•
Smart card: autenticazione utenti sotto windows
- Introduzione
- Chiave pubblica: concetti
- Smart card authentication
- Programmare una smart card
•
Analisi dei dispositivi hardware e software utilizzati
- Smart card
- Lettore smart card
- Gemplus SmartDiag v2.0
- GemXpresso RAD III
Studenti: Antonio De Pascale
Pascale,, Tony Montone, Giacomo Scaffidi Domianello
Smart card: autenticazione utenti sotto
Windows
2
Struttura smart card
Cos’è una smart card?
La smart card è un’evoluzione della tradizionale carta magnetica.
Presenta un Circuito Integrato (IC) che può essere:
- una semplice memoria
- un microprocessore
Perché smart card
- Migliorano la convenienza e la sicurezza di alcune operazioni.
- Rendono inattaccabili le memorie degli utenti e l’identità degli account.
- Proteggono contro una serie di minacce per la sicurezza.
- Offrono sicurezza ai sistemi a scambio virtuale di dati.
- Possono servire anche come accesso al sistema di rete, a depositi bancari e ad altri
dati.
Smart card: autenticazione utenti sotto
Windows
3
Smart card: autenticazione utenti sotto
Windows
4
Smart card: autenticazione utenti sotto
Windows
5
Smart card: autenticazione utenti sotto
Windows
6
Classificazione
Smart card: autenticazione utenti sotto
Windows
1
Lettore e Terminale di base
Memory Card
Ci sono principalmente tre tipi di memory card:
- Straight Memory Cards
Immagazzinano solo dati e non hanno capacità di elaborazione.
- Protected / Segmented Memory Cards
Hanno incorporata la logica per controllare l'accesso alla memoria della scheda stessa.
Lettore: usato per descrivere un'unità che si interfaccia con un PC.
Terminale: dispositivo di elaborazione indipendente.
- Stored Value Memory Cards
Sono progettate con lo specifico scopo di immagazzinare valori.
I lettori si presentano di molte forme e diverse capacità.
Si connettono a porte seriali RS232, porte USB, slot PCMCIA, slot di floppy-disk,
porte parallele ecc.
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
7
8
ISO 7816
Standard
Gli standard delle smart card regolamentano le proprietà fisiche e le caratteristiche di
comunicazione del chip incorporato e sono coperti dall'ISO 7816-1,2,3.
Le principali organizzazioni che propongono i loro standard sono:
- International Standards Organization (ISO)
ISO 7816 consta di sei parti:
1. Caratteristiche fisiche - ISO 7816 -1:1987
2. Dimensioni ed Ubicazione dei Contatti - ISO7816 -2:1988
- National Institute of Standards and Technology (NIST)
3. Segnali Elettronici e Protocolli di Trasmissione - ISO 7816-3:1989
- Europay, MasterCard and Visa
4. Comandi per Interscambi tra Industrie - ISO 7816-4
- Microsoft
- CEN (Comité Europèen de Normalisation)
5. Sistemi di numerazione e Procedure di Registrazione per Identificatori Applicativi
- ISO 7816-5:1994
- ETSI (Istituto Europeo degli Standard delle Telecomunicazioni)
6. Dati tra industrie - ISO 7816-6
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
9
10
Meccanismi della sicurezza sui dati
Cos’ è la sicurezza?
E’ fondamentalmente la protezione di qualsiasi cosa preziosa dal furto, dallo
smarrimento o dalla sua alterazione.
Cos’è la sicurezza d’informazione?
E’ l’applicazione di misure per assicurare la sicurezza e la privacy dei dati nella loro
gestione, salvataggio e distribuzione.
Gli elementi della sicurezza di dati
- Hardware: server, memorie di massa ridondanti, canali e linee di comunicazione.
- Software: sistemi operativi, sistemi di database gestionale, programmi applicativi.
- Dati: database che contengono informazioni relative ai clienti.
- Personale: utenti e/o fonti di dati; professionisti, personale amministrativo e
informatico.
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
11
Integrità dei dati: funzione che verifica le caratteristiche dei documenti e delle
transazioni.
Autenticazione: con essa si ispeziona e si conferma la corretta identità di persone
coinvolte in una transazione di dati.
Non-ripudio: elimina la possibilità che una transazione ripudiata o invalidata può essere
verificata come corretta.
Concessione e delegazione: processo che permette l’accesso di specifici dati
all'interno di un sistema.
Controllo e registrazione: esamina la registrazione dei record, le attività per assicurare
la conformità ai controlli stabiliti, le procedure operative in polizze.
Gestione: è la tutela e la progettazione degli elementi e dei meccanismi discussi sopra.
Smart card: autenticazione utenti sotto
Windows
12
2
Sistema di sicurezza card-based
Sistema di sicurezza host-based
Tratta una scheda come un semplice veicolo che trasporta dati.
Ogni protezione dei dati è fatta dal computer server.
Il sistema è facilmente attaccabile.
Basato su microprocessori inclusi nelle card.
L'accesso alle informazioni nella scheda è controllato da:
a) un sistema operativo interno alla scheda.
b) un insieme di permessi.
Possibili attacchi: alcune parti delle chiavi sono in chiaro e possono essere analizzate
da hackers.
Possibile rimedio: uso di memory cards che implementano un meccanismo di password
per prevenire la lettura non autorizzata dei dati.
Ci sono due tipi di approccio per i sistemi operativi di scheda:
- Approccio Classico: tratta ogni scheda come un dispositivo sicuro di calcolo e di
salvataggio dati.
- Approccio Disk Drive: c’è una memoria attiva che gestisce la scheda e permette di
caricare specifiche “applicazioni” e file.
Possbili attacchi: le password possono essere sniffate in chiaro.
Smart card: autenticazione utenti sotto
Windows
•
•
Smart card
Cos’è l’autenticazione
L'autenticazione è il processo attraverso il quale viene verificata l'identità di un
utente che vuole accedere ad un computer o ad una una rete.
Autenticazione
Un buon processo di autenticazione ricorre normalmente ai seguenti tre fattori:
- qualcosa che solo l'utente conosce
- qualcosa che solo l'utente possiede
- un aspetto fisiologico o comportamentale
Smart card: autenticazione utenti sotto windows
- Introduzione
- Chiave pubblica: concetti
- Smart card authentication
- Programmare una smart card
•
14
SOMMARIO
- Veduta d’insieme
- Struttura e classificazione delle smart card
- Lettore e terminale di base
- Standard
- Sicurezza
- Cos’è l’autenticazione
- Rischi delle tecnologie, attacchi più comuni e trasmissione dat i su reti
- Processo di autenticazione tramite smart card
•
Smart card: autenticazione utenti sotto
Windows
13
Analisi dei dispositivi hardware e software utilizzati
- Smart card
- Lettore smart card
- Gemplus SmartDiag v2.0
- GemXpresso RAD III
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
15
16
Quello che un utente possiede: i dispositivi hardware
Quello che un utente conosce: le password
Chiave hardware
La password è l'insieme di caratteri alfanumerici, di lunghezza variabile, che immessa in un
sistema ne permette l'accesso.
Per definizione nessuna password è sicura al 100%.
Per incrementarne la sicurezza si può ricorrere alle password dinamiche.
Sono password composte da una porzione alfanumerica fissa e una porzione alfanumerica, o
più spesso solo numerica, che cambia ad ogni intervallo di tempo.
Smart card
Un esempio di questo sistema è fornito dall’ RSA.
Proximity tools
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
17
Smart card: autenticazione utenti sotto
Windows
18
3
Quello che un utente è: i dispositivi biometrici
Quali sono i rischi derivanti dall’utilizzo di queste tecnologie?
E’ un sistema di riconoscimento che stabilisce l'autenticità di una caratteristica
fisiologica o del comportamento di un utente.
Il rischio maggiore è che la macchina non sia in grado di distinguere tra soggetti
autorizzati ad accedere ad una risorsa e soggetti non autorizzati.
Gli hackers giocano proprio su questo punto debole del sistema, ossia cercano di
“farsi riconoscere” come persone autorizzate.
Tipi di attacchi:
- tentativi di indovinare le password
- impossessarsi dei dispositivi hardware (chiavi USB, smart card,…)
- ”man in the middle”
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
19
20
Quanto è sicura la trasmissione di dati su reti protette da
protocolli di codifica
Quali sono i metodi di attacco più comuni?
Password cracker:
• dictionary based (veloce ma non molto efficace)
tipo di attaccante
• brute force attack (lento ma quasi infallibile)
Hacker
Smart card: autenticazione utenti sotto
Windows
21
Chiave a 40 bit
Chiave a
46 bit
Chiave a
56 bit
Chiave a
80 bit
Chiave a
128 bit
5 h.
10.000 anni
700.000.000
anni
700.000.000
anni
10 27 anni
PMI
2 sec.
1 anno
70.000 anni
70.000 anni
10 19 anni
Grande Impresa
2 ms.
9 gg.
7000 anni
7.000 anni
10 16 anni
Intelligence
Agency
2 ms.
13 sec.
7 anni
7 anni
10 15 anni
Smart card: autenticazione utenti sotto
Windows
22
Interazione utente con un’Infrastruttura a Chiave Pubblica
Processo di autenticazione tramite smart card
Opera il riconoscimento, tra smart card e mondo esterno.
Lo standard ISO definisce tre tipi di autenticazione:
- interna
- esterna
- reciproca
La suddivisione è definita in base e chi effettivamente effettua la verifica
dell’identità (il mondo esterno, la card o entrambi).
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
23
Smart card: autenticazione utenti sotto
Windows
24
4
•
•
Smart card
SOMMARIO
Kerberos
- Veduta d’insieme
- Struttura e classificazione delle smart card
- Lettore e terminale di base
- Standard
- Sicurezza
Consente ad un processo (client) per conto di un utente (user) di autenticarsi presso
un verificatore.
L’autenticazione viene effettuata senza spedire dati significativi attraverso la rete.
Autenticazione
- Cos’è l’autenticazione
- Rischi delle tecnologie, attacchi più comuni e trasmissione dat i su reti
- Processo di autenticazione tramite smart card
•
Smart card: autenticazione utenti sotto windows
- Introduzione
- Chiave pubblica: concetti
- Smart card authentication
- Programmare una smart card
•
Analisi dei dispositivi hardware e software utilizzati
- Smart card
- Lettore smart card
- Gemplus SmartDiag v2.0
- GemXpresso RAD III
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
25
26
Domini, Foreste e Fiducia
Active Directory
E’ un “namespace” (spazio di nomi): un’area limitata nella quale un dato nome può
essere risolto.
Un dominio è un singolo confine di sicurezza in Windows 2000, avente le proprie
politiche e relazioni di sicurezza con gli altri domini.
La risoluzione del nome è il processo di traduzione di un nome in qualche oggetto
o informazione che esso rappresenta.
Quando domini multipli sono connessi da relazioni di fiducia ci troviamo di fronte
ad un “domain tree” (albero di dominio).
Una directory telefonica, ad esempio, forma un namespace nel quale i nomi degli
abbonati telefonici possono essere risolti in numeri telefonici.
Alberi di dominio multipli possono essere connessi assieme in una “foresta”.
Smart card: autenticazione utenti sotto
Windows
27
Smart card: autenticazione utenti sotto
Windows
28
Smart card: autenticazione utenti sotto
Windows
30
Certificati
Cos’è un’infrastruttura a chiave publica?
E’ un insieme di componenti che gestiscono certificati e chiavi, utilizzati per la codifica
e per servizi di firma digitale.
I componenti del PKI di Windows 2000 includono:
• servizi dell’autorità di certificazione (CA)
• Microsoft CryptoAPI
• politiche di infrastruttura
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
29
5
Lo standard dei certificati X.509
Autorità di Certificazione (CA)
Nello standard X.509 v3 un certificato consiste dei seguenti campi :
•
•
•
•
•
•
•
•
•
•
•
I certificati sono emessi da un’autorità di certificazione (CA), che garantisce per
l’identità di coloro per cui emette i certificati e a cui associa una data chiave.
versione
numero seriale
ID dell’algoritmo di firma
nome di chi ha emesso il certificato
periodo di validità
nome dell’utente
informazioni sulla chiave pubblica dell’utente
identificatore (unico) dell’emittente (versione 2 e 3)
identificatore (unico) dell’utente (versione 2 e 3)
estensioni (solo versione 3)
firma dei campi precedenti
Smart card: autenticazione utenti sotto
Windows
Per prevenire la perdita di certificati, la chiave pubblica della CA deve essere
attendibile.
Una CA deve pubblicizzare la sua chiave pubblica ed esibire un certificato di un’altra
CA a più alto livello che attesti la validità della propria chiave.
31
Smart card: autenticazione utenti sotto
Windows
32
Smart card: autenticazione utenti sotto
Windows
34
Logon interattivo
Smart card authentication
Una smart card può essere utilizzata per autenticarsi ad un dominio Windows 2000 in tre
modi:
• Logon interattivo: l’utente, inserendo il PIN, si autentica alla macchina utilizzando la
smart card
• Autenticazione client: la smart card è utilizzata durante la generazione di una sessione
sicura con SSL o TLS
• Logon remoto: utilizza certificati a chiave pubblica per autenticare un user remoto
ad un account memorizzato in Active Directory
Smart card: autenticazione utenti sotto
Windows
PIN
33
Logon interattivo
Autenticazione client
Dopo che l’user inserisce il PIN nella finestra di logon, il sistema operativo inizia una
sequenza di azioni per determinare se l’utente può essere identificato e autenticato.
Windows 2000, in questa fase, utilizza:
• Protocollo Kerberos versione 5
Il ruolo della smart card nell’autenticazione client è quello di firmare una parte del
protocollo durante la sessione iniziale di negoziazione SSL.
La chiave privata corrispondente al certificato a chiave pubblica è memorizzata sulla
smart card quindi il metodo di autenticazione è “forte”.
• Certificati X.509
• Microsoft CryptoAPI
L’operazione che coinvolge la chiave privata è fatta sulla card; in tal modo la chiave
privata non è mai esposta al computer host o alla rete.
• Active Directory
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
35
Smart card: autenticazione utenti sotto
Windows
36
6
Autenticazione client
Logon remoto
Per le connessioni di rete e remote è possibile utilizzare i seguenti metodi e protocolli di
autenticazione:
•
•
•
•
•
Protocollo PAP (Password Authentication Protocol)
Protocollo CHAP (Challenge Handshake Authentication Protocol)
Protocollo SPAP (Shiva Password Authentication Protocol)
Protocollo MS-CHAP (Microsoft Challenge Handshake Authentication Protocol)
Protocollo MS-CHAP v2 (Microsoft Challenge Handshake Authentication Protocol
versione 2)
• Protocollo EAP (Extensible Authentication Protocol)
• Autenticazione basata su smart card e altri certificati
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
37
Programmare una smart card
Non si può pensare di comperare un insieme di smart card, distribuirle agli utenti
e aspettarsi che esse lavorino.
Queste devono prima essere programmate da un amministratore.
•
Smart card
•
Autenticazione
38
SOMMARIO
- Veduta d’insieme
- Struttura e classificazione delle smart card
- Lettore e terminale di base
- Standard
- Sicurezza
- Cos’è l’autenticazione
- Rischi delle tecnologie, attacchi più comuni e trasmissione dat i su reti
- Processo di autenticazione tramite smart card
La procedura da seguire può essere suddivisa in quattro passi:
•
1. configurare la CA per emettere i certificati corretti
2. specificare la politica che stabilisce quali user possono iscriversi per questi
certificati
3. configurare l’account dell’agente di iscrizione
4. iscrivere gli user per le smart card
Smart card: autenticazione utenti sotto windows
- Introduzione
- Chiave pubblica: concetti
- Smart card authentication
- Programmare una smart card
•
Analisi dei dispositivi hardware e software utilizzati
- Smart card
- Lettore smart card
- Gemplus SmartDiag v2.0
- GemXpresso RAD III
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
39
40
Lettore smart card
Smart card
Reader
Gemplus GemPC410 0
Message
The reader is available for use.
Message Details
The diagnostic tool recognizes this reader and did not find any problem.
MessageDetailsNote
front
back
Caratteristiche:
•
•
•
•
•
Java Card 2.1 API
Java Card 2.1 VM
Visa OP 2.0.1
Security algorithm: 3-DES & RSA (512 bit-key)
8 bit processor
Vendor
Gemplus
Type
COM Device
Maximum Data Rate
115200
Model
GemPC410 or Compatible
Plug and Play ID
GEM0410
Version
GemCore-R1.21-GM
Certifications
Designed for Windows 98, NT4 and 2000
Information Web Page
http://www.gemplus.com
Driver File Name
gemser.sys
Driver File Version
2.0.10.0
Driver Signature
Latest Driver
Card ATR
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
41
3F 6D 00 00 80 31 80 65 B0 05 01 02 5E 83 00 90 00
Smart card: autenticazione utenti sotto
Windows
42
7
Gemplus SmartDiag v 2.0
GemXpresso RAD III
Questo programma verifica che il lettore di smart card e la card in esso contenuta, siano
disponibili per altri programmi.
Permette di sviluppare, simulare, testare le applicazioni e gli applets della Java card
rendendo la programmazione più facile e più efficente.
Comprende due software per poter interoperare con una smart card:
- JCardManager
- GemXpresso Simulator
Smart card: autenticazione utenti sotto
Windows
43
Smart card: autenticazione utenti sotto
Windows
44
Smart card: autenticazione utenti sotto
Windows
46
Smart card: autenticazione utenti sotto
Windows
48
Tools
JCardManager
Smart card: autenticazione utenti sotto
Windows
45
Change PIN
Authenticate
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
47
8
Get Data
Delete
Smart card: autenticazione utenti sotto
Windows
49
Get memory space
Smart card: autenticazione utenti sotto
Windows
50
Smart card: autenticazione utenti sotto
Windows
52
Smart card: autenticazione utenti sotto
Windows
54
Get status
Smart card: autenticazione utenti sotto
Windows
51
Put data
Install
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
53
9
Put key
Quick load
Smart card: autenticazione utenti sotto
Windows
55
Reset
Smart card: autenticazione utenti sotto
Windows
56
Smart card: autenticazione utenti sotto
Windows
58
Smart card: autenticazione utenti sotto
Windows
60
Select
Smart card: autenticazione utenti sotto
Windows
57
Send APDU
Set status
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
59
10
Upload File into a Card
GemXpresso Simulator (GSE GUI)
Visualizza contesti di smart card simulate e tiene traccia dei comandi e delle
risposte scambiate tra la card simulata e un’applicazione client (come ad esempio
JCardManager).
Smart card: autenticazione utenti sotto
Windows
61
Smart card: autenticazione utenti sotto
Windows
62
GemXpresso Simulator (GSE GUI)
• Option(s) . Si possono specificare le seguenti opzioni:
-card simmode dove simmode può essere:
JAVACARD_21
JAVACARD_21_IS
GXP211V2
GXP211V2_IS
GXP211_PK
GXP211_PS_IS
GXPLITE
GXXV3
-atr ATRvalue
-motherkey customkey
-serial customserialno
Smart card: autenticazione utenti sotto
Windows
Smart card: autenticazione utenti sotto
Windows
63
11
Scarica

Smart card: autenticazione utenti sotto