Introduzione alle tematiche dei seminari - Fabio Martinelli (IIT-CNR)

Pagina creata da Sofia Calabrese
 
CONTINUA A LEGGERE
Introduzione alle
         tematiche dei seminari
                                       Fabio Martinelli
                                                  (IIT-CNR)

                                       Fabio.Martinelli@iit.cnr.it

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Contenuti dei seminari
      • Concetti di base
      • Controllo accessi
           – Autenticazione/Autorizzazione/Accounting (AAA)
      • Protocolli di sicurezza
           – E.g., Protocolli di autenticazione/scambio chiavi
             (Key exchange)/etc..

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Perché il problema della sicurezza
        dei computer e’ differente (1)
      “Sono i problemi di sicurezza più difficili di quelli ordinari?
      Direi di si, non per motivi tecnici ma sociali:
      Considerate un problema comune come una libreria che calcola on
         maniera sbagliata la radice di 2 mentre apparentemente calcola
         tutto il resto bene. Dopo un certo periodo di tempo (e di ilarità)
         la comunità risponderà che o si cambia la libreria oppure non si
         usa la radice di 2 in tale libreria.
      Se un problema di sicurezza e’ trovato in un sistema, c’e’ gente
         nella comunità che considererà una propria priorità fare si che il
         comportamento sbagliato accada, (tipicamente nei computer di
         altri)”
                          (Roger Needham ( ?-2003) - Director of Microsoft Research -
                                                                          Cambridge)

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Perché il problema della
                     sicurezza dei computer e’
                           differente (2)
      “Nella maggior parte dei corsi imparate come
        organizzare un sistema per fare in modo che certi
        eventi si realizzino.
      La sicurezza dei computer e’ differente: voi volete
        organizzare le cose per prevenire che certi eventi si
        realizzino
      Questo rende la computer security abbastanza vicino
        alla contraccezione.... “
                         (Roger Needham ( ?-2003) - Director of Microsoft Research -
                                                                         Cambridge)

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Informazioni preliminari
       • Il corso e’ per laureati
             – Le lezioni introducono le idee e danno le intuizioni
             – Ulteriori approfondimenti si possono avere leggendo
               il materiale aggiuntivo citato durante le lezioni
       • Come si passa l’esame per il corso?
             – Progetti!
             – Ne discuteremo nella ultima lezione...

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Concetti di base

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Computer Security

      • Scopo:
            – Proteggere le risorse (sia in termini di informazione che di
              comunicazione) anche in presenza di comportamenti maligni
              (ostili)
      • Nota:
            – Il corso descrive essenzialmente le minaccie che hanno un
              carattere tecnologico, ma va tenuto presente che la maggior
              parte degli attachi e’ dovuto a essenzialmente a tecniche di
              ingegneria sociale
      • Lettura consigliata:
            – R. Anderson, “Why Cryptosystems fail”, Communications of
              the ACM

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Personaggi

      • Utenti/agenti:
            – Spesso di usa la semplificazione di usare specici nomi per utenti o
              processi che agiscono per conto di (on behalf) di certi utenti:
                   • Alice e Bob sono in genere considerati utenti “onesti” che
                     ionteragiscono per portare a termine uin certo compito
                   • Eve e Mallory, sono I nomi usati per utenti/agenti che provono ad
                     interferire con loro
      • Nota:
            – Non dobbiamo attribuire forma umana ai processi in esecuzione su
              di un computer. Il termine utente (user) e’ spesso usato per
              descrivere un utente umano o un processo che viene eseguito on
              behalf di un utente o di un processo che a sua volta etc..
      • Terminologia usata spesso Principal
            – Una entita’ in un sistema o nella rete che ha bisogno di servizi o
              meccanismi di sicurezza

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Proprieta’ di sicurezza
                                              (alcune)
      • Confidenzialita’ (Confidentiality)
            – L’informazione e’ rilasciata soltanto a principals the sono
              autorizzati a conoscerla
            – Riservatezza (Privacy): il diritto di un individuo di
              decidere quando, che cosa, perche’ e chi puo’ maneggiare la
              sua informazione personale
      • Integrita’ (Integrity)
            – Informazione e beni digitali connessi (digital assets) possono
              essere modificati soltanto da principals autorizzati e in
              maniera autorizzata
      • Disponibilita’ (Availability)
            – Informazione e beni digitali connessi dovrebbero essere
              accessibili ai principals autorizzati (prevenzione del Denial of
              service o DoS)
C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Vulnerabilita’, minaccie e
                        rischi
       • Vulnerabilita’ (Vulnerability)
             – Debolezze del sistema che potrebbero portare ad una
               compromissione delle proprieta’ di sicurezza del sistema
                    • Esempi: Personale non qualificato, insufficiente protezione della
                      rete, etc..
       • Minaccia (Threat)
             – Eventi, azioni che potrebbero causare compromissione della
               sicurezza del sistema
                    • Esempi: attaccanti esterni (intruders), attaccanti interni (malicious
                      insiders), malware (malicious software)
       • Difese (Counter-measure)
             – Tecniche e meccanismi per ridurre le vulnerabilita’
                    • Esempio: autenticazione di chi accede al sistema, controllo
                      accessi, copie di backup, etc..

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Servizi di sicurezza
       • Identificazione/Autenticazione
             – Identificare i principals e verificare le loro affermazioni
       • Controllo accessi (Access Control)
             – Stabilire a priori l’esito di richieste di accesso (si/no) a risorse
               sulla base di regole di accesso stabilite (policy)
                    • Normalmente si tratta di considerare accessi diretti alle risorse, a
                      volte in ambienti miltari anche il flusso della informazione e quello
                      che se ne puo’ inferire sono rilevanti
       • Controllo (Audit)
             – Tracciare le richieste e gli accessi per determinare a posteriori
               vere o tentate intrusioni
       • Crittografia (Cryptography)
             – Strumenti matematici per implementare alcuni dei servizi di
               sicurezza

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Controllo accessi

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Varie problematiche
      • Accesso a files tramite S.O.
                      Processo

                                    Sistema operativo
                                                        File1

      • Accesso a servizi web da parte di utenti remoti
                         Client                         Web server

                                                           Service/data

C      Consiglio Nazionale delle Ricerche - Pisa
Iit    Istituto di Informatica e Telematica
Usualmente, dimmi chi sei, e
            vedo che puoi fare …
      • Chi sei?
            – Ogni identità ha associato un insieme di diritti
              sulle risorse.
            – L’ autorizzazione e’ il processo con cui si controlla
              che l’accesso alle risorse sia consentito solo alle
              identità che godano di tale privilegio.
      • Quindi comunemente l’ accesso alle risorse di
        un sistema avviene dopo una fase di
        identificazione/autenticazione.

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
3A

      • A (Autenticazione) =             Processo di
           verifica dell’identità presentata da un
           soggetto.
      • A (Autorizzazione) =             Processo di
           verifica della ammissibilita’ delle attività
           richieste da un soggetto autenticato.
      • A (Accountability) =            Processo di
           correlazione tra attività eseguite su un
           oggetto e soggetto che le ha invocate.
C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Protocolli di sicurezza

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Cosa e’ un protocollo per
                           noi…
      • Un protocollo e’
           – Una serie di passi
           – Coinvolge piu’ di un agente, (Alice, Bob, Carl,
             Dave, Eve, Mallory etc…)
           – Serve a svolgere un compito
      • Useremo la notazione
           – Alice (A) -> Bob (B) : messaggio (m)
           – Oppure graficamente:
                     Alice                               Bob
                                             Messaggio

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Cosa e’ un protocollo (2)

      • Esistono specifici linguaggi a vari livelli di
        astrazione per descrivere i protocolli di
        comunicazione. Per noi:
            – I partecipanti devono conoscere il proprio ed altrui
              ruolo nel protocollo
            – I passi non devono essere ambigui
            – Ogni possibile situazione deve essere definita
            – I protocolli crittografici usano funzioni
              crittografiche, quali cifratura, hash, (pseudo-
              )random number generation

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Tipologie di protocolli di
                       sicurezza
      • Esistono varie tipologie
      • Il caso piu’ semplice coinvolge solo due
        partecipanti (nessuno di loro ha un ruolo
        speciale)
            – Nei protocolli di autenticazione sono chiamati
              claimant e verifier o piu semplicemente Alice and
              Bob

                                             Self-enforcing

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Con arbitro
      • Si assume una terza parte fidata (Trusted
        Third Party) da tutti i partecipanti (e.g, una
        PKI)
      • Trent opera durante ogni esecuzione del
        protocollo           Trent

                     Alice
                                                                Bob

                                                  Con arbitro

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Con giudice
      • Durante il protocollo Alice e Bob raccolgono prove
        che verrano in caso di necessita’ mostrate a Trent
            – La terza parte fidata entra in gioco solo in caso di
              contestazioni

                                                    Trent
                                Prove                           Prove
                      Alice
                                                                        Bob

                                                  Con giudice

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Un esempio:

      • Alice vuole trasferire a Carl 1000Euro dal suo
        conto corrente nella Banca:

                 Alice -> Banca : {trasferisci 1000 Euro dal mio
                               conto a quello di Carl}Pr(Alice)

      • Dato che il messaggio e’ firmato la Banca
        dovrebbe con tranquillita’ effettuare il
        trasferimento O no?

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Un attacco

      • Carl puo ascoltare il messaggio in transito
      • Carl puo’ rispedire il messaggio
      • Il messaggio e’ firmato da Alice, la Banca lo deve
        accettare e Carl guadagna 2000 Euro

             Carl(Alice)-> Banca : {trasferisci 1000 Euro dal mio
                           conto a quello di Carl}Pr(Alice)
      • Notate che l’autenticazione deve essere dedotta dal
        messaggio firmato
            – ad esempio, chiunque puo’ spedire una mail usando un
              generico campo from

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Contromisura

      • La banca non tratta due messaggi con la
        stessa nonce (informazione fresca)

            Alice -> Banca : {trasferisci 1000 Euro dal mio
                          conto a quello di Bob, nonce_n1}Pr(Alice)

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Modello degli attachi per
                       protocolli
       • Descrive le situazioni di potenziale rischio
       • Possibili attacchi sul
             – sistema
             – sul mezzo di comunicazione                    Attacco

      Attacco                                      Attacco

C      Consiglio Nazionale delle Ricerche - Pisa
Iit    Istituto di Informatica e Telematica
Possibili attacchi sul sistema

      • La macchina in cui si esegue una applicazione
        puo’ essere corrotta, e.g.:
            –   virus
            –   trojan horses
            –   keyboard sniffers
            –   Applicazioni “camuffate”
            –   ….
      • Oppure semplicemente un vostro collega e’ in
        grado di accedere alla vostra macchina ed al
        file delle passwd…
C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Possibili attacchi sulla
                        comunicazione
      • I possibili attacchi comprendono almeno
            – Eavesdroppers (ascoltatori): osservano i
              messaggi/le comunicazioni scambiate e deducono
              segreti
            – Impostors (impostori): provano a fingersi utenti
              leggittimi del protocollo
            – Hijackers (dirottatori): provano ad inserirsi in un
              protocollo dopo una eventuale fase di
              autenticazione di uno dei partecipanti

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Materiale di lettura

      • Libri
            – B. Schneier “Applied Cryptography” - Wiley

      • Documenti, articoli, technical reports:
            – Recommendation of Electronic Authentication – NIST special
              Publication 800-63

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Controllo accessi:
          politiche e meccanismi

                                       Fabio Martinelli
                                                  (IIT-CNR)

                                       Fabio.Martinelli@iit.cnr.it

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Outline
      • Access control: AAA
           –   Autenticazione
           –   Autorizzazione
           –   Accounting
           –   ID management
           –   Trust Management

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Materiale di lettura

      • Pierangela Samarati, Sabrina de Capitani di
        Vimercati “Access Control: Policies, models
        and mechanisms”. LNCS 2171
      • Recommendation of Electronic Authentication – NIST
        special Publication 800-63

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Controllo accessi (Access
                       control)
      • Scopo:
            – Valutare le richieste di accesso alle risorse (anche le
              operazioni richieste su tali risorse) e decidere se permettere
              o meno l’accesso (grant-si, deny-no)
      • Modelli di controllo accessi:
            – Basato su identita’ (Identity-based), basato su ruoli (Role-
              based), Multi-level, Muro cinese (Chinese Wall), Integrity
              Based, Privacy (Medical Information Systems)
      • Relazione con altri servizi
            – I principals possono essere autenticati
            – Le regole che garantiscono gli accessi devono essere a loro
              volta protette per garantirne integrita’
      • Difficile per sistemi mobili e distribuiti
            – Principals possono attraversare vari confini amministrativi
              (p.es., reti aziendali) e non sempre possono essere
              autenticati o riconosciuti
C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Politiche e Meccanismi (1)

      • Politica di accesso (Policy):
            – Principi e regole per definire gli accessi al sistema ed alle risorse
            – Specifiche ad alto livello
                   • Open policy: tutto quello che non e’ proibito e’ permesso
                   • Closed policy: tutto quello che non e’ permessso e’ proibito
                         – Usualmente preferita in quanto non si rischia di permettere una certa
                           operazione su di una risorsa solo perche’ ci si e’ dimenticati di farlo

      • Meccanismo (Mechanism):
            – Strumento informatici per implementare la policy
            – Possono essere generici, ovvero implementano meccanismi per
              interpretare linguaggi di policy) or hardwired (la politica e’
              codificata nel sistema, soltanto gli attributi dei principals possono
              cambiare)
                   • Il meccanismo di Unix e’ hardwired – (in particolare Discretionary
                     Access Control)
                   • Anche il meccanismo di Windows e’ hard-wired

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Politiche e Meccanismi (2)
      • Perche’ considerare entrambi:
          – Avere un modello ad alto livello permette di comparare le
            politiche di accesso indipendentemente dalla
            implementazione
                 • piu’ chiarezza e facilita’ di analisi
                 • piu’ semplicita’ nel gestire le politiche da parte degli
                   amministratori
          – Permette di avere piu’ implementazioni (meccanismi) per le
            stesse politiche e quindi una comparazione
                 • Unix Discretionary Access contro puo’ essere implementato sia
                   con
                       – Access Control Lists (resource-based access control)
                       – Capabilities (subject-based access control)
          – E’ possibile avere un meccanismo che implementa piu’
            policies
                 • Un unico meccanismo puo’ essere programmabile e quindi
                   implementare piu’ politiche

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Meccanismi: vincoli
      • Reference Monitor
            – Il modulo che effettivamente implemente il controllo accessi
              ed incapsula la risorsa (logicamente)
      • Tamper-proof
            – Deve essere impossibile modificare il suo funzionamento
      • Not-bypassable
            – Tutte le richieste di accesso alla risorsa devono passare per
              il reference monitor
      • Security-Kernel/Trusted Computing Base
            – Ci deve essere tutto: tutte le funzionalita’ devono essere
              concentrate per garantir un maggior controllo ed affidabilita’
            – La dimensione deve essere piccola!
                   • Questo rende piu’ semplice il debugging e la verifica formale

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Politiche: vincoli
      • Modello di sicurezza
           – Definisce le caratteristiche principali delle policy, ovvero i
             modi per definire gli accessi
           – Completo: per ogni richiesta c’e’ almeno una risposta
           – Consistente: per ogni richiesta c’e’ al piu’ una risposta
      • Dovrebbe essere formale per garantire la verifica
           – Il massimo livello di certificazione di sicurezza (EAL-7) dei
             Common Criteria richiede l’analisi con metodi formali
      • Deve stabilire le politiche ed il modello di controllo
        accessi ma anche la gestione delle modifiche alla
        policy, ovvero regole per gli amministratori del sistema
           – Ovvero come i privilegi di accesso possono essere cambiati e
             da chi.

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Politiche di accesso diffuse
                 attualmente …
      • Discretionary Access Control (DAC)
            – I proprietari possono decidere chi accede ai loro files
            – Unix security/Windows NT
      • Mandatory Access Control (MAC)
            – Il sistema decide chi puo’ accedere cosa
            – I criteri possono essere confidenzialita’ (p.es, Bell-LaPadula)
              o Integrity (Biba)
      • Role-Based Access Control (RBAC)
            – I permessi di accesso sono assegnati in base ai ruoli che i
              principals ricoprono nella organizzazione

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
AAA secondo IETF:
                            RFC2904
                                                    Policy
                                                   Decision                 Policy
                                                                          Repository
                                                    Point
                                    Richiesta
                                    Di                        Decisione
                                    Valutazione

                          Richiesta                  Policy
       User               di accesso              Enforcement
      request                                        Point
                                                                                 Risorse
                                                                                 protette
PDP = Policy Decision                                                             PEP = Policy
Point                                                                       Enforcement Point
C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Autenticazione

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Autenticazione
      • Scopo:
           – Processo di verifica di una affermazione
                  • E.g., origine di un documento
                  • Identita’ di un utente
                  • ….

      • Tipi di autenticazione fra principal:
           – Mono-directional
           – bi-directional (p.es., Peer-to-peer)

      • Relazione con altri servizi
           – La correttezza del controllo accessi dipende dalla corretta
             autenticazione
           – La correttezza dei logs (Audit) dipende dalla corretta
             autenticazione

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Autenticazione e
                                 Crittografia
      • Richiamo dalle precedenti lezioni: Crittografia
           – Dato un testo intelleggibile (plaintext) produrre un testo incomprensibile
             (ciphertext) usando una certa informazione (chiave) e vice-versa
      • Varie tipi di crittografia in relazione alle chiavi usate
           – Secret Key (o chiave simmetrica)
                  • La stessa chiave e’ usata per cifrare e decifrare.
                  • EK(P) = C - encryption of plaintext
                  • DK(C) = P - decryption of ciphertext

           – Public Key (o con chiave asimmetrica)
                  • Due chiavi differenti sono usate per cifrare e decifrare (una nota da tutti,
                    mentre l’altra solo ad un principal)
                  • C’e’ una relazione tra la chiave pubblica PK e l’inversa privata SK ma
                    e’ computazionalmente impossibile derivare una dall’altra
                  • EPK(P) = C – cifratura del plaintext
                  • DSK(C) = P - decifratura ciphertext

C      Consiglio Nazionale delle Ricerche - Pisa
Iit    Istituto di Informatica e Telematica
Autenticazione e
                              Crittografia (2)
      • Intuizione di come possa essere usata per
        autenticazione:
            • Se io possiedo una coppia di chiavi (SK,PK), allora
               posso rendere pubblica la chiave PK; chiunque mi
               puo spedire un messaggio crittato usando PK in
               modo che solamente io posso comprenderlo dato
               che sono l’unico che conosce SK
          – Dunque:
                 • Se hai spedito a Joe in maniera confidenziale (ovvero cifrata
                   con la chiave pubblica) un numero che nessun altro conosce
                   (p.es. appena generato in maniera casuale) e tu in seguito
                   ricevi un messaggio che dipende da quello, allora potresti
                   pensare che quel messaggio viene da Joe ed e’ stato
                   originato recentemente
                 • nota che nessuno garantisce che Joe lo abbia spedito a te

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Autenticazione e
                              Crittografia (3)
      •   Cifratura a chiave publica per firma digitale
           – Una chiave quella privata e’ usata per cifrare, l’altra, quella pubblica per
             decifrare.
           – ESK(P) = S – cifratura con la chiave privata SK soltanto
           – DPK(S) =? P – decifratura con la chiave pubblica PK.

      •   Firma digitale:
           – La generazione di una firma corrisponde alla cifratura con la propria
              chiave privata: M, ESK(M)
           – La verifica di un messaggio firmato S che dovrebbe essere la firma di un
              messaggio M, corrisponde alla decifratura con la chiave pubblica ed al
              relativo controllo che la decifratura corrisponda al messaggio p.es
              DPK(S)=?M
      • Intuizione:
                  • Se spedisci a Joe un numero casuale e ricevi indietro lo stesso
                    numero firmato con la chiave privata che corrisponde a quella
                    pubblica associata a Joe, allora potresti pensare che quel messaggio
                    viene da Joe ed e’ stato originato recentemente

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Autenticazione di identita’
       • Nel caso della identita’ vengono comunemente usati
         3 meccanismi:
             – Quello che so (passwords)
             – Quello che ho (token, smart cards, oggetti fisici)
             – Quello che sono (aspetti o movimenti fisici specifici
               dell’individuo)
             – Ma anche
                    • Da dove vieni (p.es. IP dei pacchetti)
       • Protocolli di autenticazione accertano quello che un
         utente e’ in grado di fare ..…
       • Meccanismi con costo/robustezza differenti sono usati
         per autenticare l’accesso a risorse con valore
         differenti

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Protocolli di Autenticazione

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Username&passwd
      • Alice spedisce a Bob una coppia (A, P)
      • Bob controlla in un DB che la passwd P sia
        associata al utente con username A
      • Alice e’ “autenticata” come A
                 Alice
                                                  (A,P)         DB

                                                          Bob

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Username&passwd (2)
       • Vantaggi
             – Semplice
             – Economico e facilmente implementabile
       • Svantaggi
             – Indovinare (la gente usa spesso password che ricorda e anche
               gli attaccanti possono avvantaggiarsi di questo)
             – Snooping (rubata da qualcuno che ti sta alle spalle)
             – Sniffing (rubata da qualcuno che la intercetta nella rete)
             – Spoofing (rubata creando finte applicazioni che fingono di
               essere interfaccie di login – funziona, la nuova versione su web
               si chiama fishing ed e’ usata per pescare i numeri di carte di
               credito che utenti ingenui spediscono a siti che assomigliano ad
               alcuni famosi)
             – Masquerading (chiunque conosce la username e passwd di FM
               diventa FM per il sistema)

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Attacco del dizionario
       • Generalmente, in un sistema, le passwd sono
         memorizzate in un file (usualmente solo in forma di
         hash)
             – Quando arriva via rete una passwd se ne calcola l’hash e si
               confronta con quello nel file delle passwd
             – Questo garantisce che chi gestisce il file non conosca la
               passwd, ovvero il vostro sistem administrator puo’ cambiare
               la passwd ma non conoscere la vostra
             – Un attacco effettivo consiste nel calcolare l’hash di tutte le
               voci di un dizionario, se si trova qualcosa che coincide nel
               file delle passwd abbiamo trovato la passwd
             – Per evitare questo problema, ad ogni password prima di
               calcolarne hash viene aggiunto un seed. Essendo il seed
               variabile per ogni parola, questo rende l’attacco del
               dizionario molto meno effettivo.
C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Token-based Authentication
  • Un token ha una chiave crittografica al suo interno,
       – e’ un oggetto tamper proof (idealmente)
       – si comporta come una trusted computing base
       – per accedere alle funzioni del token e’ spesso necessario un
         meccanismo di autenticazione come il PIN (2-way
         authentication quello che ho + quello che so)
  • Vantaggi
       – La crittografia usualmente supportata dai token e’ di tipo forte e
         quindi difficilmente contraffatta
       – Portabilita’
  • Svantaggi
       – Portabile significa che puo’ essere rubato!
       – Il Token ha un legame con il legittimo proprietario, non con chi
         lo porta
             • Da qui la necessita’ di proteggere le sue funzioni anche con il PIN
C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Token-based Authentication (2)
      • Challenge-Response Protocol
           – Il server (verifier) inventa un messaggio casuale (nonce,
             random number)
           – Il claimant genera una risposta usando una chiave
             crittografica che ha nel suo Token
           – L’autenticazione e’ considerata corretta se la risposta e’ il
             messaggio cifrato come ci si aspetta
      • Puo’ essere vulnerabile a mirror attacks
      • Esempio: A,B condividono una chiave segreta Kab, e’
        il seguente protocollo sicuro per A e B? (Dove Na e’ un
          valore random prodotto da A ad ogni esecuzione del protocollo?)
                                       ISO-2             Cifratura
                                       A->B: Na         con chiave
                                       B->A: {Na}_Kab      Kab
C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Mirror attack (attacco allo
                   specchio)
      • L’attacco avviene anche senza la presenza di
        Bob
      • Si tratta di due sessioni, in una Alice e’ un
        initiator del protocollo, nel secondo un
        responder
                                       Attacco
                                       A->M(B): Na
                                       M(B)->A: Na
                                       A->M(B):{Na}_Kab
                                       M(B)->A:{Na}_Kab
C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Nonce challenge con
               crittografia asimmetrica
      Semplice protocollo:

      A->B: Na                                     Firma con la
                                                  chiave privata
      B->A: {Na}Sk(B)
                                                       di B
      Cosa puo’ inferire A se riceve una nonce cifrata
        con la chiave privata di B?

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Autenticazione basata su
                 identita’ (Biometria)
      • Autenticazione usa caratteristiche biometriche
            – Fisiche: impronte (fingerprints), forma delle mani/faccia,
              scansione della iride/retina
            – Comportamentali: firma (scrittura manuale), voce,
              handwriting, “dattilografia” etc.
      • Richiede sempre una fase di enrollment
        (registrazione) per memorizzare le caratteristiche
        biometriche in un template (tipicamente sono
        codificate in un certificato digitale, p.es. X.509)
      • Autenticazione e’ compiuta tramite:
            – Si misurano le caratteristiche (in maniera “sicura”)
            – Si comparano con quelle nel template
            – Si ha autenticazione nel caso la differenza sia trascurabile
C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Identity-based Auth. (2)
       • Vantaggi
             – Portabile (veramente)
             – Difficile da indovinare le caratteristiche fisiche
       • Svantaggi
             –   Costoso
             –   Problematiche circa la riservatezza delle informazioni personali
             –   Falsi positivi (persone “sbagliate” riconosciute come “giuste”)
             –   Falsi negativi (persone “giuste” riconosciute come “sbagliate”)
       • A really big problem
             – Irrevocabile…
                    • E’ facile rubare le informazioni circa caratteristiche biometriche
             – Soluzione:
                    • E’ spesso usata in congiunzione con altri meccanismi di sicurezza

C     Consiglio Nazionale delle Ricerche - Pisa
Iit   Istituto di Informatica e Telematica
Puoi anche leggere