CLONAREA GSMStudiu asupra posibilitatilor si metodelor clonarii telefoanelor mobileaparut in editia 22 noiembrie 1999dupa 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 IntroducereAcest 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 preliminareO 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 bazatCa 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. ClarificareCum de este posibil?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 ataculuiRealizarea 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 criptografiereAcum 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 finalaScopul 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 |