(RFID) Radio Frequency IDentification - Corso di Sicurezza 2 - Dario Fiore

Pagina creata da Pietro Ferro
 
CONTINUA A LEGGERE
(RFID) Radio Frequency IDentification - Corso di Sicurezza 2 - Dario Fiore
C.d.L. Informatica Applicata                               A.A. 2008/09

Corso di Sicurezza 2                                  Prof. Dario Catalano

   Radio Frequency IDentification
              (RFID)
                               Dario Fiore
                           fiore@dmi.unict.it
                     http://www.dmi.unict.it/~fiore
(RFID) Radio Frequency IDentification - Corso di Sicurezza 2 - Dario Fiore
RFID
●   RFID: acronimo per Radio Frequency
    Identification
●   Tecnologia per l'identificazione automatizzata di
    oggetti, animali o persone
●   Componenti di un sistema RFID
        1)RFID tag
        2)Tag Reader
        3)Server
●   Idea di base: Il reader legge a distanza
    informazioni dal tag ed (eventualmente) le
    comunica al server
(RFID) Radio Frequency IDentification - Corso di Sicurezza 2 - Dario Fiore
Vantaggi principali
●   I sostenitori di RFID vedono questa tecnologia
    come successore dei codici a barre, con due
    vantaggi principali:
    1) Identificazione univoca
        –   Un codice a barre indica il tipo di oggetto su
             cui è stampato (es. ”barretta cioccolato XY
             100g”)
        –   Un tag RFID emette un segnale univoco per
             quell'oggetto (es. barretta cioccolato XY
             100g, serial n. 897348738”)
(RFID) Radio Frequency IDentification - Corso di Sicurezza 2 - Dario Fiore
Vantaggi
2) Automazione
   –   I codici a barre richiedono l'intervento umano
          per essere letti (devono essere posti vicino
          al lettore)
   –   I tag RFID non necessitano di una posizione
          specifica. I reader possono leggere a
          distanze ragionevoli (che dipendono dal
          tipo di tag) anche centinaia di tag al minuto.
(RFID) Radio Frequency IDentification - Corso di Sicurezza 2 - Dario Fiore
Applicazioni (1)
●   Magazzini e punti vendita
        –   Ogni prodotto è identificato univocamente da un tag
             permettendo l'inventario automatico delle merci
        –   Antifurto/antitaccheggio: i clienti fanno passare il loro
             carrello vicino al lettore che identifica i prodotti.
             Oltre a preparare lo scontrino, i prodotti potranno
             essere marchiati nel DB come “acquistati”. All'
             uscita del negozio delle barre (lettori) controllano il
             passaggio di tag lecitamente acquistati
(RFID) Radio Frequency IDentification - Corso di Sicurezza 2 - Dario Fiore
Applicazioni (2)
●   Trasporti
        –   Tag applicati a mezzi di trasporto per tracciare gli
              spostamenti (es. pagamento caselli autostradali)

●   Controllo presenze ed accessi
(RFID) Radio Frequency IDentification - Corso di Sicurezza 2 - Dario Fiore
Applicazioni (3)
●   Apparecchi intelligenti
         –   Il frigorifero avvisa se il latte è scaduto
         –   Il frigorifero si accorge che lo yogurt scade domani e
                 lo mette sulla lista della spesa (che potrà essere
                 spedita a un servizio di spedizione a domicilio!!)
(RFID) Radio Frequency IDentification - Corso di Sicurezza 2 - Dario Fiore
Applicazioni (4)
●   Armadio delle medicine
         –   Verifica che le medicine vengono prese secondo
               certe regole temporali

●   Identificazione degli animali
         –   In Italia da pochi anni c'è l'obbligo per impiantare un
               tag RFID sottocutaneo nei cani. Può contenere
               informazioni su proprietario, controlli
               veterinari,ecc.
(RFID) Radio Frequency IDentification - Corso di Sicurezza 2 - Dario Fiore
RFID tag
●   Un dispositivo RFID (aka RFID tag) è
    composto da:
        –   un piccolo microchip
            progettato per trasmissione
            di dati wireless.
        –   un'antenna
        –   può essere dotato di una batteria
●   La dimensione dell'antenna limita il raggio d'azione
RFID tags
●   Tutto è contenuto in un piccolissimo package (ad
    es. un adesivo)
●   Ne esistono diverse tipologie
●   In base a come ottengono e utilizzano
    l'alimentazione distinguiamo tra
        –   Tag passivi
        –   Tag semi-passivi
        –   Tag attivi
●   Altre distinzioni in base alla memoria e la frequenza
Tag passivi
●   Non possiedono alcuna batteria
●   Ricevono energia necessaria per la trasmissione
    dalle onde elettromagnetiche ricevute dal Reader
●   Non possono avviare comunicazione
●   Sono i più diffusi ed economici: 10-50 cent.
        –   In alcuni casi “Usa e getta”
●
    Dimensioni molto ridotte: 0.4mm2
●   Distanze di lettura: dipendono dalla frequenza
    usata 50cm – 10m
Tag semi-passivi (o semi-attivi)
●   Hanno una batteria che alimenta solo il circuito
    interno
●   Non possiedono un trasmettitore attivo
●   La batteria permette un raggio d'azione maggiore,
    ma comporta problemi quali: peso, dimensione
●   Costo più elevato di quelli passivi
●   Tempo di vita legato alla batteria
Tag attivi
●   Hanno una propria sorgente di alimentazione
    (tipicamente una batteria al litio)
●   Emettono continuamente un segnale
●   Possiedono una memoria interna piuttosto grande:
    qualche Kbyte
●   Il circuito interno è in grado di elaborare dati
●   Dimensioni: circa una moneta da 1 euro
●   Distanze di lettura elevate: fino a 10m
●   Tempo di vita legato alla batteria
●   Più costosi di quelli passivi: 8-45€
Tipologie di tags
●   Read-only
        –   Si possono leggere le informazioni contenute
●   Write once-Read many
        –   Si può scrivere nel chip una volta sola, ma si
              possono fare un numero illimitato di letture
●   Read-Write
        –   Si possono leggere e scrivere informazioni
              per un numero limitato (ma grande) di volte
Frequenze
●   Low Frequency (LF) 124-135KHz
        –   Range di lettura: fino a 0.5m
●   High Frequency (HF) 13.56 Mhz
        –   Range di lettura: fino a 1-1.5m
●   Ultra High Frequency (UHF) 860-960 Mhz
        –   Range di lettura: fino a 3m
●   Wide Band (WB) > 2.4GHz
        –   Range di lettura: 5-10m
RFID Reader
●   Il lettore è un dispositivo fisso o mobile che tramite
    antenne “comunica” con il tag
●   Nel caso di tag passivi il lettore genera un campo
    elettromagnetico che per induzione genera corrente
    nell'antenna del tag
●   Attiva il tag e legge informazioni da esso
Problematiche legate a RFID
●   Capacità di memoria / computazionali
        –   Possono memorizzare un segreto di 32-128 bit e
             128-512 bit in totale
        –   Ridotte capacità di calcolo: possiedono 1.000-10.000
              porte logiche, di cui 200-2000 dedicate alla
              sicurezza
                  ●   Ne servirebbero almeno 5.000-10.000 per
                       implementare funzioni crittografiche (es. AES)
●   Raggio d'azione
        –   Liquidi o metalli limitano la lettura dei tag (specialmente
              con alte frequenze)
●   Privacy
●   Authentication
Privacy
Privacy
●   C'è il rischio che chiunque può leggere i nostri tag
●   Oppure che la comunicazione tra il tag e il suo
    lettore lecito venga “ascoltata”
●   Due principali preoccupazioni per la privacy:
        –   Monitoraggio clandestino
        –   inventariazione
Monitoraggio clandestino
Monitoraggio clandestino
●   I tag RFID rispondono a qualsiasi lettore senza
    avvisare i loro proprietari/detentori
●   Problema: Privacy di localizzazione
        –   Monitorare le persone attraverso i tag che
             portano appresso, correlando più dati
             raccolti da diversi lettori in posizioni fisse.
        –   Dove si trova una persona in un dato momento
Monitoraggio clandestino -
               esempi
●   Quando un consumatore effettua un acquisto con
    carta di credito, un negozio può stabilire un nesso
    tra la sua identità e gli ID dei tag presenti sulla
    persona.
●   I negozianti potrebbero identificare un profilo del
    consumatore utilizzando reti di lettori RFID
    all'interno o esterno dei negozi.
●

●   In un caso celebre una corte ha usato i dati raccolti
    da un tag per il pedaggio autostradale per smontare
    l'alibi della difesa in un caso di divorzio
Inventariazione
●   Alcuni tag trasportano altre informazioni oltre
    all'identificativo, es. costruttore, codice prodotto
●   Una persona che porta questi tag è soggetto a
    inventariazione clandestina
         –   Un lettore può leggere dai tag quali oggetti
              porta con sé e altre informazioni personali
              correlate ad essi
         –   Farmaci (=possibili malattie sofferte), carte
              fedeltà (=quali negozi frequentati
              abitualmente), taglie di abbigliamento, ecc..
Il problema della privacy
●   Non riguarda solo i consumatori
●   E' un problema anche per i fornitori
        –   Potrebbero trapelare informazioni sulla loro
             strategia competitiva
●   Es. Alcuni venditori al dettaglio usano tag RFID per
    monitorare i livelli di scorte negli scaffali
●   I concorrenti in questo modo possono conoscere i
    tassi di scorte fatturate
●   Spie aziendali possono apprendere informazioni
    semplicemente passeggiando per i locali!
Verso delle soluzioni per la
               privacy
●   All'inizio questa problematica era poco considerata.
●   Con la diffusione sempre maggiore di questi sistemi
    la privacy assume importanza cruciale
●   Pertanto occorre avere stabilire dei sistemi di
    sicurezza
●   Nota: i tag RFID hanno capacità di calcolo
    bassissime (o non ne hanno affatto)
●   ==>> Soluzioni crittografiche standard sono
    impensabili!
Tecniche di difesa
●   1. Killing-Sleeping
●   Il tag viene disattivato definitivamente o temporaneamente
●   Il reader usa un PIN di accesso prima di inviare il comando
    KILL
●   Il killing è una contromisura abbastanza efficace
●   Es. Dopo l'acquisto il tag viene disattivato
●   Svantaggi:
●   In alcuni casi perdiamo i benefici post-acquisto del tag
●   Es. applicazioni intelligenti
●   Libri in prestito dalla biblioteca
Sleeping
●   Perchè non disattivarli solo temporaneamente?
●   Concetto semplice ma non facile da gestire in
    pratica
●   Cosa succede se qualsiasi lettore può “svegliare il
    tag”?
●   Serve un PIN associato al tag, che va ricordato
         –   Il proprietario dovrebbe memorizzarlo (abbiamo già
                tante password!)
         –   Stampato sul tag (va letto manualmente!)
●   Attivazione fisica (attraverso un “tocco” diretto del circuito)
         –   Si perde il vantaggio wireless di RFID
2. Rinominazione
●   Ri-etichettatura
●   Il tag cambia identificativo per es. dopo un acquisto
         –   Non è risolto il problema dell'inventariazione
         –   Anche il tracking è solo parzialmente risolto
●   Idealmente vorremmo che l'ID cambiasse periodicamente e
    fosse random
2. Rinominazione
●   Crittografia minimale
●   Ogni tag possiede una collezione di pseudonimi che usa a
    rotazione cambiandolo dopo ogni interrogazione
●   I lettori onesti conoscono questo insieme di pseudonimi
●   Un lettore che non conosce gli pseudonimi non riuscirà a
    collegare gli identificativi a un unico tag
●   Che succede se un lettore fa velocemente tante
    interrogazioni a un tag per ottenere tutti gli ID?
         –   Soluzione: programmiamo i tag per rispondere
              lentamente quando sono interrogati troppo
              velocemente
2. Rinominazione
●   Ricifratura
●   L'identificativo inviato dal tag è una cifratura C con chiave
    pubblica PK del vero identificativo ID.
         –   Il tag possiede C
●   Alcuni lettori avranno la capacità di ricifrare C e
    riprogrammare il tag con il nuovo crittotesto C'
         –   Es. usare le proprietà di El Gamal
●   Pro: introduce crittografia senza farla gravare sui tag
●   Contro: se viene ascoltata la comunicazione tra il reader e il
    tag in fase di riprogrammazione, perdiamo tutta la privacy!
2. Rinominazione
●   Ricifratura universale
●   Nel caso precedente si cifrava per una sola public key
●   Tuttavia abbiamo tipicamente tante chiavi
●   Come facciamo a sapere per quale chiave ricifrare?
●   Golle et al. hanno proposto uno schema che permette di
    ricifrare senza conoscere la public key corrispondente
         –   Soffre di un problema di integrità
         –   Risolto da Ateniese et al. usando firme digitali
●   Problema aperto: difesa da attacchi di swapping
Altre tecniche di difesa
●   Proxying
●   Dispositivi intermediari tra i tag e i reader
●   Watchdog monitora un ambiente raccogliendo
    informazioni sui tag e reader presenti
●   Guardian: fa da intermediario alle richieste verso i
    tag.
         –   Implementa policy ben precise
         –   “I miei tag possono essere interrogati solo da reader
                nel raggio di 30m o in negozi che applicano il 10%
                di sconto”
Altre tecniche di difesa (2)
    Misura della distanza
●   Inserire nel chip del tag un sensore in grado di
    approssimare la distanza del segnale del lettore
         –   Rifiutare connessioni oltre una certa distanza
    Blocco (simile a sleeping)
●   Il tag ha due modalità 0 (pubblico) / 1 (privato)
         –   Prodotto nel supermercato: 0.Dopo l'acquisto:1.Arriva in frigo: 0
●   Un tag apposito controlla che i tag privati non siano
    interrogati (“interferendo” nella comunicazione con questi
    ultimi)
Altre tecniche di difesa (3)
●   Blocco soft: il tag “suggerisce” al lettore onesto di non
    leggere
●   Trusted Computing Platform (TCP)
●   I reader sono forzati a seguire le regole stabilite
RFID: argomenti affrontati
●   Panoramica sulla tecnologia
        –   Componenti
        –   Applicazioni
        –   Classificazione dei tags
●   Privacy
        –   monitoraggio clandestino
        –   Inventariazione
 Tecniche di difesa per la
                privacy:
●   Killing/sleeping
●   Rinominazione:
        –   ri-etichettatura
        –   crittografia minimale
        –   Ricifratura
        –   Ricifratura universale
●   Proxying
●   Misura della distanza
●   Blocco / blocco soft
Autenticazione
●   Nei sistemi RFID la privacy riguarda il problema di
    lettori maliziosi che tentano di raccogliere
    informazioni da tag onesti
●   L'autenticazione affronta il problema di lettori
    onesti che raccolgono informazioni da tag maliziosi
    (ad es. falsi)
●   E' abbastanza semplice ed economico analizzare e
    replicare tags.
Possibili soluzioni ?
●   Si potrebbe pensare di usare le firme digitali sui
    dati dei tag per garantire l'integrità
        –   Le firme digitali prevengono la modifica dei dati ma
              non la clonazione!
●   Numerazione univoca:ogni tag ha un identificativo
        –   Se in magazzino ci sono due casse con lo stesso ID
              rileviamo un problema
        –   Se una società di navigazione decide di rubare una
              cassa di medicinali che gli è stata affidata per il
              trasporto, può creare casse false e clonare i tag
              RFID associati. ==>> NON SUFFICIENTE!
Garantire autenticazione
●   In crittografia esistono già diversi protocolli che
    garantiscono mutua autenticazione tra 2 parti
●   Il problema è che tali soluzioni sono troppo pesanti
    dal punto di vista computazionale per essere
    applicate a dispositivi a basso costo come i tag
    RFID
●   Juels e Weis proposero di usare il protocollo a
    chiave condivisa di Hopper e Blum
Idea generale
           S                                                       S
Tag                                                                      Reader

                                      Q

R=f(S,Q)
                                      R                                R'=f(S,Q)
                                                                       R'=R ?

               f(S,Q) funzione del segreto S e della challenge Q
Soluzioni
●   Juels e Weis dimostrano che un avversario
    computazionalmente limitato non può impersonare
    un tag con probabilità maggiore di ½
●   Ogni iterazione del protocollo ha probabilità di
    errore ε
●   Il passo del protocollo viene iterato più volte per
    rendere l'errore trascurabile
●   HB (da Hopper e Blum)
          –   sicuro contro attacchi passivi
●   HB+
          –   Sicuro contro attacchi attivi
Il problema LPN
●   I protocolli sono dimostrati sicuri sotto l'ipotesi
    computazionale Learning Parity with Noise (LPN)
●   In informatica la parità di una stringa di bit è
         –   1 se il numero di bit “1” è dispari
         –   0 se il numero di bit “1” è pari
●   Esempio: S=1011 ha parità 1
●   La parità si può calcolare facendo lo XOR di tutti i bit
         –   P=1= 1 + 0 + 1 + 1

                   + è inteso come XOR
Learning Parity with Noise
●   k: parametro di sicurezza
●   s, a1,..., al vettori binari di lunghezza k
●   zi=(s,ai) prodotto scalare modulo 2
●   Siano a1,z1, ..., al ,zl scelti a caso, l=O(k)
●   Usando tecniche di algebra lineare è semplice trovare s
    che soddisfa la relazione sopra
●   Supponiamo che zi sia invertito con probabilità ε
●   Trovare s diventa (computazionalmente) difficile (LPN)
Protocollo HB
●   Progettato da Hopper e Blum per l'identificazione e
    l'autenticazione sicura di esseri umani nei confronti
    di un computer
●   Alternativa all'uso di password
●   Vantaggio: il segreto non viene mai inviato lungo il
    canale di comunicazione

●   Juels e Weis intuiscono che questo protocollo può
    essere adattato al caso dei tag RFID
Protocollo HB
          S=1010                        S=1010
Tag                                                Reader

                             Q=1011

(S,Q)
=(1010,1011)                 R=0                 R'=(S,Q)
=0                                               If R'=R
v ← {0,1:Prob[v=1]=ε}                            accetta
R=0+v                                            Else rifiuta
Protocollo HB
●   Il tag calcola il bit di parità e aggiunge rumore v
●   v risponde a una particolare distribuzione di probabilità
●   Il bit v può essere generato usando proprietà fisiche come il
    rumore termico o altro
●   Quindi il tag invia la risposta che è sbagliata con la stessa
    probabilità per cui v=1
●   Il passo viene ripetuto n volte
                                         S=1010                     S=1010 Reader
                                  Tag

                                                           Q=1011
                                  (S,Q)
                                  =(1010,1011)            R=0             R'=(S,
                                  =0                                      Q)
                                  v ← {0,1:Prob[v=1]=ε}                   If R'=R
                                  R=0+v                                   accetta
                                                                          Else
                                                                          rifiuta
Protocollo HB
●
    Il lettore accetta solo se circa nε iterazioni sono
    fallite
●   Precisamente:
●
    Siano l,u tali che l≤nε≤u
●   Il lettore accetta se il numero di iterazioni senza
    successo è compreso tra l e u
●   I parametri l,u rappresentano la tolleranza di errore
Analisi di sicurezza
●   Per dire che HB è sicuro dobbiamo prima definire
    cosa significa “sicurezza” in questo contesto
        –   Ci serve una definizione di sicurezza!
●   Un avversario che invia risposte random in ognuna
    delle n iterazioni ha successo con probabilità
                           −n u
                                  
                        =2  i=l n
                                  i
●   Ragionevolmente, un avversario ha successo nel
    suo attacco se riesce con una probabilità
    significativamente maggiore di δ
Modello di sicurezza passiva
    Esperimento
1) L'avversario A può vedere q esecuzioni corrette del
   protocollo tra il reader e il tag
2) Dopo aver visto queste esecuzioni, A interagisce con il
   reader e prova a impersonare il tag
         –   Cioè A dà in output una sequenza di risposte che
               inducono il reader ad accettare
    Vantaggio
●   Sia P la probabilità di successo dell'avversario
    nell'esperimento sopra
         –   Adv(A) = |P - δ|
Sicurezza di HB sotto l'ipotesi
                 LPN
●   Se esiste un avversario (passivo) che ottiene un
    vantaggio non trascurabile nel rompere il protocollo
    HB, allora riusciamo a costruire un algoritmo che
    risolve il problema LPN con probabilità non
    trascurabile
●   Parametri della dimostrazione:
        –   n = O(k) = # iterazioni
        –   ε = probabilità di errore indotto nelle risposte
        –   l,u = tolleranza del reader all'errore
Vulnerabilità di HB
●   HB non è sicuro contro attacchi attivi
        –   L'avversario non solo può vedere le comunicazioni
              tra le parti del protocollo, ma può anche interagire
              con esse
●   Perchè?
HB: un attacco attivo
      S                       S=??
Tag

                   Q=1000
                                     Manda Q=1000
                  R=0
                                     1000 volte e
                  R=1                guarda le
                                     risposte
                  R=1
                  R=0
                   .
                   .
                   .
                  R=1
Vulnerabilità di HB
              1000                    1
                  q2                  r2
                       s=
                  q3                  r3

                  q4                  r4

Tag   S
                       S=??

            R=0
            R=1
            R=1
            R=0
             .                Maggioranza
             .                delle risposte: 1
             .
            R=1
Vulnerabilità di HB
              1000                  1
                  q2                r2
                       s=
                  q3                r3

                  q4                r4

Tag   S
                       S=??
            Q=0100
            R=0
            R=0
            R=1
            R=0
             .                Manda Q=0100
             .                1000 volte e
             .
            R=0               guarda le
                              risposte
Vulnerabilità di HB
              1000                    1
              0100                    0
                       s=
                  q3                  r3

                  q4                  r4

Tag   S
                       S=??
            Q=0100
            R=0
            R=0
            R=1
            R=0
             .                Maggioranza
             .                delle risposte: 0
             .
            R=0
Vulnerabilità di HB
                 1000               1
                 0100               0
                        s=
                 0010               1
                 0001               1

Tag   S

             .               Risolvi il sistema e
             .               calcola S!
             .
Vulnerabilità di HB
   1000                   1
   0100                   0
              s=
   0010                   1
   0001                   1

                                    Reader

                          1101

                              0

0=(1101, S)           .           Accettato!
                      .
                      .
Protocollo HB
●   HB è sicuro contro attacchi passivi
●   Un attacco attivo permette di ricostruire il segreto e
    impersonare sempre il tag!
●   Assumere l'esistenza di un attaccante attivo in
    questo contesto è abbastanza ragionevole
●   Soluzione:
        –   Juels e Weis hanno adattato HB per essere
              resistente contro attacchi attivi
        –   HB+
Protocollo HB+ - Idee generali
●   Stessa idea di base di HB
        –   Iterazioni ripetute
        –   Noise aggiunta alla risposta finale
        –   Reader accetta se un numero sufficiente di
             iterazioni è valido
●   Caratteristiche di HB+:
        –   2 chiavi condivise indipendenti: S1,S2
        –   Viene aggiunto un passo iniziale in cui il tag
              manda un fattore segreto random b al
              reader
Protocollo HB+
           S1,S2                         S1,S2
Tag                                               Reader

                              Q

B←{0,1}k                      B

                                           R'=(S1,B) + (S2,Q)
v ← {0,1:Prob[v=1]=ε}                      If R'=R
                              R            accetta
                                           Else rifiuta
R=(S1,B) + (S2,Q) + v
HB+
   Sicurezza contro attacchi attivi
           S1,S2                                ?
Tag

                              Q

                              B
B←{0,1}k                                            Manda Q 1000
                                                    volte e vedi le
v ← {0,1:Prob[v=1]=ε}         R                     risposte

R=(S1,B) + (S2,Q) + v

               L'attacco non ha successo perchè
                l'attaccante non può scegliere B!
Sicurezza di HB+
●   HB+ è dimostrato sicuro sotto l'ipotesi LPN nel
    modello attivo
●   In questo modello l'avversario
          - (può vedere comunicazioni tra tag e reader)
        1.può interagire q volte con un tag valido (es.
           scegliere le sfide del reader e vedere le
           risposte)
        2.Interagisce con il reader
●   Nota: non è il modello più forte possibile
        –   Al passo 1 l'avversario non può interagire
              con il reader
Modelli di sicurezza
●   Detection
●   L'avversario ha successo se riesce a impersonare il
    tag e durante l'intera sessione di attacco non viene
    rilevata la presenza di tag contraffatti (cioè tentativi
    di attacco)
        –   Es. se al passo 1 l'avversario interagisse con
             il reader potrebbe generare
             “comportamenti anomali” che fanno
             pensare ad un attacco
●   Prevention
●   L'avversario ha successo se impersona il tag,
    indipendentemente se viene rilevato o meno
Modelli di sicurezza
●   Il modello preventivo sarebbe più auspicabile
●   Tuttavia le tecniche attuali non permettono di
    ottenere protocolli ragionevolmente leggeri in tale
    modello
●   Juels e Weis giudicano il modello “detection”
    sufficiente in questo contesto
●   Es. Sistemi RFID centralizzati
        –   Chip RFID dei casinò o carte di credito
        –   Un tentativo di autenticazione fallito fa
             scattare un allarme
HB+: Main-in-the-middle attack
            S1,S2                                                 S1,S2
Tag                                                                        Reader

               Q'                D←{0,1}k                Q
                                 Q'=Q+D
B←{0,1}k
                                        B
                                                                    R'=(S1,B) + (S2,Q)
v ← {0,1:Prob[v=1]=ε}                                               If R'=R
                                        R                           accetta
                                                                    Else rifiuta
R=(S1,B) + (S2,Q') + v

                    Proposto da Gilbert et al. a Eurocrypt 2008
HB+: Main-in-the-middle attack
   ●    L'attaccante controlla se il reader accetta R o no
                    –   Se accettato, allora (S2,D)=0 con probabilità 1-ε

                    –   Se non accettato: allora (S2,D)=1 con probabilità 1-ε
   ●    Motivo:         R=(S1,B) + (S2,Q') + v = (S1,B) + (S2,Q) + (S2,D) + v

       S1,S2                                  S1,S2 Reader             Ripeti con D indipendenti
Tag

                                                                        [] [ ] []
                                                                         D1       1 0 0      R1
                              B                                          D 2 S 2= 0 1 0 S 2= R 2
               Q'                 k                                      D3       0 0 1      R3
                          D←{0,1}         Q
B←{0,1}k                  Q'=Q+D
                              R                   R'=(S1,B) + (S2,Q)
v ← {0,1:Prob[v=1]=ε}                             If R'=R              Ricava S2 risolvendo il sistema
                                                  accetta
R=(S1,B) + (S2,Q') + v                            Else rifiuta
                                                                       Stesso attacco modificando
                                                                       B per ottenere S1
Protocollo HB+
●   L'attacco main-in-the-middle richiede numerose
    interrogazioni
●   In un modello “detection” molte autenticazioni fallite
    inducono un sospetto di attacco
●   Molti tag hanno un raggio d'azione limitato

●   In conclusione HB+ è un buon compromesso dal
    punto di vista pratico per efficienza e sicurezza
Conclusioni
    Cosa abbiamo visto?
●   Panoramica sulla tecnologia RFID
        –   Hardware dei tag RFID
        –   Classificazione e tipologie di tag
        –   Applicazioni
        –   etc...
●   Problematiche
        –   Privacy
                  Varie tecniche di difesa
                     ●

        –   Authentication
                     ●   Protocolli HB e HB+ e loro vulnerabilità
Conclusioni
●   La tecnologia RFID è molto diffusa e utile
●   E' abbastanza chiaro perchè è importante risolvere
    i problemi di privacy e authentication
●   Le soluzioni attuali sono migliorabili sia dal punto di
    vista dell'efficienza che della sicurezza
Puoi anche leggere