Cos’è il replay attack contro Immuni di Report e perché non dobbiamo preoccuparci

A thread ⬇️ studiofuga.com/2020/11/11/cos…
Nella puntata di ieri 9 novembre 2020 di Report si è parlato di un Replay Attack contro i software di Contact Tracing, in particolare contro la app Immuni, il quale potrebbe segnalare come positivo una vittima.
Siccome la notizia ha destato un certo scalpore, per lo meno su Twitter, vorrei far luce sul problema e spiegare (spoiler) perché non dobbiamo preoccuparci più di tanto di questo problema.
Un piccolo riassunto su come funziona Immuni
Come oramai sanno anche i sassi, Immuni funziona scambiando delle chiavi temporanee con i dispositivi nelle vicinanze tramite la tecnologia Bluetooth.
Queste chiavi sono memorizzate con la data e ora precisa del contatto all’interno del telefono, e periodicamente il dispositivo provvede a confrontare tali chiavi con quelle segnalate come “positive” dai server di immuni.
I dettagli sulla crittografia utilizzata nel processo sono irrilevanti.
E’ soltanto importante sapere che tali chiavi sono scambiate in modo completamente anonimo, e non esiste un singolo dato in tutto il processo che sia riconducibile ad un dispositivo specifico, tant’è che anche l’indirizzo univoco delle radio Bluetooth non è utilizzato durante…
…lo scambio ma è temporaneamente sostituito con uno casuale, che viene cambiato assieme alle chiavi.
Cos’è un replay attack

In crittografia un replay attack è un attacco alla sicurezza del sistema in cui un certo dato crittografato viene riutilizzato “alla cieca”, cioè senza conoscerne il contenuto, per alterare il funzionamento del sistema nel complesso.
Per fare un primo esempio, le tastiere wireless usano la crittografia per inviare i codici dei tasti premuti al computer; in un replay attack contro tali dispositivi, l’attaccante semplicemente ritrasmette gli stessi dati crittografati al computer, facendogli credere che…
…l’utente abbia digitato gli stessi tasti.
Un altro tipo di replay attack, secondo esempio, viene effettuato con le chiavi radiofrequenza che usiamo per aprire le porte di garage ed automobili.
Nel caso delle auto, qualcuno ha già sperimentato sulla propria pelle l’esito di tale attacco, per fortuna oramai limitato a modelli di auto particolarmente vecchi.
Il Replay attack contro Immuni

E’ noto da prima di maggio che il sistema di contact tracing usato da Immuni è vulnerabile a tale attacco, come ho spiegato in un mio articolo su Fanpage il 4 maggio scorso (fanpage.it/politica/trasp…).
La sintesi è questa: è possibile ritrasmettere le chiavi trasmesse dal dispositivo di Alice anche a grande distanza, utilizzando una specie di “ponte” o "ripetitore" (in gergo relay), cioè il dispositivo di Bob; i dispositivi vicini (di Charlie, Dave ecc…) ricevono le chiavi…
…trasmesse e le memorizzano con l’ora del momento.
Se successivamente Alice risulta essere positiva e carica le proprie chiavi sul server di Immuni, anche Charlie e Dave risulteranno aver avuto un contatto stretto anche se, in realtà, stavano vicini a Bob, il Relay dell’attacco, magari a chilometri di distanza.
Qual è la debolezza dell’attacco portato in questo modo? Che non è possibile sapere in anticipo se Alice sarà positiva o no.
Pertanto alcuni ricercatori hanno ovviato al problema prendendo una scorciatoia, ossia spostando l’orologio dei dispositivi di Charlie e Dave all’indietro; se invece di inviare le chiavi di Alice oggi inviamo le chiavi di un positivo a quella data precisa, otterremo l’effetto…
…voluto. I dispositivi di Charlie e Dave, non potendo sapere l’ora esatta, al successivo controllo vedranno le chiavi ricevute “nel passato” e dunque si segnaleranno come contatti a rischio.
E’ evidente che il meccanismo risolve il problema della positività di Alice ma ne introduce un altro, cioè la necessità di convincere Charlie e Dave, o i loro dispositivi, a spostare l’orologio alla data giusta.
Cosa assolutamente possibile tramite social engineering, cioè sostanzialmente truffandoli, o con exploit tecnici.
Ma anziché convincere Charlie e Dave a spostare indietro la data del telefono, cosa complicata e che può destare alcuni sospetti, non sarebbe più semplice trovare una o più persone con sintomi e in attesa di tampone, captare le loro chiavi, trasmetterle via internet al relay Bob?
Conclusioni
L’attacco mostrato nel servizio di Report è sicuramente fattibile, e diversi ricercatori l’hanno documentato con articoli scientifici, si veda per esempio "On the Effectiveness of Time Travel to Inject COVID-19 Alerts (eprint.iacr.org/2020/1393.pdf)" fresco fresco di pubblicazione..
Ma la vulnerabilità non è affatto nuova, anzi è nota da aprile, si veda "Analysis of DP3T (eprint.iacr.org/2020/399.pdf)", sezione 4.4 "Replay attack".
L'uso della "time machine" potrebbe essere risolta con quello che tecnicamente si chiama un clock monotonico – non mi addentro a spiegarne il meccanismo, molto tecnico - mentre viceversa il vero replay attack, senza “macchina del tempo”, è implicito nel sistema e non può in…
…alcun modo essere risolto.
C’è da allarmarsi? Secondo me no.
A ben vedere una minaccia ben più concreta è quella dell’eventuale mal-comportamento di un operatore sanitario che accetti di caricare le chiavi di un utente senza prima effettuare il tampone, al solo scopo di segnalare notifiche di contatti a rischio.
Dunque se non proprio una balla, quella di Report è una enorme esagerazione di cui credo, in questo periodo di incertezza, di sicuro potevamo fare a meno.
This thread can be read here: studiofuga.com/2020/11/11/cos…

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Federico Fuga

Federico Fuga Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @_happycactus_

10 Jun
Qualcuno potrebbe chiedersi: Ma i numeri sono giusti, allora, perché il concetto è completamente sbagliato?

Ve lo spiego subito.
Quel che conta, nel processo di riscaldamento, è la potenza per unità di volume (e la durata). In effetti fisicamente il riscaldamento di un corpo ...
... è l'effetto dell'aumento di energia dello stesso. Per riscaldare un corpo, devi fornire energia (semplifico molto per l'audience, mi perdoni @f_ronchetti).
Le onde elettromagnetiche emesse dal forno a microonde, da un radar o da un'antenna cellulare eccitano le molecole, ...
... in particolare quelle di Acqua, sulle quali è accordata la frequenza del forno, e la riscaldano. La potenza è l'energia fornita nell'unità di tempo. Pertanto quel che conta è la potenza assorbita dall'intero volume che vogliamo riscaldare.

Ora, lo scopo dell'antenna per ...
Read 16 tweets
28 Apr
Ho costruito un piccolo schemino di come dovrebbe essere strutturato un sistema di tracking basato sul framework Apple + Google.
Non è detto che sia quello definitivo, ma è ciò che ho potuto dedurre dalla lettura delle specifiche. Soggetto a revisione. Commenti in calce
Innanzi tutto due parole sulla struttura. Quando si parla di "framework" si intende una parte del sistema operativo, cioè un set di funzioni definite e implementate dai costruttori (Apple, Google e altri eventuali); le specifiche definiscono questa parte del sistema,oltre alle 1/
regole per utilizzarle ("API"). La "App" è la parte che l'utente "vede" e che gestisce alcune interazioni tra l'utente e gli altri sistemi coinvolti. Non tutte però. La App interagisce con il framework per poter accedere alle funzioni che quest'ultimo gestisce. 2/
Read 18 tweets
13 Apr
Sento con allegria cassare qualunque critica alla app di tracing perché meglio di niente. Come per le mascherine.
Solo che non è vero che è meglio di niente.
Immaginate se la app cominciasse a spedire alert a tappeto per un errore di programmazione.
O se gli alert arrivassero....
...Con giorni di ritardo.
O se la app permettesse a chiunque di esfiltrare i vostri dati dal vostro telefono. O se bloccasse l'1% dei telefoni su cui è installata.
Potrei continuare la lista per tutto il giorno e non sarebbe ancora completa.
Ora, nel paese in cui ...
... l'istituto di previdenza sociale non riesce a gestire una form di richiesta di sussidio per 6M di utenti, io dovrei sentirmi tranquillo?
Io sono molto preoccupato, e non ho neanche tacciato l'argomento della mia privacy.
Magari perché so come si progetta un sistema ....
Read 5 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!