In una delle precedenti puntate della nostra saga sul GSM abbiamo menzionato una leggenda metropolitana di appropriazione via etere di codici criptografici. Ciò presuppone che qualcuno riesca a clonare la vostra SIM card senza alcuna manipolazione fisica, anche se fosse un clone temporaneo. Ad ogni modo, il codice Ki è archiviato localmente sulla SIM card e nel database del gestore, rimane al suo posto. Quindi, dove sta il trucco?
In teoria, un aggressore può stabilire una stazione base che emette un segnale forte e imita le richieste lecite al SRES inviando richieste RAND casuali (se non siete certi di ciò che significhi, è ora di dare un’occhiata alla prima parte della storia). Usando questo metodo, è in grado di calcolare il Ki con l’aiuto della criptoanalisi, proprio come se avesse accesso fisico alla SIM card.
The evolution of the SIM card – what has changed, what has not? https://t.co/VUa9NdEWiY #mobile #cell pic.twitter.com/w3Ef9jVqzl
— Kaspersky (@kaspersky) January 5, 2016
Tuttavia, questo metodo è piuttosto complesso: la criptoanalisi richiede del tempo e molte richieste finte. Mentre l’aggressore è occupato a bombardare la vittima con i RAND, il proprietario del telefono preso di mira potrebbe lasciare la portata radio della stazione base fasulla, e l’aggressore dovrebbe seguire la vittima con l’attrezzatura. Beh, se parliamo di un attacco mirato ben pianificato, potrebbe essere installata da qualche parte vicino alla casa. Il successo dell’attacco dipende dall’algoritmo criptografico: se il gestore utilizza COMP128v2, l’attacco potrebbe non funzionare.
Infatti, gli attacchi wireless sono innanzitutto progettati per consentire l’ascolto di nascosto delle conversazioni dell’abbonato. Come già sappiamo, la comunicazione via etere è criptata (tranne in alcuni casi speciali, quando il criptaggio viene disabilitato durante operazioni delle forze dell’ordine), essenzialmente per questa ragione: limitare la possibilità di ascoltare conversazioni private. Il criptaggio utilizza l’algoritmo A5 con un codice di 64 bit. A5 ha due versioni: la A5/1 più sostenibile e la A5/2 meno resiliente, che è inviata senza restrizioni a tutti i paesi “potenziali aggressori”.
What are virtual SIM cards and what do they do? https://t.co/8FLHwLXCug pic.twitter.com/R2WgxWFv73
— Kaspersky (@kaspersky) March 16, 2016
A dire il vero, neanche un codice A5/1 è di 64 bit, bensì di 54: i primi dieci bit sono “bit bassi”, che sono lì per semplicità. L’A5/2 è progettato per agevolare il compito dei servizi segreti che lavorano all’estero.
Prima, il metodo di attacco all’A5/1 consisteva nel attaccare attraverso metodi di forza bruta i dati archiviati localmente e richiedeva così tanto tempo che le informazioni in questione avrebbero perso la loro rilevanza prima che l’attacco fosse concluso. Ma i PC attuali (beh, neanche quelli “attuali”, poiché il corrispondente PoC è stato dimostrato per la prima volta nel 2010) sono in grado di intaccarlo nel giro di secondi e di calcolare il codice con l’aiuto delle cosiddette “rainbow table”. Il set di table da 1.7 TB può essere archiviato su delle memorie flash veloci e ad alta capacità, relativamente economiche e disponibili ovunque.
Un aggressore agisce passivamente e non trasmette nulla nell’etere, il che lo rende quasi non rilevabile. Il kit completo per violare il codice include appena il software Kraken con le rainbow table e un telefono moderatamente “ritoccato” della serie “Nokia con la torcia”. Armato di tali risorse, sarebbe in grado di origliare le conversazioni e di intercettare, bloccare o alterare i messaggi SMS (quindi, non considerate una “fortezza digitale” l’autenticazione a due fattori per la vostra banca online).
Unfortunately two-factor authentication can't save you from #banking Trojans https://t.co/dEKfOWPaXo #mobile pic.twitter.com/hRP7WnTNmS
— Kaspersky (@kaspersky) March 11, 2016
In possesso del codice, un aggressore può anche deviare le chiamate e impersonare la vittima. Un’altra abilità killer: la clonazione dinamica. Un delinquente avvia una richiesta di chiamata in uscita alla rete cellulare mentre anche la vittima è impegnata nella sessione. Quando il network rimanda la richiesta d’autorizzazione, l’aggressore la devia e la trasmette alla vittima, ottenendo così il codice Kc. Quindi è fatta, è terminata la sessione con la vittima che viene impersonata dall’aggressore che avvia la propria rete.
Ciò permette di avviare chiamate a spese della vittima e di fare altre cose, come mandare messaggi di testo a pagamento e sottrarre denaro attraverso i programmi partner di content provider. Questo metodo è stato usato una volta a Mosca: un gruppo di persone girava per piazze affollate in un furgoncino per clonare in maniera massiccia le SIM card e addebitarsi piccole somme di denaro dai telefoni delle persone.
Weak Link: How to lose everything having lost your #SIM-card https://t.co/wha5ECQP6A #security pic.twitter.com/ykU4j1mbvI
— Kaspersky (@kaspersky) November 18, 2014
I criminali riuscivano a passere a lungo inosservati: le malefatte sembravano avviate dagli utenti legittimi. L’unica cosa che aiutava a identificare lo schema di frode è un numero sospettosamente elevato di richieste simili a un certo content provider a pagamento nel raggio di una specifica stazione base.
Per criptare il pacchetto di traffico (GPRS/EDGE), viene utilizzato un altro codice Kc. Differisce dal codice Kc usato per il traffico voce, ma è calcolato usando lo stesso algoritmo: GPRS-A5, alias GEA (GPRS Encryption Algorithm), che esiste nelle versioni GEA1, GEA2 e GEA3. Ciò significa che è possibile intercettare anche il traffico mobile di Internet. Beh, oggi che il traffico è generalmente trasmesso su 3G e LTE, quindi questo problema non è più così grave. D’altra parte, la trasmissione dati 2G è ancora utilizzata in molti sistemi telematici come gli sportelli bancomat, i terminali POS e simili.
C’è un modo per prevenire attacchi del genere: usare l’algoritmo A5/3 più resiliente e aggiornato che non è violabile con l’aiuto delle rainbow table. Ad ogni modo, gli operatori sono un po’ riluttanti a installare la nuova tecnologia: punto primo, è una migrazione costosa che non porta un profitto aggiuntivo (significa che l’investimento è speso in qualcosa di non molto redditizio, che è un disturbo per l’operatore). Punto secondo, la maggior parte dei telefoni oggi non supporta l’A5/3 o almeno non adeguatamente, il che può provocare interruzioni.
SIM cards can be cloned… should you be concerned? https://t.co/zClUBFHipG #mobile pic.twitter.com/IjhdbiuvVK
— Kaspersky (@kaspersky) January 19, 2016
Punto terzo, l’A5/3 non fermerà gli aggressori dall’origliare gli abbonati: se si utilizza una stazione base fasulla, quest’ultima è messa nelle condizioni di fare il downgrade dell’algoritmo criptografico usato dal telefono, in definitiva aiutando gli hacker nel loro fine di ottenere il codice (e il codice è lo stesso in tutti gli algoritmi, badate bene!). Se la minaccia è ancora lì, a che pro investire ulteriore denaro e fatica per una migrazione a un migliore algoritmo criptografico? Punto quarto, è costoso. Punto quinto, è insostenibilmente costoso.
L’aspetto positivo è che tutti gli attacchi che abbiamo trattato oggi sono destinati a diventare obsoleti molto presto. L’era delle SIM virtuali e delle eSIM è già cominciata, e quei nuovi approcci alle SIM card risolveranno perlomeno alcuni dei difetti nella sicurezza che esistono in quelle odierne.