10 Ago 2017

La vostra USB cifrata è sicura?

Post del giornoBusiness

Siete davvero certi che i dispositivi USB che utilizzate siano sicuri e chei dati salvati non possano essere estratti da qualche malintenzionato? È la domanda che si sono posti i security researcher di Google Ellie Bursztein, Jean-Michel Picod e Rémi Audebert durante il loro intervento “Attacco alle chiavette USB cifrate per via hardware” (Attacking encrypted USB keys the hard(ware) way) alla conferenza Black Hat USA 2017.

I ricercatori hanno affermato che, al momento, le case produttrici di dispositivi USB seguono lo standard di certificazione FIPS 140, sviluppato dal NIST (National Institute of Standards and Technology) per tutte le tipologie di moduli crittografici, sia hardware che software. La certificazione comprende la divulgazione del sistema di sicurezza cifrato e un processo di convalida.

Come hanno evidenziato gli stessi ricercatori, è importante mantenere aggiornata la certificazione poiché le informazioni rivelate aiutano loro a indiviudare eventuali problemi. Tuttavia non è sufficiente, non tutti i vettori di attacco sono coperti dal FIPS 140. E, come potrete vedere tra poco, alcuni dispositivi USB cifrati, nonostante la certificazione sono vulnerabili agli attacchi, a volte anche a quelli più semplici.

Per questo i ricercatori propongono di sviluppare un nuovo metodo di revisione che abbia lo scopo di valutare in particolare la sicurezza dei dispositivi USB cifrati. Per iniziare, i ricercatori hanno suddiviso i possibili problemi di sicurezza in 3 categorie:

  • Debolezze: problemi che rendono più facile hackerare il sistema;
  • Hackeraggio di un solo dispositivo: vulnerabilità che consentono al cybercriminale di hackerare solo un dispositivo in particolare;
  • Hackeraggio completo: vulnerabilità che conferisce a un hacker l’accesso a tutti i dispositivi di uno stesso modello.

Inoltre, lo sfruttamento di alcune vulnerabilità richiede abilità e risorse particolari. Alcune non richiedono chissà quale esperienza mentre altre necessitano l’utilizzo di molte risorse, disponibili soprattutto da parte di hacker sponsorizzati da un governo. I livelli di pericolo a loro volta sono suddivisibili in tre tipologie:

  • Eventuale: un cybercriminale con risorse minime può riuscire ad accedere. In questo livello di pericolo si può trovare una persona che ha trovato un dispositivo estraibile o lo ha rubato ed è desiderosa di ottenere le informazioni che può contenere;
  • Professionale: possono accedervi i cybercriminali con risorse, anche se non così estese. Gli hacker che rientrano in questa categoria sono interessati a raccogliere una grande quantità d’informazioni;
  • Sponsorizzazione governativa: i cybercriminali devono disporre di molte risorse. Di solito sono alla ricerca di dati specifici o di password che valgano un gran investimento di denaro.

Un altro modo per classificare le minacce specifiche per i dispositivi USB cifrati è attraverso i possibili vettori d’attacco, a seconda delle componenti del dispositivo: caratteristiche di progettazione e produzione del dispositivo, tipo di autenticazione (accesso), crypto controller/ controller USB, algoritmo di cifratura e memoria flash. Analizziamo queste categorie una per una.

Progettazione e produzione

Innanzitutto, un dispositivo USB cifrato deve essere progettato e prodotto in modo che sia garantito un determinato livello di protezione. Per cominciare dovrebbe essere a prova di manomissione, ovvero dovrebbe essere presente un qualche indicatore che avvisi il proprietario se qualcuno ha provato a entrare nel dispositivo USB contenente dei file molto importanti.

Più è facile accedere alle componenti elettroniche  più è facile per il cyercriminale andare alla ricerca dell’hardware e delle vulnerabilità del dispositivo. Per evitare ciò, la placca del circuito dovrebbe essere avvolta in silicone.

Dovrebbe trattarsi di vero silicone e non di materiali sostitutivi; i ricercatori hanno scoperto che, in alcuni casi, le case produttrici affermano di aver utilizzato silicone e invece si sono avvalse di altri polimeri meno robusti. Il rivestimento può essere eliminato facilmente e si può avere immediato accesso all’hardware.

Dopo essere arrivati alla parte elettronica, per hackerare  la prima cosa da fare è ricercare la marcatura delle componenti, fondamentale per risalire ai manuali e alle specifiche, oltre per identificare altre metodologie di attacco. Se venissero eliminati dai chip i nomi dei modelli, i numeri di serie e così via, i cybercriminali si troverebbero davanti una scatola nera anonima e avrebbero bisogno di maggior tempo e di effettuare ricerche per capire come hackerare il dispositivo.

Tuttavia, anche quando le case produttrici provano ad eliminare questo genere d’informazioni, non riescono a farlo in maniera adeguata.

Sostituire il firmware con un’altra versione che consenta al cybercriminale di bypassare la protezione non è un’impresa facile. In ogni caso, alcuni hacker con molte risorse ci riescono e, quel che è peggio, si tratta di un attacco che può essere ripetuto più volte. Quando i cybercriminali mediante l’ingegneria inversa capiscono come riprodurre il firmware, possono perpetrare l’attacco su altri dispositivi dello stesso modello.

Uno di questi attacchi si chiama TEMPEST e consente ai cyber criminali di sapere cosa accade all’interno dei dispositivo attraverso le emissioni elettromagnetiche. Si tratta di un attacco complesso che non viene portato a termine spesso, per lo meno non da persone o aziende comuni. In ogni caso, chiunque voglia proteggere i propri segreti da hacker sponsorizzati da governi, dovrebbe utilizzare USB con una copertura di fogli di rame, un tipo di protezione affidabile e non molto costosa contro gli attacchi TEMPEST.

Non tutti gli hacker si spingono così in là e arrivano a contraffare un dispositivo USB, ma se si tratta di un attacco promosso da governi allora sì che è probabile. Per questo motivo, se i vostri segreti dovessero essere di interesse per l’alto spionaggio, allora probabilmente vorreste che i vostri dispositivi USB fossero progettati in modo da essere difficili da contraffare.

Accesso

Un altro problema riguarda il livello di protezione delle parti del dispositivo USB che consentono l’autenticazione agli utenti legittimi e danno così accesso alle informazioni. In primo luogo, hackerare l’accesso è molto più facile che hackerare la memoria flash dell’hardware o hackerare l’algoritmo di cifratura. In secondo luogo, esiste una buona probabilità che la casa produttrice abbia commesso qualche errore nell’elaborazione del meccanismo di autenticazione. Per questo, è su tale aspetto che, dopo aver effettuate delle ricerche sul dispositivo, gli hacker sono soliti concentrarsi.

Per accedere l’utente potrebbe utilizzare 4 modi: inserire un codice PIN, avvalersi di un badge wireless, mediante impronta digitale o il PIN all’interno del software.

Il primo errore che può commettere la casa produttrice è quello di immagazzinare il PIN all’interno del software. Anche un cybercriminale poco esperto potrebbe risalirvi e hackerare non solo un dispositivo in particolare ma tutti quelli dello stesso modello. In alcuni casi, il software può contenere vulnerabilità che consentono di replicare l’attacco: è stato il caso dei dispositivi con certificazione FIPS analizzati dai ricercatori SySS in Germania nel 2009.

Digitare il codice PIN è un’azione che può essere soggetta a un semplice exploit, alcuni tasti si possono consumare per l’uso frequente e svelare così la combinazione.

I badge wireless sono anche peggio perché possono essere clonati con un semplice dispositivo; in questo modo, qualsiasi malintenzionato può entrare nella USB in un battibaleno, senza lasciare traccia e senza che nessuno si accorga dell’intrusione.

I ricercatori hanno mostrato le quattro metodologie durante l’intervento alla conferenza Black Hat:

Per quanto riguarda le impronte digitali, potrebbe sembrare un fattore di autenticazione robusto ma non è per nulla perfetto. Ci sono vari modi per clonare le impronte digitali, alcuni dei quali non richiedono il contatto fisico con la vittima (un cybercriminale può ottenere un buon fotogramma dell’impronta mediante una fotocamera DSLR e riprodurla con una stampante standard con inchiostro conduttivo). E la cosa peggiore è che, una volta clonata, l’impronta digitale non può essere cambiata come una password.

Tuttavia, i cybercriminali non devono per forza dover contraffare le impronte digitali. In alcuni casi, come hanno dimostrato i ricercatori, un dispositivo protetto da impronta digitale può essere violato utilizzando metodi più semplici.

Risulta che almeno uno dei modelli di USB protetti da impronta digitale analizzati da Bursztein e colleghi era vulnerabile: quando il sensore scannerizzava un’impronta legittima, inviava semplicemente un comando di sblocco al controller del dispositivo.

Un altro errore di questa particolare casa produttrice è stato lasciare attiva una porta di debug nel circuito. Mediante questa porta, i ricercatori sono riusciti a intercettare il comando di sblocco e replicare l’attacco su altri dispositivi dello stesso modello.

Sembrerebbero tutte operazioni molto complesse, ma meglio non lasciare nulla al caso. Un cybercriminale esperto può utilizzare questi errori per accedere ai vostri file e, se volete proteggerli da attacchi molto più complessi e con risorse come quelli sponsorizzati dai governi, dovreste preoccuparvi seriamente di tutte le vulnerabilità finora menzionate.

Controller

Pensate a un crypto controller/controller USB. Innanzitutto dovreste assicurarvi che il dispositivo non possa essere hackerato mediante un attacco di forza bruta. Ad esempio, alcuni dispositivi che utilizzano wireless tag, come quelli utilizzati dai ricercatori per dimostrare gli attacchi di tag-cloning, erano vulnerabili anche ad attacchi di forza bruta.

Per proteggersi da tali attacchi, un dispositivo di questo tipo dovrebbe bloccarsi dopo un certo numero di tentativi falliti. L’ideale sarebbe che la chiave di cifrature e le informazioni nella memoria flash venissero cancellate quando il dispositivo viene bloccato.

Non sarebbe male anche che il dispositivo si bloccasse quando viene rimosso da una porta USB, dopo un certo tempo di inattività e dopo il reset della USB.

Bisognerebbe assicurarsi che le password, i codici PIN e le chiavi di cifratura non siano richieste dal controller del dispositivo. Ciò potrebbe sembrare ovvio, ma è esattamente ciò che Bursztein, Pico e Audebert hanno scoperto in un dispositivo durante la loro ricerca. Sono riusciti anche a chiedere la master password dal controller di un dispositivo, grazie alla quale sono riusciti a creare facilmente un nuovo utente e a ottenere l’accesso a tutti i file immagazzinati.

Questo genere di attacchi consente a un cybercriminale non così esperto e dalle poche risorse di sbloccare un dispositivo di questo modello.

Cifratura

La cifratura dei dati, naturalmente, è il cuore della sicurezza di questo genere di dispositivi USB. La buona notizia è che sarebbe davvero improbabile che un cybercriminale senza risorse sufficienti propenda per questo vettore d’attacco; inoltre, la maggior parte dei moderni dispositivi cifrati utilizza robusti algoritmi di cifratura difficili da violare, anche quando non sono perfettamente implementati.

La cattiva notizia è che è non possiamo mai essere sicuri al 100%  che una casa produttrice abbia fatto bene i compiti.

Per chi non lo sapesse, una USB davvero sicura dovrebbe possedere l’AES,  lo standard di cifratura più recente, e non accade sempre. Durante la loro ricerca, Bursztein e colleghi si sono imbattuti in vari dispositivi che utilizzavano standard di cifratura datati come RC4 e RSA-512. È stato dimostrato che questi sistemi di cifratura sono vulnerabili, anche se necessitano risorse importanti.

Altri aspetti riguardano la generazione casuale di chiavi di cifratura, l’uso di generatori casuali di chiavi sicure e vettori d’inizializzazione, l’utilizzo di algoritmi sicuri per il chaining e così via. In ogni caso, tutto ciò riguarda coloro che vogliono proteggersi dallo spionaggio governativo.

Come hanno sottolineato i ricercatori, la magia della cifratura avviene nell’hardware, per cui è piuttosto difficile analizzare ciò che succede esattamente nella cifratura del dispositivo e scoprire le sue vulnerabilità. Sarebbe quindi utile disporre di maggiori informazioni sull’argomento.

Immagazzinamento dei dati

L’ultima categoria dei possibili vettori di attacco riguarda la lettura diretta della memoria flash. Sembra un’impresa difficile: un cybercriminale deve estrarre con cura la memoria dalla placca del circuito del dispositivo e collegarlo a un dispositivo di lettura. In alcuni casi, le case produttrici rendono loro la vita molto più facile, impiegando una mini scheda SD invece di un chip saldato.

Comunque sia, è dopo che arriva la parte più difficile, ovvero estrarre le informazioni dalla memoria flash. Dal punto di vista hardware, la memoria flash non immagazzina comodamente i dati come file tradizionali, per questo i cybercriminali avrebbero molto lavoro da fare per estrarre qualche informazione utile da una memoria flash.

Le case produttrici possono comunque commettere errori importanti, ad esempio immagazzinare il codice PIN in plain text nella memoria. Altri errori grossolani includono immagazzinare nella memoria la chiave di cifratura, l’hash del PIN, o la signing key nel firmware, ma ciò interessa soprattutto coloro che potrebbero essere oggetto di alto spionaggio.

Come hanno sottolineato Bursztein e il resto dei suoi colleghi, la ricerca in quest’ambito è appena cominciata per loro e non vedono l’ora di collaborare con altri ricercatori. E lo stesso vale per il progetto nella sua totalità: i ricercatori invitano tutti i ricercatori a dare un contributo per creare metodologie di revisione con lo scopo di rendere più sicuri i dispositivi USB e testare il maggior numero possibile di modelli.

Nel frattempo cosa possiamo fare per proteggere le informazioni immagazzinate in questi dispositivi USB “sicuri”, tenendo in considerazione proprio il fatto che non lo sono al 100%? L’opzione migliore è cifrare noi stessi i dati prima di caricarli e non affidarci totalmente al dispositivo.

Ad esempio, grazie a Kaspersky Endpoint Security for Business, potreste cifrare i dati con l’algoritmo AES-256. Se dovete trasferire dati confidenziali, potete raggrupparli in pacchetti protetti da password, cifrati e auto estraibili. Grazie alla modalità portatile specificatamente progettata per la cifratura di file, i dati potranno essere letti anche su computer su cui non sono presenti prodotti Kaspersky Security.