Free Web Hosting Provider - Web Hosting - E-commerce - High Speed Internet - Free Web Page
Search the Web

GSM center - Universul GSM la indemana ta!
Articole la GSM Center
dati click pentru a contacta autorii Intoarcere la cuprins

CLONAREA GSM

Studiu asupra posibilitatilor si metodelor clonarii telefoanelor mobile

aparut in editia 22 noiembrie 1999

dupa un studiu de Ian Goldberg (si "ISAAC research group") impreuna cu Marc Briceno (Director al "Smartcard Developers Association") realizat in 13 Aprilie 1998

traducerea din limba engleza red drugoon


Introducere

Acest studiu contine informatii cu privire la rezultatele testelor de clonare GSM efectuate, pornind de la un nivel foarte ridicat, si continuand eventual cu informatii tehnice detaliate cu date pentru criptografi si matematicieni la sfarsit.
Acest articol este rezultatul colaborarii dintre Ian Goldberg (si al ISAAC research group) cu Marc Briceno (Director al Smartcard Developers Association).

Nota importanta adaugata dupa aparitia acestui studiu: articolul urmator este realizat la 13 Aprilie 1998 si este versiunea originala, fara nici o modificare inafara prezentei introduceri. El este realizat mai ales din motive educative. Va rugam sa luati cunostinta asupra faptului ca unele dintre parerile noastre se vor fi schimbat din momentul editarii lucrarii (este vorba aici despre posibilitatea clonarii fara contact care trebuie considerata o posibilitate viabila si nu trebuie ignorata). (adaugire din ianuarie 1999).

Explicatii preliminare

Vom arata in continuare cum pari cu acces fizic la telefonul (gsm) victimei poate "clona" telefonul si emite in mod fraudulos apeluri care vor fi taxate in contul victimei. Acest lucru arata ca organizarea prevenirii fraudelor GSM este mult sub asteptari si arunca indoieli asupra scopului propus. Oricum aceasta este doar (deocamdata) o eroare partiala a sistemului de securitate GSM: experimentele noastre s-au limitat in a arata ca telefoanele GSM pot fi clonate daca atacatorul are acces fizic la telefonul victimei. (In Statele Unite spre exemplu, telefoanele celulare analogice (NMT - vezi SunTel - n.tr.) pot fi clonate, nefiind necesar decat un simplu echipament de radio receptie. Astfel in SUA providerii de servicii analog pierd anual prin frauda peste 500 milioane $).

O tradare potentiala de luat in calcul este chiar ca vanzatorul (dealerul sau agentul) de telefonie mobila sa faca o "copie a cheilor gsm" pentru propriul uz. Mai tarziu, el va putea astfel face apeluri platite de dumneavoastra. Din cauza politicii providerilor in cazurile codurilor de autentificare (pe care se bazeaza in intregime), fara nici o asigurare ca acestea sa nu fie sparte, astfel de fraude pot fi nedetectate mult timp dupa ce banii s-au pierdut deja.

Pe ce ne-am bazat

Prevenirea fraudelor GSM se bazeaza in special pe codul de autentificare criptografiat care autentifica clientii si-i taxeaza. Un smartcard personalizat numit SIM aflat in telefon va stoca o cheie secreta care este utilizata pentru a identifica un client. Cunoasterea acestei chei este suficienta pentru a face apeluri taxabile pentru clientul respectiv. Smartcardul ar trebui sa protejeje cheia (chiar si impotriva celor care au contact direct cu simul). Autentificarea se realizeaza cu ajutorul unui protocol criptografic (de codare) prin care SIM-ul demonstreaza cunoasterea cheii si autorizeaza apelul.

Ca rezultat al analizelor noastre matematice am descoperit ca aceste coduri de criptografiere utilizate pentru autentificare nu sunt destul de puternice pentru a rezista unui atac. Pentru a exploata aceasta vulnerabilitate un individ va interactiona de mai multe ori cu simul. Cu un numar destul de mare de cereri adresate simului, atacatorul poate folosi tehnici matematice pentru a afla asa zisa cheie secreta. Odata cheia compronisa este posibil sa se emita apeluri frauduloase care vor fi taxate in contul victimei.

Clarificare

Dorim sa subliniem ca am demonstrat cum se cloneaza un telefon gsm daca este dat accesul fizic la telefon (sau simul sau). Multi vor fi probabil interesati de modul in care aceste atacuri pot fi realizate "over the air", adica fara contact cu telefonul victimei, cum ar fi de exemplu cu ajutorul unor echipamente radio specializate. Desi nu putem spune ca astfel de metode poate vor fi demonstrate candva, momentan noi nu am demonstrat pana acum asa ceva.

Cum de este posibil?

Aceasta vulnerabilitate poate fi atribuita unei erori de proiectare a sistemului de securitate: el a fost realizat in secret. De-a lungul anilor expertii au invatat ca singura cale de a atinge securitatea maxima este de a urma un proces deschis, incurajand publicul sa identifice greselile cat timp ele pot fi reparate. Nu ar fi fost posibil ca noi sa fim in stare sa spargem criptografie atat de reprede daca crearea sistemului de securitate s-ar fi facut in vazul publicului; nimeni nu este mai bun decat restul comunitatii stiintifice.

In sistemele de securitate ale telecomunicatiilo, deschiderea este o prioritate maxima pentru un proiect bun. Este atat de greu sa realizezi un cod perfect de prima data incat este absolut necesar ca acesta sa fie verificat de mai multe ori de catre diferiti oameni. In ciuda acestor lucruri, comitetul pentru securitate GSM a tinut proiectul in secret - ceea ce a facut proiectul atat de secret incat nimeni nu a putut sesiza la timp greselile si sa le repare. Cu 80 de utilizatori GSM, reproiectarea unui astfel de sistem este un lucru extrem de costisitor.

Ne asteptam ca o potentiala reparare a problemei sa fie scumpa. Un nou algoritm de autentificare ar trebui ales. Apoi ar trebui realizate noi simuri care sa fie programate conform noului algoritm si apoi distribuit celor 80 milioane de utilizatori. In final, ar trebui conceput un software upgrade pentru toate centrele de autentificare.

Date tehnice cu privire la realizarea atacului

Aratam cum am spart algoritmul de autentificare COMP128, o actualizare a A3/A8 foarte frecvent utilizat de providerii GSM. Atacul nostru este de forma atacului prin cereri alese. Alegem un numar de cereri pe care le adresam SIM-ului pe rand; SIM-ul aplica COMP128 codului sau secret si cererea noastra, intorcand catre noi un raspuns. Analizand acest raspuns vom fi capabili sa analizam valoarea cheii secrete.

Realizarea acestui atac presupune acces fizic la SIM-ul cu pricina, un smartcard-reader si un calculator pentru directarea operatiei. Atacul presupune accesarea SIM-ului de peste 150.000 de ori, cititorul nostru de simuri poate realiza 6.25 cereri pe secunda astfel incat intregul atac poate dura 8 ore. Un foarte scurt calcul este necesar pentru analizarea raspunsurilor.

Desi algoritmul COMP128 ar trebui sa fie secret, am extras informatii din documente publice si din cateva SIM-uri la care am avut acces. Dupa o analiza teoretica am descoperit un potential punct slab al algoritmului, confirmandu-se de asemenea ca reconstructia noastra a algoritmului COMP128 este corecta comparand o implementare software cu raspunsurile primite de la SIM-urile ce implementeaza COMP128.

Algoritmul de criptografiere

Atacul exploateaza o eroare de difuzie: exista o "conducta" in COMP128. In particular baitii i,i+8,i+16,i+24 de la iesirea rundei doi depinde doar de baitii i,i+8,i+16,i+24 de la intrarea in COMP128.(Prin "runda" intelegandu-se aplicarea de "butterflies" (cicluri) si S-box-uri; sunt in total 5*8 runde in COMP128). baitii i,i+8 din intrarea in COMP128 sunt baitii i,i+8 ai cheii, iar baitii i+16,i+24 ai intrarii sunt baitii i,i+8 ai cererii.

Acum am probat conducta variind baitii i+16, i+24 ai intrarii COMP128 (adica baitii i, i+8 ai cererii) si am retinut restul intrarilor constante. Cum rundele sunt non-bijective o coliziune in baitii i,i+8,i+16,i+24 ai iesirii se va produce probabil dupa doua runde. Paradoxul crearii (nasterii) garanteaza aparitia destul de rapida a coliiziunilor (deaoarece conducta este larga de 4 baitii); coliziunea in conducta se recunoaste deoarece se va realiza o coliziune si in iesirea din COMP128 (cele doua raspunsuri de autentificare vor fi aceleasi) si fiecare coliziune poate fi utilizata pentru a a afla cei doi baitii ai cheii: i si i+8 cu un pic de analiza a primelor doua runde (de exemplu prin realizarea unui atac "2-R attack" in terminologia criptanalizei diferentiale).

Asa cum aratat acestea vor necesita 2^{4*7/2 + 0.5} = 2^{14.5} cereri alese in intrarea lui COMP128 pentru aflarea a doi baitii ai cheii (deoarece fiecare dintre cei 4 baitii de iesire de dupa a doua runda sunt doar valori pe 7 biti) si acestea vor necesita 8 * 2^{14.5} = 2^{17.5} cereri pentru a recupera intreaga cheie Ki pe 128 de biti. Oricum se pot realiza cateva optimizari pentru micsorarea acestui numar.

De notat ca este destula literatura (documentatie) cu privire la designul functiilor hash criptografice cu structura de tip FFT (precum COMP128). De exemplu: lucrarea lui Serge Vaudenay cu privire la o teorie de criptanaliza black-box (ca si alte lucrari ale sale cum ar fi: ``FFT-Hash II nu este inca sigur'') este mai mult decat suficient pentru descoperirea acestei scapari din COMP128. Cu alte cuvinte, tehnica noastra de atac nu este neaparat noua.


Nota finala

de red drugoon Asa deci cum ati observat, desi este destul de dificil, procesul clonarii telefoanelor mobile este real. In editiile urmatoare vom publica si alte metodologii folosite in clonarea telefoanelor mobile. Important de asemenea este sa retineti ca procesul clonarii este un act de frauda si se pedepseste conform legilor in vigoare.
Scopul acestui articol este dat de dreptul utilizatorului gsm sa stie la ce se poate astepta.
In respect pentru utilizatorii GSM din Romania vom publica (daca ni se vor comunica) punctele de opinie cu privire la aceste lucruri exprimate de cei doi provideri GSM din Romania.
Ramaneti alaturi de GSM Center pentru a afla cat mai multe lucruri despre GSM