» »

Varnost slovenskih GSM omrežij

V ─Źlanku so predstavljeni rezultati varnostne analize slovenskih GSM omre┼żij, ki smo jo opravili v prvi polovici leta 2012.

Namen ─Źlanka je opozoriti na varnostne ranljivosti v slovenskih GSM omre┼żjih z namenom, da se varnostne ranljivosti odpravijo, posledi─Źno pa se pove─Źa stopnja varnosti in zasebnosti uporabnikov mobilne telefonije ter z namenom, da slovenski operaterji mobilne telefonije za─Źnejo ve─Ź vlagati v varnost omre┼żij in za┼í─Źito svojih uporabnikov.

Opozarjamo, da je izvajanje opisanih postopkov brez ustreznega soglasja prizadetih uporabnikov nezakonito.

Pri izvajanju varnostnega pregleda smo uporabili lastno opremo oz. izvajali analizo lastnih komunikacij, prav tako v slovenskih GSM omre┼żjih nismo povzro─Źali kakr┼ínihkoli motenj. Da bi prepre─Źili morebitne zlorabe, je ─Źlanek napisan tako, da ponovitev opisanih postopkov ni mogo─Źa na enostaven na─Źin, saj je nekaj vmesnih korakov izpu┼í─Źenih ali zelo poenostavljenih.

Predzgodba

Junija 1903 je imel Guglielmo Marconi za ─Źlane britanske Royal Institution predstavitev radijske komunikacije dolgega dometa. Za potrebe demonstracije je Marconijev asistent John Ambrose Fleming eno izmed radijskih naprav postavil v Londonu, z drugo pa je v dobrih 482 km oddaljenem mestu Poldhu upravljal Marconi sam. A tik preden se je demonstracija tedaj nove tehnologije za─Źela, se je iz sprejemnika v Londonu v morsejevi abecedi zasli┼íalo: "Podgane". Beseda se je ponavljala znova in znova, nato pa je sledila ┼íe posmehljiva "pesmica" o Marconiju.

Nova radijska tehnologija je tako ┼że na eni prvih predstavitev do┼żivela svoj "hack". "Heker", ki je Marconiju pokvaril njegovo demonstracijo pa je bil tedaj 39-letni Nevil Maskelyne, ki je kasneje za ─Źasopis The Times povedal, da je s tem hotel demonstrirati ranljivost radijske komunikacije. Kot v svojem delu The Codebreakers ugotavlja David Kahn, je razvoj sodobne kriptografije in zlasti kriptoanalize mo─Źno povezan z odkritjem radijskih komunikacij. Radijskim signalom je namre─Ź mogo─Źe enostavno prislu┼íkovati, zato je ┼íifriranje radijskih komunikacij v primeru izmenjave zasebnih sporo─Źil zelo pomembno. To velja ┼íe zlasti za podro─Źje mobilne telefonije.

Za─Źetki mobilne telefonije segajo ┼że v leto 1946, ko so pri AT&T v ZDA izvedli prvi mobilni klic. Kot zanimivost naj omenimo, da je tedanji "mobilni" telefon tehtal dobrih 36 kg, vgrajen pa je bil v avto. Prvi dejansko mobilni telefon so leta 1973 razvili pri Motoroli. Trajalo je celih 10 let, da so tehnologijo za─Źeli tudi tr┼żiti, slab kilogram te┼żka mobilna naprava z imenom Motorola Dynatac, ki je delovala zgolj pol ure (polnila se je 10 ur) pa je stala 3995 USD in si povsem upravi─Źeno prislu┼żila vzdevek "opeka".

Prvo komercialno mobilno omre┼żje so leta 1979 zagnali na Japonskem, leta 1981 pa so na Danskem, Finskem, Norve┼íkem in ┼ívedskem zagnali NMT sistem telefonije (Nordic Mobile Telephone), ki je (tudi pri nas) delovalo na 450 MHz (in se je pogovore, ker niso bili ┼íifrirani, dalo lepo poslu┼íati z UKV radijskimi postajami). Kasneje so NMT standard sicer raz┼íirili ┼íe na 900 MHz.

Ker pa sistemi prve generacije mobilne telefonije med seboj niso bili zdru┼żljivi, je bil leta 1987 razvit standard GSM. Gre za globalni sistem mobilne komunikacije, ki je bil v osnovi zasnovan tako, da uporabnikom omogo─Źa gostovanje v razli─Źnih omre┼żjih, pogovori v omre┼żju pa so (praviloma) ┼íifrirani. Prvo GSM-omre┼żje je bilo postavljeno na Finskem leta 1991, v Sloveniji pa so prvi GSM aparati zazvonili leta 1996.

GSM telefonija za ┼íifriranje pogovorov med telefonom in bazno postajo ter prenos ┼íifrirnih klju─Źev uporablja razli─Źne algoritme. V osnovi sta bila za ┼íifriranje pogovorov razvita A5/1 (ki omogo─Źa mo─Źnej┼íe ┼íifriranje) in A5/2 (ki omogo─Źa ┼íibkej┼íe ┼íifriranje podatkov). Mimogrede, prenos pogovorov ali SMS sporo─Źil v GSM omre┼żju lahko poteka tudi ne┼íifrirano - v─Źasih se zato navaja, da se za prenos uporablja "┼íifrirni" algoritem A5/0. Kasneje je bil sicer razvit tudi algoritem A5/3, ki je precej mo─Źnej┼íi kot A5/1.

┼íifrirni algoritem A5/1 je bil razvit leta 1987, A5/2 pa leta 1989 in sicer kot oslabljena razli─Źica algoritma A5/1. Oba algoritma sta bila razvita na skrivaj (tim. security through obscurity) in ob sodelovanju tajnih slu┼żb, ┼íibka zasnova pa je bila po mnenju prof. Rossa Andersona iz University of Cambridge namerna.

Raziskovalca Ian Goldberg in David Wagner sta algoritem za generiranje ┼íifrirnih klju─Źev A8 razbila aprila 1998, avgusta 1999 pa sta dokazala, da je razbitje A5/2 mogo─Źe v realnem ─Źasu. Prvi uspe┼íni napad na algoritem A5/1 je izvedel Jovan Goli─ç maja 1999, neodvisno od njega pa tudi Marc Briceno, ki je izvedel reverzni in┼żeniring na GSM telefonu. Biryukov in Shamir pa sta dokazala, da ga je z ustrezno opremo mogo─Źe razbiti v skoraj realnem ─Źasu (ve─Ź o tem je pisal Bruce Schneier na svojem blogu leta 1999).

Kljub vsemu so bili ti napadi ali bolj teoreti─Źni, ali pa je bila dejanska oprema za njihovo izvedbo razmeroma draga in dostopna zgolj dr┼żavnim organom (tovrstna oprema je znana tudi pod imenom "IMSI cacther", uporabljala pa naj bi jo tudi slovenska policija). Leta 2007 je zato skupina varnostnih raziskovalcev in hekerjev na internetu pri─Źela s projektom The A5 Cracking Project, katerega namen je bil izgradnja odprtokodne GSM prislu┼íkovalne naprave za manj kot 1000 EUR. Namen projekta je bil javno pokazati na ranljivosti v algoritmu A5/1 (in A5/2) in s tem prisiliti industrijo ter operaterje v izbolj┼íanje varnosti.

Na "hekerskem" sre─Źanju Chaos Communication Camp leta 2007 sta vodji projekta David Hulton in Steve Muller predstavila cilje projekta in glavne ugotovitve.

Na kratko. Za zajem podatkov naj bi se uporabljal tim. USRP (Universal Software Radio Peripheral). Gre za napravo, ki slu┼żi kot univerzalni radijski sprejemnik (ali tudi oddajnik), ki zna sprejeti kakr┼íenkoli radijski signal, analizo signalov pa izvaja posebna programska oprema na ra─Źunalniku (odprtokodni GNU Radio). Tako je USRP s pomo─Źjo programske opreme mogo─Źe spremeniti v GPS sprejemnik, AM sprejemnik, FM sprejemnik, sprejemnik digitalnega TV signala, itd., ┼żal pa je naprava razmeroma draga (okrog 1000 EUR).

Drugi del projekta pa bi bil de┼íifriranje z A5/1 ┼íifriranih prestre┼żenih pogovorov. Pri tem so si raziskovalci nameravali pomagati s tim. mavri─Źnimi tabelami. Gre za tabele s predizra─Źunanimi vrednostmi delov ┼íifrirnih klju─Źev, osnovna ideja pa je, da s pomo─Źjo shranjenih vnaprej izra─Źunanih vrednosti v tabeli za kriptoanalizo podatkov porabimo manj procesorskega ─Źasa.

Osnovna ideja izgradnje mavri─Źnih tabel je bila, da bi jih zgradili distribuirano s pomo─Źjo FPGA. FPGA ali Field Programmable Gate Array je posebno vezje, ki ga je mogo─Źe poljubno programirati. Navadno ga uporabljajo pri razvoju procesorjev, FPGA naprave pa so uporabne tudi pri kriptoanalizi. Konkretno - trije nem┼íki raziskovalci (Timo Gendrullis, Martin Novotny in Andy Ruppiz) iz nem┼íkega In┼ítituta za IT varnost na Ruhr-University Bochum so leta 2008 objavili ─Źlanek z naslovom A Real-World Attack Breaking A5/1 within Hours, v katerem opisujejo napad na GSM ┼íifrirni algoritem A5/1, ki ga je mogo─Źe izvesti v nekaj urah, napad pa se izvaja s posebno napravo COPACOBANA, ki je sestavljena iz FPGA ─Źipovja.

Mimogrede, leta 1997 je bilo ugotovljeno, da je 10 bitov ┼íifrirnega klju─Źa Kc umetno nastavljenih na 0, zaradi ─Źesar je bil napad na A5/1 z grobo silo 1024-krat enostavnej┼íi (to ranljivost naj bi odpravile po letu 2001 izdane SIM kartice), leta 2008 pa so bile v okviru A5 Cracking projekta ugotovljene ┼íe dodatne pomanjkljivosti, ki so pravo velikost ┼íifrirnega klju─Źa Kc v resnici zmanj┼íale ┼íe za dodatnih 10 bitov (tudi na novej┼íih SIM karticah).

Kakorkoli ┼że. V predstavitvi projekta na CCC 2007 sta David Hulton in Steve Muller poudarila, da bodo izsledki projekta javno dostopni. Na vpra┼íanje zakaj, je Steve Muller odgovoril takole (─Źas na posnetku predavanja 51:55):

OK, why is this a public project. There were a couple of other people working on this, and one of persons working of this, you may have been noted this was **** and apparently killed himself a couple of years ago.

And then was a guy from **** in London who proclaimed that he has cracked A5 and never showed up in the meeting again.

And just a half a year ago there was a professor from the University in Sussex, who proclaimed that he has cracked A5 with a new idea, and he was supposed to speak at Infosek security conference in London and GHCQ, which is the UK equivalent for the German BND, basically didn't allowed speaking them.

And I tried to contact him, and I send him an e-mail and got a reply from mailer daemon, this e-mail is not valid anymore. So there are a lot of people who got the problem from cracking A5 and we thought, if we do it from the start, very public and we involve many people as we can, it is much more helpful for us.

Skratka, izkazalo se je, da je bil A5 algoritem namerno zasnovan kot ┼íibek algoritem, raziskovalci, ki so se ukvarjali s kriptoanalizo tega algoritma pa so praviloma naleteli na te┼żave oziroma so nepojasnjeno izginili.

Hulton in Muller sta nato na konferenci Blackhat Washington pripravila ┼íe eno predstavitev projekta, kjer sta predstavila ┼że nekoliko bolj izdelano prislu┼íkovalno napravo za 900 USD.

Vendar pa v ─Źasu predstavitve projekt ┼íe ni bil povsem dokon─Źan, saj mavri─Źne tabele, ki sta jih raziskovalca uporabljala za kriptoanalizo GSM pogovorov ┼íe niso bile izdelane v celoti. Pri tem je pomemben podatek, da so se mavri─Źne tabele ra─Źunale distribuirano (torej, vsak ─Źlan projekta, ki je imel ustrezno opremo, je ra─Źunal svoj del mavri─Źnih tabel), hranile pa so se centralno, pri vodjema projekta, Hultonu in Mullerju. Vodji projekta sta takrat napovedala, da bodo mavri─Źne tabele zgrajene v prvih mesecih leta 2008, na spletni strani projekta pa je bila napovedana ┼żiva predstavitev delovanja prislu┼íkovalne naprave na izbrani varnostni konferenci v marcu 2008. Naprava se je imenovala A5 Buster in naj bi zmogla izvesti kriptoanalizo prestre┼żenih podatkov v cca. 30 sekundah.

A presenetljivo (?) do tega ni pri┼ílo. 5. junija 2008 je bila namre─Ź wiki spletna stran projekta izbrisana, Steve in David pa sta - izginila.

2. junija 2008 sem (Matej) na po┼ítni seznamu GSM Cracking projekta poslal e-sporo─Źilo z vpra┼íanjem kaj je bilo s predstavitvijo marca 2008 in ali so mavri─Źne tabele dokon─Źane. ┼áe isti dan sem od Steva Mullerja dobil sporo─Źilo, naj mu posredujem svojo telefonsko ┼ítevilko, ─Źe┼í, da se bomo pogovorili po telefonu. Posredoval sem mu svoj Skype kontakt in 5. junija (torej na dan, ko je izginila spletna stran projekta) me je kontaktiral. Pogovor je bil precej nenavaden, saj se je za─Źel s precej paranoi─Źnimi vpra┼íanji o tem za koga delam, med odgovori so bili nekajminutni premori, na koncu pa je Steve povedal, da podrobnosti ne bodo javno objavili, ker se bojijo, da bi tehnologija padla v roke kak┼íni kriminalni organizaciji (kot da tega niso vedeli ┼że prej).

Kasneje se je izkazalo, da so nekaj mesecev pred tem Steva Mullerja ob izstopu iz Britanije povabili na informativni pogovor in mu (za─Źasno) zasegli nekaj opreme, po neuradnih informacijah iz po┼ítnega seznama GSM Cracking projekta pa naj bi to storila britanska tajna slu┼żba MI5. Kasneje se je izvedelo, da vodji projekta nista ─Źisto zares izginila, pa─Ź pa naj bi v ZDA ustanovila podjetje, ki naj bi se ukvarjalo z izdelavo IMSI catcherjev, seveda samo za vladne organizacije.

Kljub temu pa projekt ni zamrl. Nekaj mesecev za tem so ga namre─Ź o┼żivili pri nem┼íkem Computer Chaos Clubu pod imenom AirProbe, v okviru katerega je potekal poseben podprojekt, ki se je ukvarjal z izgradnjo mavri─Źnih tabel, s pomo─Źjo katerih je mogo─Źe zlomiti A5/1 za┼í─Źito.

Ker je strojna oprema FPGA za obi─Źajne smrtnike nekoliko te┼żje dosegljiva so pri obnovljenem projektu mavri─Źne tabele za─Źeli graditi s pomo─Źjo GPU (grafi─Źnih kartic) in bili precej bolj uspe┼íni. Vmes je sicer prihajalo do precej banalnih te┼żav (zaradi napake v algoritmu je bilo na neki to─Źki potrebno vse mavri─Źne tabele zavre─Źi), a projekt se je uspe┼íno pribli┼żal koncu (na CCC konferenci leta 2009 sta Karsten Nohl in Chris Paget predstavila prve izsledke projekta).

V tem ─Źasu je namre─Ź skupina 24 prostovoljcev zgradila okrog 2TB mavri─Źnih tabel. Razvijalci tokrat niso ponovili napake prej┼ínjega projekta in so mavri─Źne tabele hranili distribuirano. Danes jih je mogo─Źe dobiti na torrent omre┼żju.

Kasneje (leta 2010) je skupina zbrana okrog projekta AirProbe izdala program Kraken, ki omogo─Źa kriptoanalizo prestre┼żenih podatkov s pomo─Źjo ┼że omenjenih mavri─Źnih tabel, v okviru projekta OsmocomBB pa je bila razvita tudi posebna strojna programska oprema, ki jo je mogo─Źe nalo┼żiti na dolo─Źene mobilne telefone in jih s tem spremeniti v GSM sprejemnike (s tem odpade potreba po nakupu drage USRP naprave).

Tako danes za prestrezanje z A5/1 ┼íifriranih podatkov v GSM omre┼żju potrebujemo enega izmed podprtih mobilnih telefonov, ki uporablja Calypso vezje (cena na eBayu ali Bolhi je do 30 EUR), poseben kabel, ki omogo─Źa povezavo ra─Źunalnika in mobilnega telefona preko USB (kable je mogo─Źe kupiti za nekaj EUR ali pa si jih naredimo sami), 2 TB disk z mavri─Źnimi tabelami (ki jih dobimo na torrent omre┼żju), ra─Źunalnik (lahko povsem obi─Źajen) in ustrezno programsko opremo (Osmocom paket, Kraken in Wireshark z podporo za analizo GSM protokola).

V Osmocom paketu je najprej iz izvorne kode potrebno prevesti strojno programsko opremo, ki jo nato s programom osmocon nalo┼żimo na mobilni telefon. Pri tem je potrebno programsko kodo prevesti za ARM procesorsko arhitekturo. Strojno programsko opremo nato za─Źasno nalo┼żimo na mobilni telefon (torej je na njem aktivna dokler telefona ne ugasnemo in odstranimo baterije), tako predelan mobilni telefon pa nato zna poslu┼íati v GSM omre┼żju. Telefon ne oddaja signalov, niti vanj ni potrebno vstaviti SIM kartice, zato je celotno prestrezanje povsem pasivno. Nekatere mobilne telefone lahko ┼íe dodatno modificiramo tako, da fizi─Źno zamenjamo dolo─Źena vezja na njem, kar nam omogo─Źi tudi spremljanje tim. navzgornje (ang. uplink) povezave. Seveda ni odve─Ź poudarjati, da vsa navedena programska oprema deluje na Linuxu, pomembno pa je vedeti, da nekateri klju─Źni deli te programske opreme zaradi potrebe po natan─Źni ─Źasovni sinhronizaciji ne delujejo v virtualnem okolju (vsaj zadovoljivo ne) pa─Ź pa zgolj na fizi─Źnem ra─Źunalniku. Tudi na sistemih strojne virtualizacije lahko pri zajemu prihaja do izgube podatkov, zato priporo─Źamo uporabo fizi─Źnega ra─Źunalnika, oziroma kve─Źjemu virtualizacije na ravni operacijskega sistema. V javnem Osmocom Git skladi┼í─Źu sicer ni dostopna vsa programska koda za analizo prometa in razbijanje GSM ┼íifrirnih klju─Źev. Za za─Źetek pa si za la┼żje razumevanje tematike oglejmo nekaj osnov GSM omre┼żja.

Nekaj osnov o GSM

GSM protokol je sicer zelo obse┼żen, v tokratnem prispevku pa si bomo ogledali le nekatere klju─Źne oziroma za namen varnostne analize GSM najbolj zanimive dele. Signalizacija in podatki so lo─Źeni po razli─Źnih kanalih, opravka pa imamo z ve─Ź ─Źasovno-frekven─Źnimi problemi, zato je za razumevanje v tem ─Źlanku opisanih postopkov potrebno vsaj osnovno poznavanje GSM-a.

GSM protokol opredeljuje razli─Źne na─Źine komunikacije - komunikacijo med bazno postajo in mobilnim telefonom (oz. mobilno postajo), pa tudi komunikacijo od same bazne postaje do centra. V pri─Źujo─Źem ─Źlanku si bomo podrobneje ogledali le komunikacijo med mobilnim telefonom in bazno postajo, kljub temu pa je potrebno vsaj okvirno poznati celotno sliko dogajanja v sistemu.

Slika: shema GSM omrežja, vir: http://www.gsmfordummies.com.

Slika: shema GSM omrežja, vir: http://www.gsmfordummies.com.

Na sliki lahko vidimo razli─Źne dele operaterskega GSM omre┼żja. Na levi strani je mobilni telefon, sledi bazna postaja (BTS - Base Transceiver Station), ki je oddajnik za GSM pakete, vsa logika se skriva v kontrolnem centru (BSC - Base Station Controller), ta pa je povezan na preklopni center (MSC - Mobile Switching Center), ki skrbi za povezovanje klicev, SMS sporo─Źil in podobno.

Informacije o trenutnih uporabnikih se nahajajo v registru obiskovalcev (VLR - Visitor Location Register), informacije o naro─Źnikih pa v doma─Źem registru (HLR - Home Location Register). Ta dva sistema oz. bazi podatkov skrbita tudi za registracijo uporabnikov.

Za povezovanje s tujimi operaterji skrbi prehodni preklopni center (GMSC - Gateway Mobile Switching Centre oziroma Network switching subsystem), priklopljen na omre┼żje SS7. To omre┼żje nam omogo─Źa opravljanje mednarodnih telefonskih storitev oziroma izmenjavo klicev in drugih podatkov, nanj pa so povezani vsi operaterji. SS7 omre┼żje sporo─Źa tudi lokacijo nekega ┼żelenega uporabnika, za potrebe preusmeritev klicev k pravemu operaterju, ─Źe je uporabnik v tujini.

Mobilni telefon in SIM kartica

Mobilni telefon je v resnici sestavljen iz dveh delov – fizi─Źne naprave (ang. mobile equipment) in SIM kartice. Med tem ko sama fizi─Źna naprava skrbi zlasti za radijsko komunikacijo, SIM kartica skrbi za avtentikacijo uporabnika v omre┼żju. SIM kartica je tim. pametna kartica (vsebuje mikroprocesor), ki vsebuje podatke za avtentikacijo in avtorizacijo uporabnika mobilnega telefona v mobilnem omre┼żju.

Na SIM kartici je shranjen ┼íifrirni klju─Ź, ki omogo─Źa ┼íifriranje pogovorov med mobilnim telefonom in bazno postajo v GSM omre┼żju, poleg tega pa je na SIM kartico mogo─Źe shranjevati tudi dolo─Źene uporabni┼íke podatke. Najpomembnej┼íi med njimi so seznam kontaktov uporabnika (tim. telefonski imenik) in SMS sporo─Źila. Nekateri starej┼íi mobilni telefoni pa so na SIM kartico shranjevali tudi zadnje klicane ┼ítevilke. Naj dodamo, da novej┼íi mobilni telefoni uporabni┼íkih podatkov na SIM kartico praviloma ne shranjujejo, pa─Ź pa se ti podatki shranjujejo v telefon.

SIM kartica vsebuje naslednje podatke:

Poleg tega SIM kartica vsebuje še:

ICCID oz. serijska številka SIM kartice

ICC-ID (Integrated Circuit Card ID) ┼ítevilka je identifikacijska ┼ítevilka SIM kartice. Shranjena je v sami SIM kartici, je pa tudi natisnjena oz. vgravirana na njeni povr┼íini. ICCID se generira v procesu tim. »personalizacije« SIM kartice. ┼átevilka je dolga 19 (za Phase 2 SIM kartice) ali 20 (za Phase 1 SIM kartice) znakov, sestavljena pa je iz naslednjih elementov, ki temeljijo na ISO/IEC standardu 7812:

IMSI in TMSI številka

IMSI ┼ítevilka slu┼żi kot identifikator naro─Źnika v GSM omre┼żju. Identifikator telefonskega aparata pa je IMEI ┼ítevilka (International Mobile Equipment Identity), gre za neke vrste serijsko ┼ítevilko mobilne naprave (telefona).

IMSI ┼ítevilka je zapisana na SIM kartici. Na podlagi IMSI ┼ítevilke se mobilni uporabnik predstavi mobilnemu omre┼żju, omre┼żje pa mu »dodeli« naro─Źni┼íko telefonsko ┼ítevilko. Zaradi mo┼żnosti la┼żjega prislu┼íkovanja in zlasti sledenja uporabnikom naj bi se IMSI ┼ítevilka po omre┼żju prena┼íala ─Źim redkeje (kako je s tem v resnici pri nekaterih slovenskih operaterjih bomo videli v nadaljevanju). Namesto nje se prena┼ía naklju─Źno generirana TMSI ┼ítevilka. IMSI se prenese preko omre┼żja v trenutku, ko se telefon vklju─Źi ali ko je potrebno obnoviti povezavo med IMSI in TMSI (oz. generirati nov TMSI). TMSI ┼ítevilka je omejena na lokacijsko obmo─Źje, kar pomeni, da je potrebno nov TMSI generirati vsaki─Ź, ko se mobilni uporabnik premakne v novo lokacijsko obmo─Źje. Lokacijska obmo─Źja tvori ena ali ve─Ź baznih postaj. Vsako lokacijsko obmo─Źje ima svojo lastno kodo lokacijskega obmo─Źja, kodo pa v intervalih oddajajo posebne bazne postaje in sicer tim. »base transceiver station« ali BTS v GSM omre┼żjih oziroma Node B v UMTS omre┼żjih.

Prve tri cifre IMSI ┼ítevilke ozna─Źujejo kodo dr┼żave – Mobile Country Code (MCC), sledita dva znaka (po evropskem oziroma trije znaki po severnoameri┼íkem standardu) za oznako omre┼żja – Mobile Network Code (MNC). Preostanek je identifikacijska ┼ítevilka uporabnika – Mobile Subscriber Identification Number (MSIN). Mobile Country Code (MCC) koda za Slovenijo je 293. Oznaka 901 je oznaka za International Shared Codes. 901 08 slu┼żi za za identifikacijo telefona brez SIM kartice (za klice v sili). Naj dodamo, da v nekaterih dr┼żavah ni mogo─Źe opraviti klica v sili zgolj s telefonom, torej brez kakr┼ínekoli SIM kartice.

Avtentikacijski ┼íifrirni klju─Ź (Ki)

Avtentikacijski ┼íifrirni klju─Ź ali Ki je 128-bitna spremenljivka, ki slu┼żi za avtentikacijo SIM kartice mobilnemu omre┼żju. Ki je unikaten in dolo─Źen v procesu personalizacije. Shranjen je na SIM kartici in v podatkovni bazi mobilnega operaterja, v tim. Home Location Registru (HLR). Ki klju─Źa ni mogo─Źe izpisati, pa─Ź pa ima SIM kartica posebno funkcijo RUN GSM ALGORITHM, ki telefonu omogo─Źa, da SIM kartici po┼ílje podatke, le-ta pa jih podpi┼íe s Ki klju─Źem.

Zaradi tega se uporabi SIM kartice v GSM omre┼żju ni mogo─Źe izogniti, saj je SIM kartica nujno potreben element GSM omre┼żja. Zaradi slabe varnostne zasnove je bilo stare SIM kartice mogo─Źe razmeroma enostavno klonirati oz. prekopirati Ki ┼íifrirni klju─Ź. To je bilo mogo─Źe preko radijske povezave v ne┼íifriranih omre┼żjih (ve─Ź informacij o tem v ─Źlanku GSM Cloning avtorjev Iana Goldberga in Marca Bricena iz leta 1998). Druga mo┼żnost je fizi─Źni dostop, kjer napadalec SIM kartici po┼íilja poizvedbe (tim. challenge) in v cca. 4 do 8 urah iz nje izlu┼í─Źi Ki klju─Ź (pri tem procesu je obstajala tudi cca. 40% verjetnost po┼íkodovanja oz. uni─Źenja kartice). Pri novej┼íih SIM karticah je kloniranje bistveno te┼żje.

Pomembno je tudi vedeti, da lahko napadalec, ki pridobi dostop do Ki klju─Źa oz. SIM kartice, de┼íifrira pogovore med mobilnim telefonom in omre┼żjem. V primeru, da se ne uporablja tim. poudarjena zaupnost (ang. perfect forward secrecy), je mogo─Źe pogovore de┼íifrirati tudi za nazaj (v primeru, da bi napadalec snemal GSM pogovore ┼żrtve, in bi nato kasneje pridobil SIM kartico, bi lahko za nazaj de┼íifriral vse ┼íifrirane pogovore).

Local Area Identity (LAI)

Vsako lokacijsko obmo─Źje ima svojo unikatno identifikacijsko ┼ítevilko, ki je sestavljena iz:

Podatke o lokaciji (Mobile Country Code, Mobile Network Code ter Local Area Code) oddaja mobilno omre┼żje na tim. Broadcast Control kanalu (BCCH). Mobilni telefon pa LAI ┼ítevilko shrani v SIM kartico. Ob spremembi lokacijskega obmo─Źja, se podatek obnovi.

Radijska komunikacija - fizi─Źni nivo

Naslednji pomemben del GSM omre┼żja in tudi tisti do katerega imamo neposreden dostop, je radijska komunikacija med bazno postajo in mobilnim telefonom, za katero je zadol┼żen ve─Źji del GSM protokolov. V osnovi ga delimo na 3 sloje. Prvi sloj nudi fizi─Źno povezavo, na drugih dveh slojih pa se pretakata signalizacija in prenos podatkov.

Za potrebe varne in u─Źinkovite komunikacije je frekven─Źni prostor razdeljen. V osnovi imamo nekaj kanalov, ki so razdeljeni v tim. navzgornjo povezavo (ang. uplink) in tim. navzdoljno povezavo (ang. downlink) in so zamaknjeni za 200kHz. V GSM ne govorimo o frekvenci na kateri mobilni telefon komunicira z bazno postajo, pa─Ź pa o paru dveh kanalov (tim. uplink in downlink) za prenos signalov. Ozna─Źujemo ju z ARFCN (Absolute Radio Frequency Number). Iz te ┼ítevilke je mogo─Źe izra─Źunati tim. navzgornjo (ang. uplink) in navzdoljno (ang. downlink) frekvenco glede na to na katerem frekven─Źnem obmo─Źju komuniciramo.

Komunikacijski prostor pa ni razdeljen samo po frekvenci, ampak tudi po ─Źasu. Ta na─Źin se imenuje TDMA (Time Division Multiple Access), z njim razdelimo podatkovne okvirje na ─Źasovnice - kdaj se dolo─Źeni podatki prena┼íajo. V GSM imamo 8 tako imenovanih ─Źasovnih rezin, poimenovanih v TDMA okvir (zato je v GSM omre┼żju tako pomembna natan─Źna ─Źasovna sihronizacija).

V eni ─Źasovni rezini lahko prenesemo 148 bitov informacije, ki jim re─Źemo “izbruhi” (ang. burst; podatkovni paketki). ─îe zdru┼żimo ve─Ź okvirjev skupaj, dobimo multiokvir. En multiokvir kontrolnega kanala traja 51 TDMA okvirjev, v primeru podatkovnega pa 26 TDMA okvirjev.

2. 3. GSM logi─Źni kanali

Obstaja dva osnovna tipa kanalov, podatkovni in kontrolni. Kanale pa delimo ┼íe na logi─Źne kanale, odvisno od tipa podatkov, ki se po njih prena┼íajo.

Podatkovni kanali - Traffic Channels (TCH)

Full rate kanali (TCH/F): uporabljajo 24 okvirjev celotnega 26 multiokvirja, z bitno hitrostjo 22,7 kbit/s. En okvir se porabi ┼íe za signalizacijo eden pa je prazen, da se lahko v tem ─Źasu i┼í─Źe bazne postaje z ve─Źjo mo─Źjo.

Half rate kanali (TCH/H): pa so polovi─Źni - 12 okvirjev, z bitno hitrostjo 11,4 kbit/s. Tako je omogo─Źeno, da se prena┼íata 2 pogovora na istem kanalu.

Namenski kontrolni kanali - Dedicated Control Channels

  1. Standalone Dedicated Control Channel (SDCCH): se uporablja za ve─Źino kratkih transakcij, vklju─Źno z inicializacijo vzpostavitve klica, registracijo in po┼íiljanjem SMS sporo─Źil. Nosilna hitrost je0,8 kbit/s. Do najve─Ź osem SDCCH-jev je lahko ─Źasovno multipleksiranih v enem fizi─Źnem kanalu. JSDCCH je podatkovni kanal za dialog med mobilnim telefonom in omre┼żjem in ni povezan z drugimi TCH kanali.
  2. Fast Associated Control Channel (FACCH): je zdru┼żen s podatkovnim kanalom. Le temu odvzema tim. “izbruhe”. Tim. “izbruhi”, ki nosijo FACCH vsebino, se od podatkovnih “izbruhov” razlikujejo po tem, da odvzemajo bite na koncu podatkovnega kanala. FACCH je prisoten pri klicni signalizaciji, pri prekinitvi klica in kasnej┼íih fazah vzpostavitve klica. Bitna hitrost je 9,2 kbit/s za tim. full rate in 4,6 kbit/s za tim. half rate. FACCH uporablja isto multiframe strukturo kot njegov podatkovni kanal.
  3. Slow Associated Control Channel (SACCH): nosi sistemska sporo─Źila v tim. navzdoljni povezavi (ang. downlink) in prejemnikova merilna poro─Źila v tim. navzgornji povezavi (ang. uplink), izvaja ─Źasovni nadzor ter nadzor mo─Źi in jakosti signala. Vsakemu FACCH in SDCCH kanalu pripada SACCH kanal.

Skupni kontrolni kanali - Common Control Channels

Ti kanali se uporabljajo izklju─Źno za upravljanje z mobilnim telefonom.

  1. Broadcast Control Channel (BCCH): ponavljajo─Źe prena┼ía sistemska sporo─Źila z informacijami o identiteti, LAI (Location Area Identity), konfiguraciji in mo┼żnimi funkcijami baznih postaj.
  2. Synchronization Channel (SCH): vsebuje kodo bazne postaje - Base Station Identity Code (BSIC), ki je unikatna koda vsake postaje, in trenutno vrednost TDMA ┼ítevca. S tem lahko ugotovi v katerem delu sprejema je in kako sporo─Źila sprejemati naprej. Preko tega kanala vzpostavimo tudi ─Źasovno sinhronizacijo.
  3. Frequency Correction Channel (FCCH): generira ton na radio kanalu, katerega bazna postaja uporabi za uskladitev lastnega oscilatorja.
  4. Paging Channel (PCH): nosi storitvene pozive dolo─Źenim mobilnim napravam, poslane s strani omre┼żja. Mobilni telefon povezan z bazno postajo, na PCH kanalu neprestano spremlja pozive iz omre┼żja.
  5. Access Grant Channel (AGCH): je namenjen za odzive bazne postaje na zahteve po prostih kanalih, poslane s strani mobilnih telefonov preko RACH kanala.
  6. Random Access Channel (RACH): je tim. navzgornji kanal (ang. uplink) AGCH kanala; je deljiv kanal na katerem mobilne naprave po┼íiljajo baznim postajam naklju─Źne dostopovne “izbruhe” z zahtevo po prostem kanalu do bazne postaje. Vsi RACH kanali imajo specifi─Źno “lokacijo” (glede na frekvence in ─Źasovne rezine).

Preslikava kanalov na ─Źasovne rezine

Logi─Źni kanali se na tim. navzgornje/navzdolnje (ang. uplink/downlink) ─Źasovne rezine preslikajo na razli─Źne na─Źine. Gre za razli─Źne kombinacije kanalov.

Radijska oprema v baznih postajah in predvsem v mobilnih telefonih je taka, da ne more ob istem ─Źasu hkrati oddajati in sprejemati, vendar pa lahko v neki ─Źasovni rezini mobilni telefon oddaja, bazna postaja pa sprejema.

Sprejemnik poslu┼ía signal tri ─Źasovne rezine za oddajanjem. Ko torej mobilni telefon oddaja na rezini 3, bazna postaja v tem ─Źasu poslu┼ía, in obratno. V primeru ko nastopi prosti (ang. idle) “izbruh”, mobilni telefon po drugih frekvencah i┼í─Źe mo─Źnej┼íe bazne postaje, kar uporabniku omogo─Źi preklop iz ene bazne postaje na drugo brez motenj, tudi ─Źe se uporabnik med klicem giblje.

Skakanje med frekvencami

Sistem skakanja med frekvencami (ang. frequency hopping) se uporablja zaradi ve─Źje spektralne u─Źinkovitosti. Obstajata dva na─Źina skakanja med frekvencami:

  1. Cikli─Źno skakanje: sprejemnik bazne postaje ska─Źe po seznamu vnaprej definiranih frekvenc kro┼żno.
  2. Naklju─Źno skakanje: sprejmnik ska─Źe med frekvencami v psevdonaklju─Źnem slogu.

V GSM omre┼żju obstaja 63 razli─Źnih algoritmov skakanja med frekvencami. Ko bazna postaja od mobilnega telefona zahteva naj preklopi v na─Źin skakanja med frekvencami, le-temu po┼ílje seznam kanalov (ARFCN) med katerimi naj ska─Źe in algoritem po katerem naj ska─Źe (HSN).

Iz stali┼í─Źa bazne postaje obstajata dva na─Źina skakanja:

  1. Sintizirano skakanje: v tem primeru nek oddajnik bazne postaje ska─Źe med istimi frekvencami kot mobilni telefon.
  2. Skakanje v osnovnem pasu: bazna postaja ima ve─Ź oddajnikov, vsak je na fiksni frekvenci med tistimi po katerih lahko ska─Źe mobilni telefon. Vsakemu oddajniku je dodeljen ena fiksna ─Źasovna rezina za TDMA okvir. Tako je na primer ob nekem ─Źasu rezina 1 dodeljena oddajniku 2 za en TDMA okvir, v naslednjem TDMA okvirju pa je dodeljena oddajniku 3. Na tak na─Źin so podatki poslani na razli─Źnih frekvencah ob razli─Źnih ─Źasih, oddajnikom pa ni potrebno skakati po frekvencah, pa─Ź pa bazna postaja le zamenjuje oddajnike.

Potek klica, postopki in razni scenariji

Inicializacija mobilne naprave

Pri┼żgan mobilni telefon se inicializira skozi tri dogodke, katerih namen je zaznavanje osnovnega frekven─Źnega signala (Base Frequency Signal oz. Beacon Signal). Bazna postaja s tem signalom ozna─Źuje svojo prisotnost, identiteto operaterja in osnovne informacije glede logi─Źnih kanalov.

Frekven─Źna sinhronizacija je proces iskanja osnovnega frekven─Źnega signala, ki poteka skozi dva koraka:

  1. Iskanje GSM signala: pri┼żgan mobilni telefon pri─Źne z iskanjem radijskih signalov na GSM frekven─Źnem pasu, ki ga podpira - 900 in 1800 MHz. Meri jakost radijskega signala in ugotavlja ali je zadovoljiva za vzpostavitev povezave. Takrat mobilni telefon sprejme frekvenco in nadaljuje s koraki sinhronizacije. V kolikor jakost ni zadovoljiva, pri─Źne s ponovnim iskanjem.
  2. Dolo─Źanje osnovnega frekven─Źnega signala: ko mobilni telefon najde primeren signal, preveri ─Źe je to iskan osnovni frekven─Źni signal. Pravilen signal zabele┼żi in nadaljuje s ─Źasovno sinhronizacijo. V nasprotnem primeru ponovno pri─Źne z iskanjem.

─îasovna sinhronizacija je proces iskanja za─Źetka niza bitov in ─Źasovnih rezin. FCCH kanalu (─Źasovna rezina v osnovni frekvenci) sledi ─Źasovna rezina SCH, preko ─Źesar poteka ─Źasovna sinhronizacija. “Izbruh” vsebuje tako imenovano “u─Źno sekvenco” (znano bitno sekvenco), ki pomaga vzpostaviti bitno sinhronizacijo. Ta ista sekvenca tudi “nau─Źi” dinami─Źno optimizirati izena─Źevalnik (ang. equalizer) prejemnika za bolj┼íi sprejem signala. Mobilni telefon po SCH kanalu prejme ┼íe osnovne informacije o povezani bazni postaji in mobilnem operaterju.

Ko je mobilni telefon ─Źasovno in frekven─Źno sinhroniziran ter seznanjen z identiteto mobilnega operaterja, bo v primeru doma─Źega omre┼żja pre┼íel v naslednjo fazo pridobivanja informacij o omre┼żju. ─îe pa je omre┼żje tuje, se bo vrnil na frekven─Źno sinhronizacijo na drugih frekvencah.

V fazi pridobivanja informacije o omre┼żju in celici mobilni telefon prebere ┼ítiri ─Źasovne rezine dolg BCCH, ki vsebuje mno┼żico sistemskih informacij: lokacijsko obmo─Źje (Location Area ID, LAI), Mobile Country Code (MCC, Mobile Network Code (MNC), Location Area Code (LAC), Cell ID, lokacije kontrolnih kanalov, itd.

Na tej stopnji je mobilni telefon pripravljen na komunikacijo z omre┼żjem, a nanj ┼íe ni povezan. Potrebna je ┼íe IMSI priklju─Źitev in posodobitev lokacije.

Vzpostavitev radijske zveze

Zahteva po kanalu za za─Źetek komunikacije: za vsak klic, podatkovni prenos, SMS, oddajanje lokacije itd. mobilni telefon omre┼żju po┼ílje zahtevo po prostem namenskem kanalu preko RACH kanala. Mobilni telefon, ki je ┼że seznanjen z omre┼żjem (preko FCCH, SCH in BCCH kanalov), pozna frekven─Źno lokacijo in ─Źasovno rezino kanala.

─îe pride do kolizije – torej, da ob istem ─Źasu zahtevo po istem RACH po┼ílje ve─Ź mobilnih telefonov hkrati, bo mobilni telefon zahtevo poslal ponovno.

Ko sprejemnik bazne postaje (BTS) prejme zahtevo, jo posreduje kontrolnemu centru (BSC). Ta izbere prost podatkovni kanal DSCCH, namenjen dialogu med mobilnim telefonom in omre┼żjem. Po kanalu si izmenjata informacijo o tipu storitve, ki jo bo mobilni telefon izvr┼íil (klic, SMS itd.), avtentikacijo ter varnostne nastavitve. Kontrolni center po┼ílje ID izbranega SDCCH bazni postaji, ta pa aktivira kanal. Postaja uporabi AGCH kanal preko katerega mobilnemu telefonu sporo─Źi kateri SDCCH kanal mu je bil dodeljen. V nekaterih primerih SDCCH nadomesti TCH.

Medtem ko si bazna postaja in preklopni center izmenjujeta informacije, mobilni telefon na kanalu AGCH ─Źaka na odgovor.

Zahteva po storitvi: ko je mobilnemu telefonu dodeljen radijski kanal (SDCCH oziroma TCH v signalnem na─Źinu), po┼ílje po tem kanalu storitveno zahtevo. Sporo─Źilo vsebuje kodo zahtevane storitve to je lahko:

  1. odziv na poziv (ang. paging response)
  2. vzpostavitev novega klica
  3. posodobitev lokacije

Sporo─Źilo SABM (Set Asynchronous Balance Mode) vsebuje informacijo zahtevane storitve, ki je poslano kot navodilo bazni postaji. Postaja vrne sporo─Źilo UA (Unnumbered Acknowledgement), da je seznanjena s SABM. Kon─Źni rezultat tega odgovora je, da mobilni telefon pri─Źne zvoniti, pred tem pa nastopijo ┼íe avtentikacijski in varnostnimi postopki.

Avtentikacija, avtorizacija in varnost

Avtentikacija in generiranje klju─Źa

Avtentikacijski proces se pri─Źne takoj po zahtevi za vzpostavitev zveze. Podatke si izmenjujeta mobilni telefon in preklopni center (MSC) preko SDCCH (ob─Źasno tudi TCH) kanala.

Avtentikacijski proces se v celoti izvede takrat, ko mobilni telefon prvi─Ź po tem ko smo ga pri┼żgali, po┼ílje zahtevo baznemu centru.

  1. Ko je zahteva po storitvi uspe┼íno zaklju─Źena preklopni center preveri, ─Źe obstaja varnostni zapis, ki vsebuje RAND (random challenge), SRES (signed response) in ┼íifrirni klju─Ź Kc v registru obiskovalcev (VLR) za nek mobilni telefon. ─îe le ta ni na voljo, ga bazni center zahteva v doma─Źem registru (HLR) s pomo─Źjo algoritma A5. HLR s pomo─Źjo avtentikacijskega centra pripravi navadno 5 varnostnih zapisov, ki so nato shranjeni v register obiskovalcev (VLR).
  2. Avtentikacijska zahteva od preklopnega centra do mobilnega telefona vsebuje 128 bitno naklju─Źno ┼ítevilo (RAND) in ┼íifrirno kodno sekven─Źno ┼ítevilko (CKSN). S pomo─Źjo naklju─Źne ┼ítevilke, ki jo mobilni telefon sprejme, le ta izra─Źuna 32 bitni podpisan odziv (SRES), ki je tudi del varnostnega zapisa. ┼áifrirno kodna sekven─Źna ┼ítevilka je indeks varnostnega zapisa v registru obiskovalcev, prav tako pa je shranjena v SIM kartici mobilnega telefona. To je uporabno za naslednjo avtentikacijo (o ─Źemer nekoliko ve─Ź kasneje).
  3. V tej fazi mobilni telefon zgenerira ┼íifrirni klju─Ź Kc z uporabo prejete naklju─Źne ┼ítevilke (RAND) in IMSI s pomo─Źjo A3 algoritma, le tega pa uporabi kot vhod v A5 algoritem (algoritem za ┼íifriranje v mobilne komunikacije).
  4. Vrednost podpisanega odziva (SRES) se po┼ílje nazaj preklopnemu centru, ki preveri ─Źe se le ta ujema s tistim, ki ga ima tudi sam.
  5. Avtentikacijski proces ima lahko dodatno fazo verifikacije IMSI številke.

Ko je celotna avtentikacija uspe┼íno zaklju─Źena, omre┼żje ne potrebuje njene ponovitve za vsak klic, seveda le dokler je mobilni telefon priklju─Źen na omre┼żje. Pri zahtevi za vzpostavitev zveze mobilni telefon po┼ílje le ┼íifrirno kodno sekven─Źno ┼ítevilko (CKSN). Preklopni center preveri pravilnost ┼ítevilke v VLR bazi, in v kolikor je pravilna, presko─Źi proces avtentikacije.

Nastavitve šifriranja komunikacij

─îe je zahtevano ┼íifriranje komunikacij, preklopni center kontrolnemu centru po┼ílje ukaz za ┼íifriranje in zahtevo za ┼íifrirni klju─Ź Kc. Kontrolni center bazni postaji po┼ílje ┼íifrirni klju─Ź in 22 bitni TDMA okvir, ta vrednosti shrani in posreduje ┼íifrirni ukaz mobilnemu telefonu. Pomembno je poudariti, da mobilni telefon ustrezen ┼íifrirni klju─Ź zgenerira sam - bazna postaja mu ga ne po┼ílje preko radijske povezave. Klju─Ź Kc in TDMA okvir sta klju─Źna parametra za ┼íifrirni algoritem.

Preverjanje IMEI številke

Omre┼żje lahko izvede tudi IMEI preverjanje. Ko od mobilnega telefona pridobi IMEI ┼ítevilko (gre za identifikator telefonskega telefona (International Mobile Equipment Identity), gre za neke vrste serijsko ┼ítevilko mobilnega telefona), jo bazni center preveri na svoji beli listi (spisek IMEI ┼ítevilk, ki imajo odobren dostop do omre┼żja), ─Źrni listi (spisek blokiranih IMEI ┼ítevilk) in sivi listi (spisek IMEI ┼ítevilk, pri katerih so dolo─Źeni problemi, npr. nepotrjeni mobilni telefoni ipd.). Od vsakega mobilnega operaterja je odvisno ali lahko telefon z dolo─Źeno IMEI ┼ítevilko uporablja omre┼żje ali ne. Bazni center hrani IMEI seznam v EIR (Equipment Identity Register). Naj dodamo, da je IMEI ┼ítevilko mobilnega telefona mogo─Źe razmeroma enostavno ponarediti (kar je bilo izpostavljeno tudi v znanem sodnem postopku v primeru Milica Makoter) - ─Źeprav je to v ┼ítevilnih dr┼żavah nezakonito - zato je ne moremo ┼íteti kot zanesljiv identifikator mobilne naprave.

Dodelitev TMSI

Omre┼żje mobilnemu telefonu, ki je avtenticiran v omre┼żju, le-to lahko zagotovi TMSI. Gre za za─Źasno IMSI ┼ítevilko, dodaten varnostni mehanizem, ki ote┼żuje identifikacijo mobilnega telefona v omre┼żju (─Źe imamo telefonsko ┼ítevilko uporabnika je namrel IMSI ┼ítevilko mogo─Źe povsem enostavno pridobiti preko SS7 signalizacije). Omre┼żje TMSI mobilnemu telefonu dodeli po tem ko je avtentikacija pri preklopnem centru ┼że opravljena - torej ob pri┼żigu mobilnega telefona ali posodobitvi lokacije. TMSI zgenerira preklopni center na podlagi IMSI, ter ga po┼ílje mobilnemu telefonu. Ta ga shrani v SIM kartico, preklopni center pa v VLR (register obiskovalcev). Dodeljeni TMSI mobilni telefon uporablja za identifikacijo pri zahtevi po vzpostavitvi zveze namesto IMSI ┼ítevilke.

Priklju─Źitev IMSI

Mobilni telefon je lahko pri┼żgan ali ugasnjen. V pri┼żganem stanju se inicializira (sinhronizacija frekvence, ─Źasovna sinhronizacija in izmenjava sistemskih informacij) in pove┼że v omre┼żje. To je znak, da lahko sprejme zahtevo po klicu (poziv na dohodni klic).

Proces sporo─Źanja omre┼żju, da je mobilni telefon pri┼żgan in pripravljen na sprejemanje in oddajanje klicev se imenuje IMSI priklju─Źitev. IMSI je primarni identifikator, ki unikatno identificira vsak mobilni telefon v omre┼żju.

Postopek IMSI priklju─Źitve

Ko mobilni telefon pri┼żgemo, ta preko SDCCH kanala po┼ílje sporo─Źilo omre┼żju in ga obvesti o svoji prisotnosti. Preklopni center sprva opravi avtentikacijsko proceduro, potem v svojem VLR preveri informacijo o mobilnem telefonu. ─îe ima informacijo shranjeno (pomeni, da je bil mobilni telefon ┼że prej priklopljen na ta center), obnovi vsebino VLR (IMSI priklju─Źitev in izbris IMSI izklju─Źitev zastavice). Preklopni center obnovi tudi HLR vsebino, ter posodobitev lokacije mobilnega telefona glede na lokacijsko kodo (LAI), ki jo je poslal mobilni telefon.

─îe center zazna mobilni telefon kot novo napravo, brez vpisa v VLR, poizve informacije o mobilnem telefonu pri HLR. Potem za nov mobilni telefon kreira vpis v VLR s statusom “IMSI priklju─Źen”. HLR obnovi svoje podatke tega mobilnega telefona in po┼ílje sporo─Źilo tistemu preklopnemu centru, pri katerem se je mobilni telefon nahajal prej, z namenom da prej┼ínji center obnovi svoj VLR.

Postopek IMSI izklju─Źitve

Postopek IMSI izklju─Źitve ste─Źe pri uga┼íanju mobilnega telefona. V VLR je ugasnjen telefon ozna─Źen kot “izklju─Źen” in tak mobilni telefon ne bo pozvan ob dohodnem klicu. Sistemske informacije, ki so bile poslane preko kanala BCCH obvestijo mobilni telefon, ─Źe je potrebna procedura IMSI izklju─Źitev ali IMSI priklju─Źitev.

Ko je mobilni telefon izklju─Źen ali mu odstranimo SIM kartico, mobilni telefon zahteva IMSI izklju─Źitev. Kot za vse ostale storitvene zahteve, tudi za to zahtevo uporabi kanal SDCCH. Preko njega informira omre┼żje o svojem izklopu. VLR ozna─Źi IMSI kot “izklju─Źen” (postavi IMSI izklju─Źitev zastavico). Potem preklopni center o nameri obvesti ┼íe HLR.

Posodabljanje lokacije in periodi─Źno registriranje

Ko mobilni telefon pri┼żgemo, oziroma ko se z njim premaknemo iz obmo─Źja ene celice v obmo─Źje druge, le-ta obvesti omre┼żje o posodobitvi lokacije.

Mobilni telefon poslu┼ía osnovni frekven─Źni signal bazne postaje (tim. beacon signal) in preveri ali se njen LAI ujema z LAI shranjenim na SIM kartici (le-ta je shranjen iz predhodne posodobitve lokacije). ─îe se razlikujeta, mobilni telefon omre┼żju po┼ílje sporo─Źilo o spremenjeni lokaciji (nov LAI) skozi SDCCH kanal. Preklopni center opravi avtentikacijo in obnovi VLR. V kolikor se je mobilni telefon ob tem dogodku priklju─Źil na drug preklopni center, ta v HLR poi┼í─Źe potrebne informacije o mobilnem telefonu in obnovi svoj VLR z novim vpisom. HLR je do takrat posodabljal informacije o mobilnem telefonu in obve┼í─Źal preklopni center, kje se je mobilni telefon nahajal prej. Zatem center mobilnemu telefonu vrne odobritveno sporo─Źilo in SDCCH kanal je spet spro┼í─Źen.

S periodi─Źnim registriranjem se izognemo nepotrebnim pozivom mobilnega telefona, v primeru ko preklopni center ne prejme IMSI izklju─Źitvenega sporo─Źila. Registracija je poslana skozi BCCH kanal. Mobilni telefon in bazni center nato resetirata svoje ┼ítevce. Ko ┼ítevec na mobilnem telefonu pote─Źe, le-ta po┼ílje posodobitev lokacije, ┼ítevca mobilnega telefona ter preklopnega centra pa se postavita na za─Źetek. ─îe se mobilni telefon v dolo─Źenem ─Źasovnem intervalu ne registrira ponovno, center predvideva da je mobilni telefon izklju─Źen, zato obnovi VLR in HLR. Ob tem po┼ílje mobilnemu telefonu odobritveno sporo─Źilo.

Odhodni glasovni klic

Za─Źetni proces

Ob pri─Źetku glasovnega klica mobilni telefon preko SDCCH kanala po┼ílje preklopnemu centru zahtevo za klic. S tem obvesti omre┼żje, da ┼żeli glasovno povezavo. Preklopni center opravi avtentikacijo in pripravi ┼íifrirni klju─Ź za glasovno ┼íifriranje. Mobilni telefon nato po┼ílje centru sporo─Źilo s klicano telefonsko ┼ítevilko. Center preveri ali je mobilnemu telefonu klicanje dovoljeno, in pri─Źne z dodeljevanjem podatkovnega kanala za glasovni klic.

Dodelitev podatkovnega kanala

Preklopni center sku┼ía vzpostaviti glasovni klic tako, da skozi omre┼żje (v drug center ali PSTN stikalo) pove┼że klicano napravo (mobilni telefon ali stacionarni telefon) in od kontrolnega centra (BSC), s katero je povezana klicana naprava, zahteva, da le-ta dodeli podatkovni kanal med kontrolnim centrom in mobilnim telefonom. Za tem center nastavi stanje mobilnega telefona na “zasedeno”.

Izbiro glasovnih kanalov med kontrolnim centrom in preklopnim centrom dolo─Źi preklopni center, kanal med bazno postajo in mobilnim telefonom (TCH kanala) pa izbere in aktivira bazna postaja. ─îe nima prostega kanala, ga sku┼ía najti pri sosednji celici. V tem primeru je potrebna tudi posodobitev lokacije. Preko SDCCH kanala postaja po┼ílje mobilnemu telefon ukaz, kateri TCH kanal mu je bil dodeljen. Pri dodeljevanju podatkovnega kanala se uporablja tudi SACCH kanal, ki se ga uporablja za nastavitev dinami─Źne zmogljivosti povezave (─Źasovni in energijski nadzor), in FACCH signalni kanal, kjer se prena┼íajo podatki o nastavitvi in prekinitvi klica, ─Źe SDCCH kanal ni dostopen.

Ko je TCH dodeljen, mu mobilni telefon priredi svoj oddajnik in postaji po┼ílje SABM - potrditveno sporo─Źilo o uspe┼íni priklju─Źitvi na kanal. Postaja odgovori z UA potrditvenim sporo─Źilom. In SDCCH je spro┼í─Źen.

Potrditev klica, sprejem in prekinitev

Ko se klico─Źi mobilni telefon uspe┼íno priklju─Źi na TCH, po┼ílje omre┼żju sporo─Źilo o uspe┼íni dodelitvi kanala. Za tem preklopni center pri─Źakuje zaklju─Źno naslovno sporo─Źilo z omre┼żja (drugega centra ali PSTN stikala), ki sporo─Źa, da klicana naprava zvoni. Takoj ko center prejme zaklju─Źno naslovno sporo─Źilo, po┼ílje klico─Źemu mobilnemu telefonu opozorilni signal. Ta centru vrne zahtevo po povezavi. Preklopni center odobri povezavo s sporo─Źilom mobilnemu telefonu in ─Źaka na odgovor s strani omre┼żja (─Źaka na potrditev, da je klic sprejet). ─îim odgovor prejme, ustvari povezavo med klicanim in klico─Źim.

Dohodni glasovni klic

Dodeljevanje MSRN

Dodeljevanje MSRN je proces dodeljevanja posebne ┼ítevilke (Mobile Station Roaming Number) klicanemu telefonu. MSRN je za─Źasna telefonska ┼ítevilka, preko katere preklopni center pove┼że dohodni klic.

Tisti center, ki mobilnemu telefonu dodeli ┼ítevilko je zanj “doma─Ź”. ─îe se mobilni telefon premakne v obmo─Źje drugega preklopnega centra, ga ta center zazna kot “gosta”. V nasprotnem primeru se povezava dohodnega klica v gostujo─Źem centru ne bi mogla vzpostaviti.

Ko gostujo─Źi mobilni telefon (povezan na drug center) sprejema klic, sistem s pomo─Źjo HLR in VLR registrov zazna kateri preklopni center ga trenutno gosti. Problem je, da center gostitelj ne more povezati klica z uporabo prvotnega MSRN gostujo─Źega mobilnega telefona, ker ┼ítevilka ne pripada centru gostitelju. Problemu se izognemo s postopkom, kjer klicateljev preklopni center preko HLR poizve IMSI in VLR identiteto klicanega mobilnega telefona, in posledi─Źno preklopnega centra, ki gosti klican telefon. Ta center dodeli prost MSRN in ga posreduje HLR, HLR pa novi MSRN poda klicateljevemu preklopnemu centru. Izvede se zamenjava MSRN ┼ítevilk.

Pozivanje (paging)

Pri dohodnem klicu dolo─Źen preklopni center prek VLR poziva klicani mobilni telefon ko je le-ta dostopen za klic ali pa je v zasedenem stanju (pri nastavitvi klica na ─Źakanju) oziroma ko le-temu dodeli MSRN, ─Źe mu MSRN prej ┼íe ni bil dodeljen.

V ostalih primerih preklopni center mobilnega telefona ne poziva (npr. ko je ugasnjen), klicani telefon pa dobi ustrezno sporo─Źilo.

Center za namene pozivanja iz VLR uporabi LAI (Local Area Identity) in PGN (Paging Group Number) klicanega mobilnega telefona. Preko LAI dostopa do lokacije oz. bazne postaje, ki mu bo poziv poslala, preko PGN pa dostopa do kanala uporabnega za poziv (kanal na katerem mobilni telefon poslu┼ía). Lahko pa se zgodi, da se mobilni telefon premakne na novo lokacijo, lokacija pa se ┼íe ne posodobi. V tem primeru poziv preklopnega centra ne uspe. Preden sporo─Źi neuspe┼ínost vzpostavitve klica, omre┼żje po┼ílje pozivni ukaz vsem kontrolnim centrom dolo─Źenega obmo─Źja. Ta poziv vsebuje IMSI/TMSI, LAI in PGN klicanega mobilnega telefona.

Kontrolni center preko LAI ugotovi CI (Cell Identity) telefona, in isti poziv z dodano ┼ítevilko kanala (Channel Number) posreduje baznim postajam. ┼átevilka kanala nosi informacijo o tipu kanala (downlink CCCH, PCH) in ┼ítevilu ─Źasovne rezine. Pozivna sporo─Źila se prena┼íajo preko PCH kanala.

Sprejem klica

Ko klican mobilni telefon sprejme poziv, vrne omre┼żju zahtevo po dodelitvi SDCCH kanala. Po avtentikaciji in varnostnem postopku prejme z omre┼żja sporo─Źilo o pri─Źetku glasovnega klica. Mobilni telefon po┼ílje potrditveno sporo─Źilo, da je pripravljen na sprejem klica. Omre┼żje mu dodeli glasovni kanal (TCH kanal), mobilni telefon pa potrdi, da je nanj povezan. Takrat telefon pri─Źne zvoniti in o tem opozori omre┼żje. Preklopni center obvesti klico─Źega na drugi strani omre┼żja, da klicani telefon zvoni. Ko uporabnik klic sprejme, mobilni telefon po┼ílje omre┼żju zahtevo za vzpostavitev povezave. Omre┼żje oba telefona pove┼że in zveza je vzpostavljena.

SMS

Podatki SMS sporo─Źil se po┼íiljajo preko SDCCH kanala. Ta kanal je dodeljen le po storitveni zahtevi. Po┼íiljatelj SMS sporo─Źila odda zahtevo po SMS storitvi in dobi SDCCH kanal. Po avtentikaciji in varnostnem postopku, po┼íiljatelj odda sporo─Źilo preklopnemu centru. Ta ga posreduje SMS centru ter vrne potrdilno informacijo mobilnemu telefonu. Pri postopku sprejemanja SMS sporo─Źila preklopni center pozove mobilni telefon, nato pa le-ta zahteva storitev za sprejem SMS sporo─Źila, ki ga sprejme od SMS centra.

SMS sporo─Źilo lahko po┼íljemo tudi med klicno zvezo (ko je kanal TCH dodeljen). V tem primeru SMS storitev uporabi kanal FACCH. Na novej┼íih telefonih se lahko SMS sporo─Źila prena┼íajo tudi preko podatkovnih kanalov.

Varnostna analiza GSM omre┼żja

V prej┼ínjem poglavju smo si na kratko ogledali osnove delovanja GSM omre┼żja. Kljub temu, da je tematika morda suhoparna, je poznavanje osnov nujno za razumevanje ranljivosti varnostnih mehanizmov GSM. Sledi zanimivej┼íi del, v katerem smo izvedli varnostno analizo ve─Ź GSM omre┼żij slovenskih operaterjev.

Seveda je povsem na mestu vpra┼íanje zakaj bi se sploh ┼íe ukvarjali z GSM tehnologijo, ko pa dandanes ogromno uporabnikov ┼że uporablja omre┼żja tretje in ─Źetrte generacije, ki pa se jih zaradi njihove zapletenosti in zaprtosti v odprotokodnem svetu ┼íe nismo dodobra dotaknili. A dejstvo je, da napadalci vedno i┼í─Źejo naj┼íibkej┼íi ─Źlen in ta je ┼íe vedno GSM. Izka┼że se, da se da uporabnika z uporabo najrazli─Źnej┼íih metod za motenje, kjer uporabniku onemogo─Źimo komunikacijo na omre┼żjih tretje in kasneje ─Źetrte generacije, vedno prisiliti, da za komunikacijo uporablja GSM omre┼żje. Dokler torej operater popolnoma ne izklopi GSM omre┼żja, bo vedno obstajala varnostna ranljivost, ki jo lahko napadalec izkoristi, ─Źe operater ne poskrbi ustrezno za varnost celotnega omre┼żja. Kdor se tega ne zaveda in ne skrbi za varnost celotnega omre┼żja, kjer lahko komunicirajo uporabniki, ne razume problema varnosti. Nima namre─Ź smisla skrbeti za varnost ostalega dela omre┼żja, ─Źe pri tem ne poskrbimo za odpravo varnostnih ranljivosti v GSM omre┼żju.

Za GSM, pa tudi ostale telefonske tehnologije je dolgo veljalo, da gre za izrazito zaprte tehnologije. Za razliko od klasi─Źnega ra─Źunalni┼ítva ali interneta, je dolgo ─Źasa veljalo, da je podrobnosti delovanja telefonije, zlasti pa GSM telefonije poznala le pe┼í─Źica ljudi. S pomo─Źjo interneta in odprtokodnih skupnosti so postale informacije o omenjenih tehnologijah dostopnej┼íe.

┼Żal se danes zdi, da naprednej┼íe mobilne tehnologije, kot npr. LTE (ang. Long Term Evolution – gre za standard na podro─Źju mobilnih telekomunikacij, ki predstavlja nadgradnjo UMTS in HSPA) ┼íe dolgo ─Źasa ne bodo postale bolj odprte. Odprta tehnologija namre─Ź v telekomunikacijah ne pomeni le odprtih standardov, pa─Ź pa tudi implementacijo programske kode na cenovno ugodnej┼ío strojno opremo. To pa seveda ni v interesu podjetij, ki proizvajajo strojno in programsko opremo za mobilne telefone in bazne postaje.

V odprtokodonem svetu je ┼że dlje ─Źasa poznan projekt z GNU Radio, ki smo ga ┼że omenili na za─Źetku tega ─Źlanka. Gre za programsko ogrodje, ki uporabnikom olaj┼íuje dostop do radijske opreme, saj vsebuje razli─Źne filtre, demodulatorje, analizatorje in podobne komponente, ki jih potrebujejo radioamaterji. Pomemben del projekta GNU Radio je bil tudi razviti odprtokodni programski radio (SDR). Razvit je bil tim. USRP (Universal Software Radio Peripheral), strojna oprema, ki slu┼żi kot univerzalni radijski sprejemnik (ali tudi oddajnik), in ki zna sprejeti kakr┼íenkoli radijski signal. USRP uporabniku omogo─Źa prejemanje in oddajanje signala do pasovnih ┼íirin 16 Mhz na poljubnih frekvencah. Sicer je cena tega radia v primerjavi s podobnimi enako zmogljivimi SDR napravami razmeroma nizka, a ┼íe vedno precej visoka za obi─Źajne posameznike (giblje se nekje med 1500 in 2000 EUR). Na sre─Źo se je pred kratkim izkazalo, da je kot programski radio mogo─Źe uporabiti tudi cenene DVB-T sprejemnike (cena se giblje okrog 25 EUR), kar je dalo projekti GNU Radio popolnoma nov pospe┼íek. ┼Żal so te naprave le sprejemniki, torej ne morejo oddajati, zato z njimi ne moremo npr. postaviti svoje lastne GSM/GPRS bazne postaje. Obenem kvaliteta sprejetega signala ni tako dobra, vendar se izka┼że da z njimi brez te┼żav zajemamo GSM, TETRO, GPS in ┼íe kaj. Ve─Ź informacij lahko najdemo na Osmocom rtl-sdr spletni strani.

Z GSM se sicer ukvarja kar nekaj odprtokodnih projektov. Projekt Airprobe se ukvarja z zajemanjem GSM signala (na za─Źetku so za zajemanje uporabili USRP). OpenBSC je projekt, ki se ukvarja z odprtokodnimi baznimi kontrolerji (BSC) in je odprotokodna implementacija protokola Abis - protokol med baznim kontrolerjem (BSC) in bazno postajo (BTS). Projekt OpenBTS pa se ukvarja z izdelavo odprtokodne bazne postaje (in kontrolerja skupaj), ki uporablja prej omenjeni USRP programski radio (SDR). Projekt je zelo zanimiv, saj nam omogo─Źa, da si za razmeroma dostopno ceno postavimo lastno GSM bazno postajo. S tak┼íno bazno postajo je mogo─Źe po─Źeti tudi neprimerne stvari. Tako se lahko tak┼ína bazna postaja la┼żno predstavlja in posledi─Źno izvaja prestrezanje glasovnih klicev in SMS sporo─Źil, seveda pa je tak┼íno prestrezanje aktivno in ga je (vsaj v teoriji) mogo─Źe zaznati. Poleg tega je tak┼íno oddajanje v mobilnem omre┼żju nezakonito.

Zadnji in morda najzanimivej┼íi projekt pa se imenuje OsmocomBB. Namen projekta je izdelati odprtokodno programsko opremo za GSM, konkretneje odprtokodne gonilnike za GSM naprave ter "telefonski" del GSM protokola (layer 1 do layer 3). Glavna te┼żava s katero se sre─Źujejo razvijalci OsmocomBB projekta so zaprte specifikacije ─Źipov vgrajenih v mobilne telefone. Ker le-te niso znane je z reverznim in┼żeniringom potrebno ugotoviti kako posamezni deli mobilnega telefona delujejo in na podlagi tega nato napisati odprtokodno strojno programsko opremo (ang. firmware).

OsmocomBB je odprtokodna implementacija GSM sklada protokolov (ang. protocol stack) na Texas instruments Calypso ─Źipovju, ki te─Źe na ARM arhitekturi. Calypso ─Źipovje je poceni DBB (digital baseband procesor) implementacija, ki zdru┼żuje anteno, demodulator, filtre, oja─Źevalnike, AD pretvornik in DSP (Digital signal processing). Razvijalcem je pri tem vsekakor zelo pomagalo dejstvo, da je pred ─Źasom na internet “u┼íla” dokumentacija s podrobnostmi o delovanju Calypso ─Źipovja.

Mimogrede, v Calypso ─Źipovju je sam DSP zadol┼żen za de┼íifriranje GSM podatkov in ┼íe za podobne naloge. Teh nalog ne opravlja vgrajeni ARM procesor. Je pa mogo─Źe vse skupaj tudi tako preprogramirati, da iz te strojne opreme na ra─Źunalnik pridobimo surove (neobdelane) GSM “izbruhe”.

Priprava strojne opreme

─îe na telefon nalo┼żimo Osmocom strojno programsko opremo, se le-ta obna┼ía kot RF sprejemnik prvega GSM sloja, ki nam preko serijskih vrat po┼íilja “izbruhe” ene ─Źasovne rezine. Klju─Źni del opreme je torej telefon z ustreznim kablom za povezavo z ra─Źunalnikom.

Mimogrede, posebej poudarjamo, da je v nadaljevanju navedena strojna programska oprema za mobilni telefon prevedena brez podpore oddajanju signalov v GSM omre┼żje. Gre torej samo za sprejemanje GSM signalov (RX podpora) brez kakr┼ínegakoli oddajanja (torej brez TX podpore). V GSM omre┼żju zato s tak┼íno programsko opremo ne moremo povzro─Źati motenj, po drugi strani pa je tak┼íno prestrezanje signalov povsem nezaznavno (za razliko od klasi─Źnega IMSI catcherja, kjer prestrezanje deluje tako, da prestrezna naprava oddaja GSM signal in izvaja napad s posrednikom (tim. man-in-the-middle napad).

Izbira telefona in priprava kabla

Pomembno je vedeti, da Osmocom programska oprema ne te─Źe na vseh mobilnih telefonih, pa─Ź pa le na tistih, ki vsebujejo ustrezno Calypso ─Źipovje. To pa so:

  1. MotorolaC115/C117 (E87)
  2. MotorolaC123/C121/C118 (E88)
  3. MotorolaC140/C139 (E86)
  4. MotorolaC155 (E99)
  5. MotorolaV171 (E68/E69)
  6. SonyEricssonJ100i
  7. Pirelli DP-L10
  8. Neo 1973 (GTA01)
  9. OpenMoko - Neo Freerunner (GTA02)
v začetkih analiz GSM omrežja se je uporabljala Nokia 3310 (900/1800 Mhz) oziroma Nokia 3390 (1900 Mhz) z MBUS podatkovnim kablom NK-33. Omenjena modela telefonov sta vsebovala napako v programski strojni opremi, ki je omogočala pridobivanje določenih podatkov o GSM omrežju. Potrebno je bilo uporabiti še program gsmdecode

v začetkih analiz GSM omrežja se je uporabljala Nokia 3310 (900/1800 Mhz) oziroma Nokia 3390 (1900 Mhz) z MBUS podatkovnim kablom NK-33. Omenjena modela telefonov sta vsebovala napako v programski strojni opremi, ki je omogočala pridobivanje določenih podatkov o GSM omrežju. Potrebno je bilo uporabiti še program gsmdecode

V okviru na┼íe varnostne analize smo uporabili dva telefona, ki smo ju rabljena preko spleta kupili za razmeroma nizko ceno (10 oz. 20 EUR s po┼ítnino): SonyEricssonJ100i ter Motorola C115. Na spletnih straneh kot so Ebay in Amazon teh mobilnih telefonov ni veliko, saj uradno niso ve─Ź naprodaj.

Omenjena telefona je potrebno preko serijskih vrat z ustreznim kablom povezati na ra─Źunalnik. Ustrezen kabel je mogo─Źe kupiti na spletu, lahko pa ga naredimo tudi sami.

─îe na ra─Źunalnik ┼żelimo prejemati surove “izbruhe”, ki jih je mogo─Źe uporabiti za kasnej┼ío kriptoanalizo podatkov v GSM omre┼żju, potrebujemo hitrej┼íi serijski kabel. RS232 zmore hitrosti le do 115200 bit/s, v na┼íem primeru pa potrebujemo vi┼íje hitrosti (vse do 812500 bit/s). Le-te nam omogo─Źajo FTDI kabli in kabli s Pirellijevim ─Źipovjem, vendar je slednje treba programsko nadgraditi (ang. to reflash).

Postopek reprogramiranja CP2102 kabla je razmeroma enostaven. Najprej iz spleta prenesemo program cp210x-program (iz naslova http://cp210x-program.sourceforge.net/ - uporabili smo razli─Źico 0.2), nato pa program za┼żenemo. Seveda ni odve─Ź poudarjati, da program te─Źe samo na Linux sistemih:

cd ~/osmocom/cp210x-program-0.2/
sudo rmmod cp210x
sudo ./cp210x-program

Najprej naredimo varnostno kopijo vsebine obstoje─Źega EEPROM-a:

sudo ./cp210x-program -f eeprom.hex

Nato na ─Źip zapi┼íemo nov EEPROM:

sudo ./cp210x-program -p -F eeprom.hex -w --set-baudrate 812500:FFE2,FFF4,1 --set-baudrate 406250:FFC5,FFE9,1 --set-baudrate 203125:FF8A,FFD3,1

Na koncu preverimo, ─Źe vse deluje kot je treba:

sudo ./cp210x-program

Na izpisu mora biti vidno:

[baudrate table]
[...]
812500 = FFE2, FFF4, 1 # 800000 Baud, 24 us
[...]
406250 = FFC5, FFE9, 1 # 406780 Baud, 46 us
[...]
203125 = FF8A, FFD3, 1 # 203390 Baud, 90 us
[...]
115200 = FF30, FFB2, 1 # 115385 Baud, 156 us
[...]

Kabel izklju─Źimo in ponovno priklju─Źimo. S tem je postopek reprogramiranja kabla kon─Źan. Naj dodamo, da smo v na┼íem primeru uporabili obe vrsti kablov (na SonyEricssonJ100i kabel s FTDI ─Źipom, na Motorola C115 pa reprogramirani kabel s Pirellijevim ─Źipom).

SonyEricssonJ100i z doma narejenim serijskim vmesnikom

SonyEricssonJ100i z doma narejenim serijskim vmesnikom

Doma narejen serijski vmesnik.

Doma narejen serijski vmesnik.

SonyEricssonJ100i in Motorola C115

SonyEricssonJ100i in Motorola C115

V naslednjem koraku je potrebno na telefon preko serijskega vmesnika nalo┼żiti OsmocomBB strojno programsko opremo, ki nam omogo─Źa “pogovarjanje” s telefonom ter predvsem sprejemanje podatkov iz prvega sloja GSM protokola.

Programska oprema za nalaganje strojne programske opreme na telefon se imenuje osmocon (N, ne M na koncu besede) in je na voljo v obliki izvorne kode. Prav tako je v obliki izvorne kode strojna programska oprema za telefon. Obe programski kodi je torej potrebno prevesti, pri ─Źemer mora biti strojna programska oprema prevedena za to─Źno dolo─Źeno ARM arhitekturo. Kar seveda pomeni, da si moramo namestiti tudi ustrezen ARM prevajalnik za tim. cross compiling.

Priprava programske kode in njena namestitev

Kot ┼że re─Źeno, DSP (Digital signal processing) na mobilnem telefonu sam de┼íifrira podatkovne “izbruhe”, za namene varnostne analize pa so veliko bolj zanimivi tim. “surovi” “izbruhi”. Zato je v programski kodi potreben manj┼íi popravek, ki omogo─Źa zajem surovih “izbruhov”. Obstaja tudi ustrezna OsmocomBB programska koda, ki omogo─Źa zajem “surovih” “izbruhov”, vendar le-ta vsebuje nekaj (verjetno celo namernih) napak zaradi ─Źesar je na telefonu ni mogo─Źe preprosto zagnati. Poleg tega je del funkcionalnosti te programske opreme iz javno dostopnega skladi┼í─Źa izpu┼í─Źen in jo je bilo potrebno ponovno sprogramirati.

Osmocomov Git repozitorij ima ve─Ź vej. Za nas je zanimiva le veja burst_ind, saj le ta vsebuje potrebne popravke za DSP (Digital signal processing), vendar je le-tej izpu┼í─Źena dolo─Źena fukncionalnost, ki nam onemogo─Źa prakti─Źno analizo. Kodo smo popravili do te mere in dodali dodatno funkcionalnost, da so orodja prakti─Źno uporabna za analizo.

─îe je ┼ílo vse po sre─Źi, se je programska koda prevedla brez napak in na svojem ra─Źunalniku imamo sedaj tudi ustrezno programsko opremo za analizo GSM omre┼żij.

Vsebina OsmocomBB programske opreme

Shema OsmocomBB programske opreme se nahaja na naslednji sliki. Iz slike je razvidno, da s programom osmocon preko serijskega vmesnika na mobilni telefon nalo┼żimo tim. nalagalnik ROM (ang. romloader) preko katerega nato na telefonu poganjamo ustrezne programe, ki po┼íiljajo podatke na ra─Źunalnik.

Mimogrede: OsmocomBB strojno programsko opremo na mobilni telefon nalo┼żimo v pomnilnik, kar pomeni, da ob odstranitvi baterije iz telefona modificirana strojna oprema izgine iz pomnilnika, telefon pa ohrani originalno name┼í─Źeno strojno programsko opremo. Posledi─Źno telefona z namestitvijo napa─Źne strojne programske opreme ne moremo uni─Źiti, hkrati pa tudi kakr┼ína koli kasnej┼ía (forenzi─Źna) analiza telefona na njem ne bi na┼íla digitalnih sledov, da je bil telefon uporabljen za varnostno analizo GSM omre┼żja.

Shema OsmocomBB programske opreme

Shema OsmocomBB programske opreme

OsmocomBB je sicer razdeljen na ve─Ź podprogramov. Za nalaganje uporabljamo ┼że omenjeni osmocon, ki je osnovni multiplekser tudi za vse kasnej┼íe povezave z mobilnim telefonom. Za analizo prometa so napisani majhni programi, ki nam omogo─Źajo analizo posameznih kanalov. Programi se nahajajo v razli─Źnih podimenikih. Podimenik host vsebuje programsko kodo namenjeno poganjanju na ra─Źunalniku, podimenik target pa strojno programsko opremo za mobilni telefon. V nadaljevanju so bomo pogledali nekaj glavnih OsmocomBB programskih modulov.

V host/layer23/src/misc se nahajajo razni programi za analizo GSM protokola:

V podimeniku target/firmware/board se nahaja strojna programska oprema za razli─Źne razli─Źice telefonov, temelje─Źih na Calypso ─Źipovju. Ob raznli─Źnih programskih kodah kot so “hello world”, “loader” ter “chainloader” obstaja tudi “layer1”, ki je implementacija fizi─Źnega GSM sloja. Tega bomo kasneje tudi nalo┼żili na mobilni telefon.

Med programsko kodo se nahaja tudi popravek za program za analizo omre┼żij Wireshark, ki nam omogo─Źa grafi─Źno analizo GSM prometa. Naj dodamo, da je v programskih paketih Wiresharka na novej┼íih distribucijah operacijskih sistemov ta popravek vgrajen ┼że dlje ─Źasa.

Mimogrede: Za analizo prometa in kasnejšo kriptoanalizo podatkov so bila razvita tudi lastna orodja, ki zaenkrat ne bodo javno objavljena.

Zagon ROM nalagalnika (ang. romloader)

Sledi sam zagon ustrezne programske opreme. Za poganjanje OsmocomBB programske opreme potrebujemo administratorske privilegije oziroma je na sistemu potrebno nastaviti ustrezne pravice dostopa do serijskih vmesnikov, itd.

Najprej odpremo prvo ukazno vrstico in za┼żenemo ROM nalagalnik. To storimo s programom osmocon, ki mu moramo podati ustrezne parametre s katerimi mu povemo kateri tip telefona je uporabljen in kateri tip komunikacijskega kabla je uporabljen. V nadaljevanju podajamo primer za Motorolo C115:

./osmocon -p /dev/ttyUSB0 -m c123xor ../../target/firmware/board/compal_e88/layer1.compalram.bin -f 1</p>

Pred zaganjanjem navedenih ukazov mora biti mobilni telefon priklju─Źen, a ugasnjen. Vanj ni potrebno vstaviti SIM kartice. Telefon nato aktiviramo z (zelo) kratkim pritiskom na gumb za vklop (in ne z obi─Źajnim dolgim pritiskom na gumb za vklop) in nalaganje strojne programske opreme v ROM pomnilnik ste─Źe.

Uspe&#353;no nalaganje strojne programske opreme v ROM pomnilnik telefona.

Uspešno nalaganje strojne programske opreme v ROM pomnilnik telefona.

Po uspešnem zagonu programa in uspešnem nalaganju strojne programske opreme na mobilni telefon moramo to ukazno vrstico pustiti aktivno.

Osnovni pregled GSM omre┼żja

Za povsem osnovni pregled GSM omre┼żja smo uporabili lastne modificirane OsmocomBB programe.

Pregled baznih postaj

Za za─Źetek si ogledamo seznam ARFCN-jev oziroma baznih postaj. To storimo z ukazom:

./cell_log

Orodje cell_log nam omogo─Źa iskanje in ugotavljanje mo─Źi posameznih baznih postaj. Cell_log se posku┼ía povezati na posamezne ARFCN-je, obenem pa ugotavlja kateri operater se nahaja na danem kanalu. ARFCN, ki pripada nam najbli┼żji bazni postaji, ima tudi najve─Źjo oddajno mo─Ź. Informacija o oddajni mo─Źi je zapisana v stolpcu pod rxlev. Primer izpisa je razviden na spodnji sliki.

Pregled baznih postaj.

Pregled baznih postaj.

Kot omenjeno, podatke lahko shranjujemo tudi v datoteko. Iz zbranih podatkov lahko identificiramo bazne postaje posameznih operaterjev:

cell_log.c:340 Sync ARFCN 54 (rxlev -53, 372 syncs left) 
cell_log.c:190 Cell: ARFCN=54 MCC=293 MNC=40 (Slovenia, Si.mobil) 
cell_log.c:340 Sync ARFCN 1013 (rxlev -73, 366 syncs left)
cell_log.c:190 Cell: ARFCN=1013 MCC=293 MNC=70 (Slovenia, Tušmobil)
cell_log.c:340 Sync ARFCN 116 (rxlev -78, 363 syncs left)
cell_log.c:190 Cell: ARFCN=116 MCC=293 MNC=41 (Slovenia, iPKO)

Mimogrede: Mobilni telefon se ponavadi pove┼że na bazno postajo (ARFCN) z najve─Źjo mo─Źjo. Problem lahko predstavlja, ─Źe imamo ve─Ź baznih postaj, katerih mo─Źi so dokaj podobne. Takrat se lahko zgodi da mobilni telefon preskakuje iz ene bazne postaje na drugo. V takem primeru je zelo te┼żko analizirati GSM, sploh ─Źe imamo na voljo le en mobilni telefon na kateremu poganjamo Osmocom BB programsko opremo, saj zelo te┼żko dolo─Źimo pravilen ARFCN.

Poslušanje komunikacij na CCCH kanalu

V osnovi z mobilnimi telefoni navedenimi zgoraj lahko poslu┼íamo komunikacijo na navzdolnjem (ang. downlink) CCCH kanalu. Za to lahko uporabimo orodje ccch_scan. Nekatere telefone, npr. ravno na┼ío Motorolo C115, pa je mogo─Źe nekoliko strojno predelati in sicer tako, da jim odstranimo (odlotamo) oziroma zamenjamo radijske filtre, s ─Źimer pridobimo mo┼żnost poslu┼íanja tudi navzgornjih (ang. uplink) povezav.

Za poslušanje CCCH kanala uporabimo naslednji ukaz:

./ccch_scan -a 54 -i 127.0.0.1 -f 1 -o 1 -m

Pri ukazu smo uporabili nekaj parametrov. S parametrom -a povemo ┼ítevilko ARFCN-ja (bazne postaje), za katero naj se izvaja poslu┼íanje. Z ukazom -i 127.0.0.1 zajete podatke po┼íiljamo na localhost, kjer jih nato lahko preberemo z Wiresharkom. Z ukazom -f 1 pa zahtevamo sleditvi sporo─Źilom za dodelitev na namenski kanal tim. “Immediate assignment”. Zadnja dva parametra omogo─Źita zapis surovih podatkov iz namenskih kanalov na izhod in to v obliki XML.

Wireshark bo morda potrebno zagnati z administratorskimi privilegiji, priporo─Źljivo pa je uporabiti filter “gsmtap”, saj s tem izlo─Źimo prikaz ostalih (sistemskih) omre┼żnih podatkov.

Promet lahko vidimo tudi v Wiresharku, ─Źe poslu┼íamo na lo, tim. “localhost” napravi in nastavimo filter gsmtap.

Mimogrede: Poslu┼íanje navzgornjega kanala deluje na kratkih razdaljah (nekaj centimetrov) tudi, ─Źe ne predelamo telefona. Prav tako ccch_scan vsebuje TMSI filter za filtriranje le sleditvam na namenski kanal namenjenim samo dolo─Źeni TMSI ┼ítevilki, preko parametra -t TMSI.

Poziv mobilnega telefona, prehod na namenske kanale, lociranje uporabnika

Bazna postaja neprestano po┼íilja pozive za preklop mobilnih telefonov na namenske kanale (ob klicu ali SMS sporo─Źilih). Pri tem mobilni telefon identificira z IMSI oziroma TMSI ┼ítevilko. ─îe je poziv namenjen na┼íemu mobilnemu aparatu, se le-ta odzove z odgovorom na poziv s po┼íiljanjem svojega TMSI-ja/IMSI-ja na RACH kanal. Bazna postaja za tem odda sporo─Źilo za prehod na namenski kanal. Namenski kanal je lahko stati─Źen ali pa skakajo─Ź med frekvencami. Po preklopu na le-tega mobilni telefon odgovori z odgovorom na poziv tim. “Paging Response” sporo─Źilom. Mobilni telefon nato zahteva spremembo tim. klase (ang. classmark change), in s tem preide v ┼íifrirni na─Źin, bazna postaja pa odgovori z ukazom za ┼íifriranje (ang. chipering mode command). Od tu dalje je promet ┼íifriran.

Primer zajetega prometa z modificirano OsmocomBB programsko opremo

Primer zajetega prometa z modificirano OsmocomBB programsko opremo

Zbiranje informacij o uporabniku preko SS7 signalnega protokola

Ker se mobilni telefoni v GSM omre┼żju ne identificirajo s svojo klicno ┼ítevilko, pa─Ź pa z IMSI oziroma TMSI, iz same analize zajetega prometa ni mogo─Źe preprosto ugotoviti kateri mobilni telefoni se nahajajo v okolici.

Pri ugotavljanju identitete mobilnih telefonov si lahko pomagamo s SS7 omre┼żjem. Gre za omre┼żje (in signalni protokol), preko katerega se med seboj povezujejo vsi mobilni operaterji. Omre┼żje sicer ni javno dostopno, je pa do njega mogo─Źe dostopati v primeru, da pridobimo operaterski dostop oziroma preko nekaterih operaterjev, ki ponujajo internetne storitve, ki omogo─Źajo ne le HLR vpoglede (ang. HLR lookup).

Storitev takih operaterjev je na spletu mogo─Źe najti kar nekaj, za namene priprave tega ─Źlanka smo uporabili spletno stran http://www.routomessaging.com/, ki omogo─Źa HLR vpoglede. Po brezpla─Źni registraciji v spletni obrazec vpi┼íemo telefonsko ┼ítevilko v mednarodni obliki, sistem pa nam vrne IMSI ┼ítevilko uporabnika, kodo dr┼żave (MCC) in omre┼żno kodo (MNC) njegovega operaterja, ime doma─Źega operaterja in dr┼żave le tega ter kodo MSC (Mobile switching center).

Ravno MSC koda nam omogo─Źa natan─Źnej┼íe lociranje uporabnika. Z informacijo o okvirni lokaciji posameznih uporabnikov bazirano na podatkih telefonskega imenika lahko na preprost na─Źin pridobimo informacijo dosega posameznih MSC centrov, s tem pa lahko uporabnika natan─Źneje lociramo.

HLR vpogled preko Routo Messaging. Operater ponuja tudi masovno po&#353;iljanje SMS sporo&#269;il

HLR vpogled preko Routo Messaging. Operater ponuja tudi masovno pošiljanje SMS sporočil

Lociranje mobilnega telefona je torej mogo─Źe izvesti na ve─Ź na─Źinov. ─îe imamo telefonsko ┼ítevilko uporabnika izvedemo HLR vpogled in pridobimo njegovo IMSI ┼ítevilko. ─îe operater ne uporablja TMSI ┼ítevilk je identifikacija uporabnika v mobilnem omre┼żju preprosta.

─îe pa operater uporablja TMSI ┼ítevilke imamo dve mo┼żnosti. Prva mo┼żnost je, da po─Źakamo na posodobitev lokacije mobilnega telefona - takrat se preko omre┼żja prenese IMSI ┼ítevilka (in dolo─Źi nova TMSI ┼ítevilka).

Druga mo┼żnost je, da mobilnemu telefonu po┼íljemo ve─Ź SMS sporo─Źil in potem gledamo katera TMSI ┼ítevilka sprejema podatke oziroma se v omre┼żju odziva. Mno┼żico poslanih SMS sporo─Źil uporabniku pa lahko zakrijemo tako, da po┼íiljamo tihe oz. slepe SMS-e, ki jih uporabnik mobilnega aparata ne vidi. Taka SMS sporo─Źila lahko oddamo preko GSM modema, pri po┼íiljanju pa v SMS PDU na─Źinu nastavimo posebno zastavico PID=64 (SMS sporo─Źila namre─Ź lahko po┼íiljamo na dva na─Źina - v tekstovnem na─Źinu ali pa preko PDU (protocol description unit) na─Źina). Obenem v─Źasih tudi ┼żelimo potrdilo o prejetem sporo─Źilu. To naredimo z zastavico TP_SRR.

Ta zastavica mobilnemu telefonu pove da naj le-ta zavrne SMS sporo─Źilo (in naj ga tudi ne prika┼że uporabniku), vendar pa nekateri operaterji taka sporo─Źila blokirajo. V tem primeru lahko po┼íiljamo namerno pokvarjena sporo─Źila, ki jih mobilni telefon ravno tako zavrne, operater pa ne.

Primer modemskih ukazov za po┼íiljanje tak┼ínega SMS sporo─Źila je naveden spodaj:

AT+CMGF=0 // nastavitev PDU na─Źina
AT+CSMS=0 // preverimo ali modem podpira SMS ukaze
AT+CMGS=23 // po┼ílji sporo─Źilo dolgo 23 oktetov
>0011000B916407281553F80000AA0AE8329BFD4697D9EC37

SMS PDU je najla┼żje zakodirati s Python knji┼żnico smspdu.

Podatke, ki jih vrne knji┼żnica nato vstavimo v zgoraj navedene modemske ukaze.

Obstaja pa tudi mo┼żnost, da ne vemo telefonske ┼ítevilke ciljne osebe (vemo pa, da mobilni telefon nosi s seboj). V tem primeru je osebo potrebno spremljati na ve─Ź lokacijah in njen mobilni telefon prisiliti v posodobitev lokacije. Ob posodobitvi lokacije, se preko omre┼żja v ne┼íifriranem na─Źinu prenese IMSI ┼ítevilka mobilnega telefona ciljne osebe. ─îe na razli─Źnih lokacijah ugotovimo, da se preko omre┼żja prena┼ía ista IMSI ┼ítevilka, je to dober indic, da je IMSI ┼ítevilka morda pripada mobilnemu telefonu ciljne osebe.

V posodobitev lokacije mobilni telefon prisilimo tako, da ga za kratek ─Źas “izklju─Źimo” iz omre┼żja. To je mogo─Źe storiti z motilcem GSM signala in sicer tako, da GSM signal v okolici ciljnega telefona motimo za ve─Ź kot 6 sekund. Po tem ─Źasu mobilni telefon izgubi povezavo z omre┼żjem, sledi pa samodejen ponoven priklop v omre┼żje. GSM motilce je mogo─Źe kupiti preko spleta, vendar slovenska carina zadnja leta aktivno preverja po┼íiljke z elektronsko opremo, ─Źe se v njih ne nahaja tak┼ína oprema. Lahko pa si GSM motilec s pomo─Źjo na─Źrtov na spletu izdelamo sami.

Vsekakor pa velja opozoriti, da je uporaba motilcev GSM signala v Sloveniji prepovedana. Naj poudarimo, da za potrebe tega ─Źlanka v slovenskih GSM omre┼żjih nismo uporabljali motilcev niti v GSM omre┼żje nismo oddajali kakr┼ínikoli motilnih signalov.

samodejno iskanje TMSI-ja tar&#269;e

samodejno iskanje TMSI-ja tarče

Varnost slovenskih mobilnih operaterjev

V okviru varnostne analize GSM omre┼żij slovenskih operaterjev smo najprej preverili uporabo TMSI ┼ítevilk ter uporabo ┼íifrirnih algoritmov za za┼í─Źito podatkov pri prenosu v GSM omre┼żju.

Pogledali smo tudi katere podatke o naro─Źnikih posameznega operaterja je mogo─Źe dobiti preko SS7 omre┼żja z HLR vpogledom.

Kot je bilo pokazano v ─Źlanku o spreminjanju klicne identifikacije, je poljubno spreminjanje klicne identifikacije mogo─Źe pri vseh slovenskih operaterjih, poleg tega niti ne gre za varnostno ranljivost, pa─Ź pa za lastnost telefonskega omre┼żja, zato se s tem v tokratnem ─Źlanku nismo ukvarjali. Smo pa ugotovili, da je mogo─Źe v slabo za┼í─Źitenih GSM omre┼żjih ponarediti celotno mobilno identiteto uporabnika in to brez posedovanja njegovega mobilnega telefona in/ali njegove SIM kartice.

Uporaba TMSI številk pri slovenskih mobilnih operaterjih

Kot smo ┼że navedli, naj bi se zaradi mo┼żnosti prislu┼íkovanja in sledenja uporabnikom IMSI ┼ítevilka po omre┼żju prena┼íala ─Źim redkeje. Kot smo namre─Ź prikazali, je mogo─Źe na podlagi telefonske ┼ítevilke zelo enostavno pridobiti IMSI ┼ítevilko, hkrati pa je mogo─Źe IMSI ┼ítevilke v GSM omre┼żju zelo enostavno identificirati pri poslu┼íanju pozivov omre┼żja telefonu in po┼íiljanju zahtev po storitvah.

Namesto IMSI ┼ítevilke naj bi GSM omre┼żje za identifikacijo mobilnega telefona uporabljalo naklju─Źno generirano TMSI ┼ítevilko. IMSI se preko omre┼żja ┼íe vedno prenese v trenutku, ko se telefon vklju─Źi ali ob lokacijski posodobitvi (ali pa, ko je potrebno obnoviti povezavo med IMSI in TMSI oz. generirati nov TMSI), primarno pa naj bi se za identifikacijo uporabljala TMSI ┼ítevilka.

Uporabo IMSI in TMSI ┼ítevilk smo preverili s pribli┼żno 20-minutnim zajemom podatkov z naslednjim ukazom za TMSI in IMSI ┼ítevilko:

timeout 20 ./ccch_scan -a [ARFCN] 2> [ime_operaterja]
cat [ime_operaterja] | less | grep 'M([0-9x]\{8,12\})' | wc -l
cat [ime_operaterja] | less | grep 'M([0-9x]\{15\})' | wc -l

Pregled je pokazal, da od slovenskih operaterjev TMSI ┼ítevilko najbolj dosledno uporablja Mobitel (opa┼żenih 8 IMSIjev, 24799 TMSIjev -- razmerje 0,000322594). Simobil je pri uporabi TMSI ┼ítevilke precej manj dosleden, saj je na njihovih baznih postajah mogo─Źe opaziti precej ve─Ź IMSI ┼ítevilk (opa┼żenih 105 IMSIjev, 1749 TMSIjev -- razmerje 0,060034305). Najslab┼íe pa je stanje pri Tu┼ímobilu, kjer se IMSI ┼ítevilke uporablja najbolj pogosto (opa┼żenih 19 IMSIjev in 123 TMSIjev -- razmerje 0,154471545). Spodnje slike nakazujejo uporabo TMSI in IMSI ┼ítevilk v razli─Źnih omre┼żjih. IMSI ┼ítevilke so tiste dalj┼íe, TMSI pa tiste, ki so kraj┼íe.

TMSI &#353;tevilke v Mobitelovem omre&#382;ju

TMSI številke v Mobitelovem omrežju

TMSI in IMSI &#353;tevilke v Simobilovem omre&#382;ju.

TMSI in IMSI številke v Simobilovem omrežju.

TMSI &#353;tevilke v Tu&#353;mobilovem omre&#382;ju.

TMSI številke v Tušmobilovem omrežju.

Uporaba šifrirnih algoritmov pri slovenskih mobilnih operaterjih

Na─Źin ┼íifriranja posameznih operaterjev lahko ugotovimo z vpogledom v ukaz Ciphering mode, ki se prenese po omre┼żju. Iz ukaza lahko vidimo kateri na─Źin ┼íifriranja oz. uporabo katerega algoritma zahteva bazna postaja. Pregled je pokazal, da slovenski operaterji uporabljajo slede─Źe ┼íifrirne algoritme:

Uporaba A5/1 algoritma v Mobitelovem omre&#382;ju.

Uporaba A5/1 algoritma v Mobitelovem omrežju.

V omre┼żju Mobitela smo uporabo A5/1 nekoliko podrobneje preverili. Mobilni telefon smo nastavili tako, da je zahteval uporabo A5/3, vendar je bilo – kot je razvidno iz spodnjih slik – sporo─Źilo omre┼żja, da je na voljo samo A5/1:

Na&#353; mobilni telefon Mobitelovemu omre&#382;ju sporo&#269;i, da je na voljo za A5/3 &#353;ifriranje...

Naš mobilni telefon Mobitelovemu omrežju sporoči, da je na voljo za A5/3 šifriranje...

...Mobitelovo omre&#382;je pa odgovori, da se bo uporabljalo &#353;ifriranje A5/1.

...Mobitelovo omrežje pa odgovori, da se bo uporabljalo šifriranje A5/1.

Uporaba A5/3 algoritma v Simobilovem omre&#382;ju.

Uporaba A5/3 algoritma v Simobilovem omrežju.

Uporaba A5/1 algoritma v Tu&#353;mobilovem omre&#382;ju.

Uporaba A5/1 algoritma v Tušmobilovem omrežju.

Kot je bilo povedano ┼że na za─Źetku, je ┼íifrirni algoritem A5/1 s kriptoanalizo mogo─Źe dokaj preprosto zlomiti. Na srednje zmogljivem ra─Źunalniku lahko tudi v nekaj minutah. Pri tem si lahko pomagamo tim. mavri─Źnimi tabelami (gre za tabele s predizra─Źunanimi vrednostmi delov ┼íifrirnih klju─Źev), ki so bile pripravljene v okviru projekta Airprobe in posebnim programom Kraken. Omenjene mavri─Źne tabele in programska oprema so na voljo na internetu. O sami kriptoanalizi A5/1 morda kdaj drugi─Ź.

Po drugi strani je algoritem A5/3 veliko mo─Źnej┼íi in je zato njegova kriptoanaliza bistveno tr┼íi oreh. Kot smo videli, Simobilovo GSM omre┼żje uporablja mo─Źnej┼íi ┼íifrirni algoritem (─Źeprav po na┼íih informacijah to ne velja za vse dele Simobilovega omre┼żja), vendar je uporaba A5/3 ┼íifriranja pri Simobilu precej zanimiva.

Preverjali smo namre─Ź ali operaterji dovolijo uporabo A5/0 (to pomeni ne┼íifriran prenos podatkov). To preverjanje smo izvedli s pomo─Źjo aplikacije mobile (opisana je v nadaljevanju) s pomo─Źjo ukaza “show support” (oziroma z ustrezno spremembo konfiguracijske datoteke ~/.osmocom/bb/mobile.cfg). Izka┼że se, da Mobitel uporabe A5/0 ne dovoli, Simobil pa uporabo A5/0 dovoli (kar so sicer v lanskem intervjuju za Monitor absolutno zanikali), kar po na┼íem mnenju predstavlja dodatno varnostno ranljivost. V omre┼żju Tu┼ímobil tega nismo preverjali.

&#268;e telefon to izrecno zahteva, Simobil omogo&#269;a izklop &#353;ifriranja (uporaba A5/0)

Če telefon to izrecno zahteva, Simobil omogoča izklop šifriranja (uporaba A5/0)

Odzivi mobilnih operaterjev

Do objave tega ─Źlanka smo komentar prejeli samo s strani Telekoma. Zaradi njegove zgodovinske vrednosti ga objavljamo v celoti:

Spoštovani,

Mobitelovo omre┼żje je izjemno kakovostno, zanesljivo in varno. Zadostuje najstro┼żjim kriterijem in kljub ┼ítevilnim tovrstnim navedbam o vdorih in zlorabah mobilni komunikacij v Mobitelovem omre┼żju nismo zabele┼żili nobenega primera zlorabe identitete uporabnika.

Kar se ti─Źe samega kodiranja, naj dodamo nekaj dejstev. Vsako mobilno omre┼żje je potencialno ranljivo, tudi kodirni protokol A5/1, predvsem zaradi ┼ítevilnih poizkusov vdora, ki jim je v zadnjih letih vedno bolj izpostavljen. Zato operaterji in proizvajalci stalno analiziramo nove mo┼żnosti, s katerimi bi zagotovili ve─Źjo varnost mobilnih omre┼żij. Za uspe┼íno za┼í─Źito pred prestrezanjem pogovorov se v mobilnih omre┼żjih uporablja ve─Ź razli─Źnih mehanizmov za┼í─Źite, ne le kodirni protokol A5 (ki je namenjen zagotavljanju zaupnosti samo na radijskem vmesniku med mobilnikom in bazno postajo), s katerimi je zagotovljena visoka stopnja varnosti. Pri tem je pomembno, da varnost zagotavljajo tako operaterji kot proizvajalci, in sicer na obeh segmentih, omre┼żju in mobilnih terminalih.

Kodirni protokol A5/3 sicer ni najnovej┼ía re┼íitev*. GSMA se za njegovo uvedbo v terminalih in opremi omre┼żja prizadeva ┼że vsaj od leta 2004. V omre┼żja, predvsem pa v terminale, se postopoma uvaja ┼że nekaj let tako pri nas kot po svetu, vendar imajo nekateri stari terminali te┼żave z A5/3, zato ┼íe ni v celoti nadomestil A5/1. Nove bazne postaje pa ┼że podpirajo protokol A5/3 pri govornih storitvah v omre┼żju GSM. V Telekomu pa seveda intenzivno spremljamo nadaljnji razvoj na tem podro─Źju (za ve─Ź informacij obi┼í─Źite ETSI).

Omeniti pa moramo, da je bil tudi ┼że protokol A5/3 tar─Źa napadov in je kar se tega ti─Źe prav tako ranljiv. Zaradi tega poteka intenzivni razvoj novih algoritmov za za┼í─Źito vsebine komunikacije med telefoni in baznimi postajami s sistemih GSM, npr. A5/4. Jasno pa je, da bo tar─Źa vsak ┼íifrirni protokol, saj se bodo vedno na┼íli posamezniki oz. skupine, ki bodo zaradi razli─Źnih interesov sku┼íali razbiti zaupnost ┼íifrirane komunikacije brez┼żi─Źnega radijskega prenosa (na terenu, izven prostora pod kontrolo operaterja).

Sicer je na┼í fokus razvoja na sodobnih tehnologijah 3 G in LTE, kjer so aktualni ┼íe mo─Źnej┼íi principi ┼íifriranja komunikacije uporabnikov. Na┼íi uporabniki pa vse ve─Ź prometa opravijo preko na┼íega 3,5 G omre┼żja, ki je z vidika ┼íifriranja komunikacije tudi najbolj varno.

Poleg tega naj opozorimo, da gre pri nezakonitem prestrezanju komunikacij za delovanje na podro─Źjih, ki ni v dosegu kontrole operaterja (brez┼żi─Źni radijski prenos). Hkrati ne pozabimo, da je vsakr┼íno nezakonito prestrezanje komunikacije ne glede na obliko ali na─Źin nezakonito po─Źetje.

Lep pozdrav,

Nataša Osolnik

Slu┼żba za korporativno komuniciranje

Nadaljevanje

Zakoniti nadzor v Sloveniji (2.del)

Zakoniti nadzor v Sloveniji (2.del)

V soboto, 2. oktobra 2004, je v zgodnjih jutranjih urah, v času predvolilnega molka, več kot 70.000 uporabnikov Mobitela prejelo nezaželena in nenaročena sporočila SMS s politično vsebino. Iz fotografije spornega SMS sporočila, objavljene v Mladini, je razvidno, ...

Preberi cel članek »

Bluetooth

Bluetooth

Kupili ste si nov tiskalnik, na katerem je pisalo, da omogoča brezžično tiskanje. Malo čudno pogledate, zastrižete z ušesi, si rečete &raquo;okej&laquo; ter tiskalnik kupite. Seveda nato čarobno kartonsko škatlico odprete, gizma namestite na že vnaprej ...

Preberi cel članek »

Teleinfos 2002

Teleinfos 2002

Začel se je včeraj, končal se bo jutri, prehodil sem ga v dveh minutah (članek je bil napisan v četrtek, potem pa sem ga jaz prežvekoval do danes --Primoz). Tako bi nekako lahko skoraj do potankosti opisal dogajanje na sejmu, ki se je tri dni odvijal v Cankarjevem Domu ...

Preberi cel članek »

GSM logotipi

GSM logotipi

Nekega dne, kakopak, na irc kanalu #slo-tech, sem debatiral s slo-techerjem alien-wjem. Pokazal mi je majceno, drobno sličico, ki pa ni bila nič drugega, kot LOGOTIP Slo-Techa. Seveda je bilo treba njegovo stvaritev takoj izkoristiti in tako sva prišla ...

Preberi cel članek »

Spreminjanje klicne identifikacije 101

Spreminjanje klicne identifikacije 101

Konec leta 2011 je več slovenskih medijev poročalo, da naj bi poslanka Državnega zbora Melita Župevc iz enega svojega mobilnega telefona prejela klic na svoj drugi mobilni telefon, javil pa naj bi se neznan moški glas. Na novinarska vprašanja so mobilni operaterji pojasnili, da takih primerov še niso ...

Preberi cel članek »