Moldfinger

Dopo l´11 settembre c´è stato un improvviso aumento di interesse per le tecnologie di autenticazione biometrica. Questo aumento di interesse, nel campo della sicurezza informatica, si colloca in un periodo in cui l´autenticazione biometrica o con smart card è particolarmente di moda come ¨soluzione ultima e definitiva¨ ai problemi di sicurezza. Ho avuto già modo di dire come secondo me sia tutt´altro che una soluzione definitiva, e persone più autorevoli di me hanno detto più volte come queste tecnologie possano poco per risolvere i problemi legati al terrorismo internazionale. Forse in conseguenza di questo maggiore interesse però, qualcuno si è preso il disturbo di verificare quanto effettivamente fossero a robusti i prodotti che implementano queste tecnologie. Ha fatto particolarmente scalpore l´esperimento di Matsumoto, che con tecniche da ¨Mission Impossible¨ ma strumenti da drogheria è riuscito a realizzare un efficacissimo dito finto, per ingannare lettori di impronte digitali. Una serie di esperimenti analoga, ancora più rudimentale e che ha esaminato anche altre tipi di lettori biometrici, è stata pubblicata in Germania. Anche il settore delle smart card non è rimasto tranquillo, con il sempre valido Ross Anderson che ha pubblicato una nuova tecnica di attacco alle smart card.

Su questi fatti, particolarmente su quelli relativi alle tecnologie biometriche, si possono fare un certo numero di considerazioni. Quella che le tecnologie sono al momento meno robuste di quanto auspicabile è la più immediata, ma anche la meno interessante.

Devo dire che ho provato un certo imbarazzo leggendo questi articoli. Io non vendo prodotti di questo tipo (o di alcun altro tipo) e raramente mi è capitato di suggerire queste tecnologie; tuttavia, come molti che lavorano nel campo della sicurezza, pur dando per scontato che ci fossero attacchi più efficaci di quanto i venditori desiderassero, davo in qualche modo per scontato anche che attacchi così banali fossero stati presi in considerazione. In effetti, nell´articolo su Heise, si dice che le loro prove contraddicono le affermazioni di alcuni venditori. Evidentemente, queste ¨prove banali¨ non erano ancora state fatte, o meglio non erano state fatte da chi poi le avesse volute o potute pubblicare. Questo mi ricorda la questione della verifica del software opensource: in qualche modo spesso veniva data per scontata fino a quando ci si è accorti che tutti pensavano che l´avesse fatta qualcun´altro, ma spesso alla fine non l´aveva fatta nessuno. In pratica, dato che nessuno aveva segnalato debolezze e che i venditori garantivano determinate caratteristiche, si dava un po´ per scontato che quelle caratteristiche, almeno quelle più banali, i lettori biometrici le avessero davvero. D´altra parte, (quasi) nessuno è in grado di testare in proprio ogni prodotto; anche se in teoria ci sono centri specializzati nel testare prodotti, la maggior parte dei report difficilmente si può considerare indipendente.

Questo ci porta alla seconda considerazione. Chi si occupa di sicurezza tende generalmente ad essere cauto, oltre che paranoico; le novità sono guardate con sospetto e prese con le molle, perché sappiamo che i problemi devono ancora saltare fuori, le verifiche sul campo mancano, eccetera eccetera. Naturalmente la maggior parte delle nuove tecnologie e dei nuovi prodotti si presenta a sua volta come ¨estremamente sicura¨ grazie a nuove funzioni di sicurezza integrate, che poi nella maggior parte, sotto tante chiacchiere, si riducono a un po´ di autenticazione a chiave pubblica e ad un po´ di cifratura delle comunicazioni, con i soliti metodi; niente che giustifichi una minor cautela. Eppure, queste nuove tecnologie per la sicurezza (i lettori biometrici) vengono accettate con minore sospetto, come se l´essere strumenti di sicurezza le mettesse al riparo dai problemi legati alle novità. Non che tutti i problemi rilevati siano novità, ma è da poco che queste tecnologie sono considerate accessibili alle masse, e quindi manca la cultura di quali siano i parametri su cui valutatarle. Come ho avuto modo di dire recentemente a Websecurity, sarebbe utile che chi realizza prodotti che effettivamente riescono a resistere a determinati tipi di attacchi, pubblicizzasse adeguatamente questo fatto, in modo accessibile all´utente medio o evoluto, in modo che questi possa fare le giuste richieste agli altri potenziali fornitori.

Prendiamo questa volta come esempio le smart card. Qualche tempo fa avevano avuto un discreto risalto due attacchi. Il primo consisteva del ¨bombardare¨ con, se ben ricordo, raggi X, l´area della smart card corrispondente fisicamente all´area del chip in cui era memorizzata la chiave privata; lo scopo era cambiare un bit della chiave; a quel punto, la chiave non aveva più tutte le caratteristiche (ad esempio, essere un numero primo) che la rendevano difficile da attaccare; era quindi facile indovinare la nuova chiave, da quella risalire a quella originale ed utilizzarla. Il secondo consisteva nel misurare la corrente utilizzata dalla smart card nelle operazioni di cifratura, deducendone quanti fossero i bit a 1 della chiave, e riducendo quindi la scoperta della chiave ad un problema combinatorio. Questo secondo attacco in particolare era già noto, ma allora le smart card cominciavano a diffondersi e non tutte quelle realizzate erano allo stato dell´arte. È possibile realizzare smart card che resistano a questi e ad altri attacchi, ma quante attualmente sono resistenti? E il potenziale acquirente medio è in grado di saperlo?

Quando gli attacchi sono noti, uno strumento per avere qualche garanzia in più ci sarebbe; ad esempio, le famose certificazioni ITSEC o CC prevedono una valutazione dell´assurance, ovvero della ¨garanzia¨ che viene data sul fatto che le funzionalità di sicurezza siano realmente implementate come previsto. Ad esempio, se guardiamo i Common Criteria, sul sito del NIST si trova un nuovo profilo dedicato proprio alle smart card, SCSUG. Qui, nella sezione Threats (3.3), troviamo proprio quello che serve: 3.3.1.6 copre la misurazione della corrente, 3.3.1.7 copre i raggi X, o anche i flash degli ultimi attacchi. I corrispondenti obbiettivi dovrebbero quindi coprire questi attacchi. È questa la soluzione? Forse si, forse no. Certamente, per apparecchi ben definiti come sono le smart card o i lettori biometrici, le certificazioni CC hanno più senso di quanto io non ritenga che ne abbiano per sistemi più generici o applicazioni. Supponiamo però che una smart card sia stata valutata con successo secondo i criteri SCSUG di cui sopra, e poi venga scoperto un nuovo attacco, come quello descritto da Anderson, ci dobbiamo aspettare che il punto 3.3.1.7 abbia già affrontato il problema? Probabilmente in teoria si, ma nella pratica probabilmente dipende da come sono state implementate e verificate le protezioni. Certamente a quel punto la certificazione non gliela leva comunque più nessuno. Forse, un elenco delle vulnerabilità dalle quali è stata realmente verificata la protezione sarebbe più utile...

Cosa cambia nella pratica con la scoperta, o meglio verifica, di queste vulnerabilità di apparecchi biometrici? Piuttosto poco, temo. A più di un mese dalla pubblicazione degli articoli, i prodotti continuano ad essere venduti esattamente come prima, almeno a giudicare dai siti web che sono riuscito a verificare (alcuni dei quali offrono l´acquisto on-line), che non riportano neppure cenni ai problemi riscontrati. Magari in contesti in cui c´è particolare attenzione alla sicurezza si farà caso a questo problema, ma probabilmente molte aziende abbandoneranno i meccanismi di autenticazione tradizionali per soluzioni che danno ancora meno garanzie, convinte di aver fatto chissà quale passo avanti. E naturalmente, dato che si tratta comunque di problemi strettamente tecnologici, i dubbi e le perplessità sull´utilizzo di questi strumenti rimangono quelli di prima, che vengano o meno corretti i difetti riscontrati.