Sistemi di autenticazione

Documenti analoghi
Metodologie di autenticazione Sistemi di autenticazione

Metodologie di autenticazione. Sistemi di autenticazione. Autenticazione degli utenti. Password (ripetibili) Password ripetibili. Password ripetibili

Sistemi di autenticazione Antonio Lioy < polito

Sistemi di autenticazione Antonio Lioy < polito

Sistemi di autenticazione. Sistemi di autenticazione

Sistemi di autenticazione

Metodologie di autenticazione. Sistemi di autenticazione. Autenticazione degli utenti. Password (ripetibili) Password ripetibili. Password ripetibili

Metodologie di autenticazione. Sistemi di autenticazione. Autenticazione degli utenti. Password (ripetibili) Password ripetibili. Password ripetibili

Autenticazione utente

Tecnologie e applicazioni web Autenticazione

Distribuzione e certificazione delle chiavi

Applicazioni per l autenticazione Sicurezza nelle reti di TLC - Prof. Marco Listanti - A.A. 2008/2009

StarShell. Autenticazione. StarShell

Sicurezza dei sistemi e delle reti 1

Sicurezza dei sistemi e delle reti 1. Lezione XIII: Lo schema di Lamport. Lo schema di Lamport. Lo schema di Lamport. Mattia Monga. a.a.

maurizio pizzonia sicurezza dei sistemi informatici e delle reti. tecniche crittografiche e protocolli

Seminario sulla Crittografia. Corso: T.A.R.I Prof.: Giulio Concas Autore: Ivana Turnu

Distribuzione delle chiavi

Protocolli per l instaurazione di chiavi effimere - Kerberos

Password. Password. Davide Cerri. Davide Cerri CEFRIEL - Politecnico di Milano Autenticazione utente

Sicurezza Documentale a.a. 2017/2018 DOCENTI: DOTT.SSA VALERIA FIONDA DOTT. GIUSEPPE PIRRÒ

Tecniche e sistemi di autenticazione. Definitions of authentication. Definitions of authentication. Antonio Lioy - Politecnico di Torino ( ) 1

Meccanismi di autenticazione sicura. Paolo Amendola GARR-CERT

Sistemi di autenticazione. Metodologie di autenticazione. Autenticazione degli utenti. Password (ripetibili) Antonio Lioy < polito.

Infrastruttura di strong authentication basata su One Time Password per l accesso VPN

Livello Applicazioni Elementi di Crittografia

Tecnologie e applicazioni web JSON Web Token (JWT)

Identificazione, Autenticazione e Firma Digitale. Firma digitale...

Sicurezza delle reti 1

Quando si inviano pacchetti da firewall a firewall si introduce un nuovo IP header. E necessario?

Uso di Internet: Esempio. Prof. Franco Callegati

Sicurezza informatica: esercitazione 1

Crittografia a chiave pubblica

Sicurezza delle reti. Monga. L autenticazione in rete Password. Altre credenziali OTP. Sicurezza delle reti. Monga.

Elementi di Sicurezza e Privatezza Lezione 5 Protocolli Crittografici (1)

Confidenzialità e crittografia simmetrica. Contenuto. Scenario tipico. Intercettazione dei dati. Uso della crittografia simmetrica

Confidenzialità e crittografia simmetrica. Contenuto. Scenario tipico. Corso di Sicurezza su Reti Uso della crittografia simmetrica

Confidenzialità e crittografia simmetrica. Contenuto. Scenario tipico. Sicurezza su reti Uso della crittografia simmetrica

La sicurezza del sistema informativo

Autenticazione Debole Claudio Gaz

Privacy e firma digitale

Corso di Qualità del Servizio e Sicurezza nelle reti A.A. 2014/2015. Lezione del 18 Maggio 2015

Sicurezza. Ingegneria del Software e sicurezza. Alice, Bob, e Trudy. Sicurezza non si caratterizza in modo semplice

AIEA. Anti Fraud Optimization attraverso la Strong Authentication. Associazione Italiana Information Systems Auditors

Definizione di sicurezza. Sicurezza in Informatica. Sicurezza per il singolo utente. Panoramica. Per sicurezza si intende la protezione delle risorse

IL BACKUP DEI DATI backup restore

IT Security / 4 - Controllo di accesso

Sicurezza delle reti 1

Pattern Recognition and Applications Lab AUTENTICAZIONE. Giorgio Giacinto.

Sicurezza in Informatica

Elementi di Sicurezza e Privatezza Lezione 18 Autenticazione: Single Sign On

Crittografia a chiave pubblica

We secure your communication

Corso di Informatica

CYBERSECURITY e INDUSTRIA 4.0 I punti deboli di una rete aziendale e le possibili contromisure

Elementi di Sicurezza e Privatezza Lezione 5

Sicurezza in Informatica

Due applicazioni pratiche: l'autenticazione tramite Smart Card e la firma digitale massiva

Il presente documento rileva i parametri di configurazione hardening per i seguenti protocolli, su router Cisco con software IOS

DIKE IC OTP Manuale installazione

Le firme elettroniche e i sistemi di firma. Approcci al problema della sicurezza

Sicurezza della comunicazione tra due entità. Prof.ssa Gaia Maselli

DI GESTIONE E CONSERVAZIONE DEI DOCUMENTI

Esercitazione 4 S/Key

RETI DI CALCOLATORI II

Architetture Client/Server. Un architettura è centralizzata quando i dati e le applicazioni (programmi) risiedono in un unico nodo elaborativo

Crittografia: Servizi richiesti

ITC Mossotti - Novara. Verica di Informatica. Nome e Cognome:... 1) Nella cifratura convenzionale. 2) Nella crittograa a chiave pubblica

Studio di reti di sensori con comportamento ciclico con il simulatore Castalia. Corso di Laurea in Informatica

Università degli Studi di Brescia Corso di Laurea Magistrale in Ingegneria Informatica

Manuale Registrazione e Validazione Bandi Online

Corso di Qualità del Servizio e Sicurezza nelle reti A.A. 2014/2015. Lezione del 11 Maggio 2015

Funzioni Hash. Impronta Digitale. L impronta digitale viene utilizzata per

Converte una chiave di al più 14 word a 32 bit (K-array) in un array di 18 sottochiavi a 32 bit (P-array) Genera 4 S-box, ognuna con 256 word a 32 bit

Numeri casuali. Randomness by obscurity. Generazione Deterministica? Caratteristiche del sistema. Caratteristiche del sistema

Tecnologia dell Informazione

Payment Service Directive PSD2

Basi di Dati Architetture Client/Server

Cambio Password v

Architetture Client/Server e World Wide Web

La sicurezza delle informazioni

Architetture Client/Server. Un architettura è centralizzata quando i dati e le applicazioni (programmi) risiedono in un unico nodo elaborativo

Sistemi operativi e reti 1

Sicurezza dei sistemi e delle reti 1

UDP. User Datagram Protocol. UDP Connectionless

Portale Titolare PTIT - Portale Titolare MU - Manuale utente PTIT

!"### "$ " Applicazioni. Autenticità del messaggio M Integrità del messaggio M. Stelvio Cimato DTI Università di Milano, Polo di Crema

Corso di Sicurezza nelle reti a.a. 2009/2010. Raccolta di alcuni quesiti del corso da 5CFU e prima parte del corso da 9CFU

Numeri casuali. Randomness by obscurity. Generazione Deterministica? Caratteristiche del sistema. Caratteristiche del sistema

INDICE INTRODUZIONE E SCOPO DEL DOCUMENTO ORGANIZZAZIONE DEL DOCUMENTO. Introduzione e scopo del documento SICUREZZA... 8

Sicurezza nei Sistemi Distribuiti

Sicurezza nei Sistemi Distribuiti

IOS-XR ICMP. Il presente documento rileva i parametri di configurazione hardening per i seguenti protocolli, su router Cisco con software IOS-XR

Capitolato tecnico della manifestazione di interesse: servizio triennale di firma digitale remota mobile e della marcatura temporale di Telecom

Il protocollo SSL! Il protocollo SSL! (Secure Socket Layer)! "Uno dei protocolli più diffusi nelle comunicazioni sicure:!

Autenticazione ultra-sicura per proteggere l accesso a rete e risorse

ALLEGATO N. 5. I - Misure di carattere generale

GUIDA ATTIVAZIONE TOKEN SOFTWARE

Crittografia e sicurezza delle reti. Rassegna Autenticazione Protocolli di autenticazione X.509, Kerberos

Transcript:

Sistemi di autenticazione Antonio Lioy < lioy @ polito.it > Politecnico i di Torino Dip. Automatica e Informatica Metodologie di autenticazione basate su meccanismi diversi ( 1/2/3-factors authentication ): qualcosa che so pippo! (es. una password) qualcosa che posseggo (es. una carta magnetica) qualcosa che sono (es. impronta digitale) possibilità di combinare meccanismi diversi per passare da semplice autenticazione ad identificazione 1

Autenticazione degli utenti server { UID : f (S UID) ) } richiesta di autenticazione UID richiesta di una prova prova = F (S UID ) utente (UID) segreto (S UID ) conservazione dei segreti? verifica della prova? conservazione del segreto? introduzione del segreto? trasmissione della prova? Password (ripetibili) server { UID : PUID } o { UID : H UID } richiesta di autenticazione ti i UID richiesta della password P UID utente (UID) segreto (P UID ) 2

Password ripetibili segreto = la password dell utente (client) creazione e trasmissione prova : F = I (la funzione identità) ossia prova = password (in chiaro!) (server) memorizzazione e validazione della prova caso #1: f = I (la funzione identità) il server conserva le password in chiaro (!), P UID controllo d accesso: prova = P UID? caso #2: f = one-way hash (ossia digest) il server conserva i digest delle password, H UID controllo d accesso: f(prova) = H UID? Password ripetibili vantaggi: semplice per l utente... a condizione che ne abbia una sola svantaggi: conservazione della password lato utente (post-it!) password indovinabile (il nome di mio figlio!) password leggibile durante la trasmissione conservazione/validazione della password lato server il server deve conoscere in chiaro la password o un suo digest non protetto (dictionary attack) 3

Password suggerimenti per renderle meno pericolose: caratteri alfabetici (maiuscoli + minuscoli) + cifre + caratteri speciali lunghe (almeno 8 caratteri) parole non presenti in dizionario cambiate frequentemente (ma non troppo!) non usarle :-) uso di almeno una password (o PIN o codice di accesso o...) inevitabile a meno di usare sistemi biometrici Memorizzazione delle password MAI in chiaro! password cifrata? il server deve però conoscere la chiave in chiaro memorizzare un digest della password ma si presta ad attacchi dizionario: sia HP l hash di una password for (each Word in Dictionary) do if ( hash(word) = HP) then write ( trovata!, Word) tecnica velocizzabile tramite rainbow table occorre quindi introdurre una variazione imprevedibile chiamata salt 4

Uso del salt per memorizzare password per ogni utente UID: scegliere / chiedere la pwd generare un salt random (meglio se contiene caratteri poco usati o di controllo) calcolare HP = hash ( pwd salt ) memorizzare le triple { UID, HP, salt UID } evita di avere HP uguale per utenti diversi ma con stessa pwd rende praticamente impossibili gli attacchi dizionario (inclusi quelli basati su rainbow table) Sistemi a sfida (simmetrici) una sfida (tipicamente un numero random) viene inviato all utente...... che risponde con la soluzione effettuando un calcolo che coinvolge il segreto e la sfida il server deve conoscere in chiaro il segreto spesso la funzione R è una funzione di hash UID utente sfida soluzione = R (sfida, S UID ) { UID : S UID } S UID 5

Mutua autenticazione con protocolli a sfida simmetrici (v1) A S B Alice enc (K AB, S B ) S A Bob enc (K AB, S A ) Mutua autenticazione con protocolli a sfida simmetrici (v2) A, S A Alice S B, enc (K AB, S A ) Bob enc (K AB, S B ) 6

Sistemi a sfida (asimmetrici) un numero random R viene cifrato con la chiave pubblica dell autenticando...... il quale risponde inviando i R in chiaro grazie alla sua conoscenza della chiave privata cert (Lioy, KpubLioy) utente sfida = E (R, KpubLioy) utenti abilitati soluzione = R chiave privata Pericoli delle sfide asimmetriche fiducia nella CA che ha emesso il certificato verifica del name costraint sulle CA accettate possibilità di far deporre una firma RSA inconsapevolemente: se R=digest(documento)... e lo sfidante invia R in chiaro e lo richiede cifrato con la chiave privata... allora lo sfidato ha inconsapevolmente firmato il documento!!! 7

Password (usa-e-getta) server richiesta di autenticazione ti i UID richiesta della password n. 48 utente (UID) UID : S UID P48 = p ( 48, S UID )? P48 UID P50 UID P49 UID P48 UID P47 UID P46 UID... Password usa-e-getta OTP (One-Time Password) idea originale: Bell Labs sistema S/KEY implementazione di pubblico dominio implementazioni commerciali con generatori automatici hardware (autenticatore) 8

Come fornire password OTP agli utenti? per uso su postazioni stupide o insicure: password pre-calcolate e scritte su un foglio autenticatori hardware (criptocalcolatrici) per uso su postazioni sicure e intelligenti: programmi di calcolo eventualmente integrati col sw (telnet, ftp,...) o hw (modem) di comunicazione RFC-1760 Il sistema S/KEY (I) l utente genera un segreto S (il seme) l utente calcola N one-time password: P 1 = h (S) P 2 = h (P 1 ) = h( h(s) )... l utente inizializza il server di autenticazione con l ultima password (es. P 100 ) 9

Il sistema S/KEY (II) il server chiede le password in ordine inverso: P99? X h (X) = P100? memorizza X in questo modo: il server non deve conoscere il segreto del client solo il client conosce tutte le password RFC-1760 usa MD4 (possibili altre scelte) implementazione public-domain per Unix, MS-DOS, Windows, MacOs S/KEY generazione della password l'utente inserisce una pass phrase (PP) da almeno 8 caratteri alla PP viene concatenato t un seme (seed) inviato i dal server dal risultato viene estratto un hash MD4 su 64 bit (effettuando un EX-OR tra primo gruppo di 32 bit e terzo, e tra secondo e quarto gruppo) 10

S/KEY password 64 bit di lunghezza della password sono un compromesso non troppo lunga né troppo insicurai possibile inserirla come sequenza di 6 parole inglesi corte scelte da un dizionario di 2048 (es: "A", "ABE", "ACE", "ACT", "AD", "ADA") client e server devono avere lo stesso dizionario Problemi delle OTP scomode da usare in assoluto scomode da usare per accesso a servizi multipli basati su password (es. POP con check periodico della posta) costose se basate su autenticatori hardware non possono essere usate da un processo ma solo da un umano 11

Problemi degli autenticatori hardware denial-of-service: tentativi falliti appositamente per negare l accesso social engineering: telefonata per denunciare smarrimento e chiedere l inizializzazione di una nuova carta Password (usa-e-getta con autenticatore) server richiesta di autenticazione UID utente (UID) richiesta della password delle 11:07 UID : S UID P1107 UID P1107 = p ( 11:07, S UID )? 12

RSA SecurID inventato e brevettato da Security Dynamics meccanismo OTP di tipo sincrono: P UID ( t ) = h ( S UID, t ) codice di accesso ( token-code ): 8 cifre decimali casuale, non ripetibile cambia ogni 60 s deriva massima di 15 s / anno validità massima 4 anni basato su algoritmo di hash proprietario SecurID: architettura il client invia al server in chiaro user, PIN, token-code (seed, time) in base a user e PIN il server verifica contro tre possibili token-code: TC -1, TC 0, TC +1 duress code: PIN che fà scattare un allarme (utile sotto minaccia) limite al numero di tentativi di autenticazione errati (default: 10) possibile avere tre diverse chiavi di accesso (per tre diversi sistemi) 13

SecurID: hardware SecurID Card: carta classica SecurID PinPad: introduzione del PIN ed invio solo di user e token-code* SecurID Key Fob: formato portachiavi SecurID modem: modem PCMCIA-II V.34 contenente un token attivabile via sw tramite l introduzione del PIN SecurID: software SoftID come un PinPad ma sw trasmissione automatica o manuale del risultato problema: sincronizzazione dei clock 14

SecurID: architettura token OK? ACE server token OK? ACE client OK! KO! ACE client TELNET server DBMS server user, PIN, TC user, TC* TELNET client SecurID (normale) DBMS client SecurID (pinpad) ACE/client SecurID: client gestisce il dialogo con l ACE/server canale crittografato sd_ftp per FTP sicuro disponibile per: Unix Win32 Netware Macintosh TACACS 15

SecurID: server ACE/server: autenticazione con SecurID monitor, audit e report interfaccia di gestione GUI authentication API interfaccia SQL per accesso ad un DBMS avente i dati degli utenti vasto supporto commerciale sia per prodotti di sicurezza (es. firewall) sia di comunicazione (es. comm. server) disponibile per Solaris, AIX, HP-UX, NT, 2000, XP CRYPTOCard meccanismo a sfida usa DES-CBC unico prodotto: RB-1 card display LCD a 8 cifre (hex, dec) batterie sostituibili dall utente (autonomia di 3-4 anni) per evitare di inserire la challenge, si può memorizzare l ultima e calcolare automaticamente la prossima server per Unix e Windows (Radius, Tacacs+) 16

CRYPTOcard: hardware Autenticazione di esseri umani come essere certi di stare interagendo con un essere umano e non con un programma (es. che invia una password memorizzata in un file)? due soluzioni: tecniche CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart) es. immagini di caratteri distorti tecniche biometriche i es. impronte digitali 17

Sistemi biometrici misurano una caratteristica biologica dell utente principali caratteristiche usate: impronte digitali voce scansione della retina scansione della pupilla utili per sostituire *localmente* un PIN o una password Problemi dei sistemi biometrici FAR = False Acceptance Rate FRR = False Rejection Rate FAR e FRR sono in parte aggiustabili ma dipendono moltissimo dal costo del dispositivo caratteristiche fisiche variabili: ferita su un dito voce tremante per l emozione vasi oculari dilatati per alcool o droga 18

FAR / FRR Problemi dei sistemi biometrici accettazione psicologica: timore di essere schedati paura di danneggiamento mancanza di API / SPI standard: alti costi di sviluppo dipendenza da un solo fornitore in corso di sviluppo una API / SPI standard ed unitaria basata su CDSA 19

API? SPI? middleware! APP1 APP2 API (Application Programming Interface) middleware (es. CDSA) SPI (Service Programming Interface) dispositivo / servizio n. 1 dispositivo / servizio n. 2 dispositivo / servizio n. 3 Kerberos sistema di autenticazione basato su una terza parte fidata (TTP = Trusted Third Party) sviluppato nel progetto Athena al MIT password mai trasmessa ma solo usata localmente come chiave di crittografia (simmetrica) realm = dominio di Kerberos, ossia insieme di sistemi che usano Kerberos come sistema di autenticazione credenziale = user.instance@realm 20

ticket Kerberos struttura dati che autentica un client nei confronti di un server durata variabile (V4: max 21 ore = 5 x 255) (V5: illimitata) crittografato con la chiave DES del server a cui è destinato legato all indirizzo IP del client legato ad una sola credenziale autenticazione semplice o mutua Organizzazione di Kerberos K UID, K TGS AS Authentication Server { TGT } TGT K S TGS Ticket Granting Server T s richiesta client T s (application) server 21

Kerberos: formato dei dati (v4) TICKET AUTENTICATORE server-id client-id client-address timestamp client-id client-address timestamp life K S,C KS KS,C Richiesta del TGT C, TGS C A S { K C,TGS, { T C,TGS } K TGS } K C client Authentication Server 22

Richiesta del Ticket C s, {T C,TGS }K TGS, {A C }K C,TGS { { T C,S } K S, K C,S } K C,TGS T G S client Ticket Granting Server Uso del Ticket {T C,S }K S, {A C }K C,S C { timestamp(a C ) + 1 } K C,S S client server (applicativo) 23

Versioni di Kerberos MIT V4 (originale) MIT V5 (RFC-1510) non solo DES durata maggiorata (inizio-fine) inter-realm authentication forwardable ticket ticket estesi OSF-DCE basata su MIT V5 implementato come RPC invece che come protocollo a messaggi Problemi di Kerberos richiede la sincronizzazione dei clock all interno di una LAN è una cosa comunque utile in WAN crea problemi Kryptoknight (alias IBM NetSP) ha rimosso questa limitazione accesso remoto richiede password in chiaro canale cifrato oppure integrazione con OTP, sfida, o chiave pubblica modem in dial-up Kerberizzati 24

Vantaggi di Kerberos login unico per tutti i servizi kerberizzati K-POP, K-NFS, K-LPD K-telnet, K-ftp K-dbms il meccanismo dei ticket è ideale per connessioni intermittenti computer portatili ISDN, WiFi crescente supporto commerciale (MS usa Kerberos* a partire da Windows-2000) SSO (Single Sign-On) fornire all utente un unica credenziale con cui autenticarsi per svolgere tutte le operazioni su qualunque sistema SSO fittizio: client per sincronizzazione/gestione automatica pwd (alias password wallet ) specifico per alcune applicazioni vero SSO: tecniche di autenticazione multiapplicazione (es. sistemi a sfida asimmetrici, Kerberos) quasi sempre richiede modifica delle applicazioni 25

Interoperabilità OATH (www.openauthentication.org) interoperabilità dei sistemi basati su OTP, sfida simmetrica i e asimmetrica i in corso di definizione gli standard per il protocollo client-server e per il formato dati sul client (draft RFC): HOTP (HMAC OTP, RFC-4226) challenge-response protocol bulk provisioning symmetric key container 26