SlideShare a Scribd company logo
1 of 31
Varnostna analiza
DIGITALNEGA RADIJSKEGA OMREŽJA TETRA
Dejan ORNIG
dejan.ornig@gmail.com
Avgust, 2014
Ključne besede: TETRA, Osmocom, RTL-SDR, omrežje, varnost, analiza, Wireshark.
2
Namen
V letu 2012 so Jaka Hudoklin, Matej Kovačič in Klemen Rupnik na Slo-Tech spletni strani
objavili varnostno analizo GSM omrežja, v kateri so ugotovili številne varnostne ranljivosti
GSM omrežja, ter na ta način opozorili pristojne, da se varnostne ranljivosti odpravijo in
tako zagotovi višja stopnja varnosti za uporabnike.
Po vzoru tovrstne varnostne analize smo v letu 2013 začeli raziskovati delovanje TETRA
omrežja. Naš namen je opraviti varnostno analizo digitalnega radijskega omrežja TETRA, ter
tako širšo javnost seznaniti s splošnimi ugotovitvami, strokovno javnost pa opozoriti na
varnostne ranljivosti in napake, ki bi lahko povzročile mnoge težave, lahko tudi delni ali
popolni izpad omrežja.
V strokovnih krogih velja prepričanje, da je TETRA omrežje zaradi digitalnega delovanja
varno, da je onemogočeno prisluškovanje individualnim pogovorov ter skupinskih pogovorov
na grupah, branje SDS1
in statusnih sporočil, itd. Prav tako nihče v strokovnih krogih ne dvomi
v varnostne ranljivosti varnostnih mehanizmov, kot sta avtentikacija in šifriranje radijskega
vmesnika s šifrirnim algoritmom oziroma dinamičnimi, izpeljanimi ključi.
V prispevku smo se podrobneje posvetili trditvam stroke, ter dokazali povsem nasprotno.
Ugotovili smo, da je možno dekodirati sam signal, ga analizirati, pregledovati prometne
podatke, brati SDS in statusna sporočila, poslušati individualne pogovore in pogovore na
grupah, ter ugotovili druge ranljivosti samega sistema, kot so težave s šifrirnimi algoritmi,
oziroma distribucijo ključev, težave pri avtentikaciji, baznih postajah, itd.
Naj pri tem poudarimo, da varnostna analiza, ki smo jo opravili na slovenskem TETRA
omrežju, nikakor ni bila trivialna, saj smo za izvedbo te morali spremeniti del osmocom kode
in spisati nekaj nove, tako da je ponovitev opisanih postopkov za nekoga brez predhodnega
znanja, zelo težko izvedljiva.
Ena izmed varnostnih ranljivosti TETRA omrežja so po našem raziskovanju tudi mikrovalovne
povezave, ki delujejo na frekvenci 1.4 GHz in 18 GHz, problem teh pa je pravzaprav ta, da
podatki, ki se prenašajo preko mikrovalovnih povezav, niso šifrirani. Z ustrezno opremo,
znanjem in vedenjem, kje potekajo optične poti mikrovalovnih povezav, bi lahko prišli do
popolnoma vseh podatkov, ki se prenašajo preko TETRA omrežja. S tem se v tej varnostni
analizi ne bomo posebej ukvarjali, bomo pa opisali delovanje omrežja na nivoju uporabnikov,
torej radijskih terminalov in baznih postaj.
1
Short Data Service
3
Prav tako se v tej varnostni analizi ne bomo ukvarjali s tehničnim delom radijskih terminalov,
kljub temu da je verjetno največja varnostna ranljivost prav kloniranje radijskih terminalov,
natančneje kloniranje avtentikacijskega (K) ključa, saj za takšen možni hekerski napad po
ETSI2
standardih, ne obstaja nikakršni varnostni mehanizem.
Poudarjamo, da smo pri raziskovanju slovenskega TETRA omrežja in sami varnostni analizi,
uporabili le legalno dovoljena tehnična sredstva in metode, ter da nismo posegali v delovanje
samega sistema.
Varnostna analiza je nastala izključno na podlagi zajemanja in analiziranja prometnih
podatkov v smeri BS3
-> MS4
, torej DOWNLINK-a. Prometnih podatkov UPLINK-a zaenkrat z
osmocom programsko in strojno opremo ni mogoče zajemati.
1 O TETRI
TETRA5
ali prizemni snopovni radio je digitalni radijski komunikacijski sistem, ki ga za svojo
komunikacijo uporabljajo službe nacionalne varnosti EU ter druge službe, ki zagotavljajo
javne storitve. Digitalni radijski sistem TETRA je bil s standardom Evropskega inštituta za
telekomunikacije ETSI zasnovan leta 1995. TETRA omrežje se je pri nas začelo graditi leta
2001. Uporabniki omrežja v Slovenji, teh je do zdaj preko 7.000, so: MNZ - Policija,
Ministrstvo za obrambo - SV, VP, Slovensko obveščevalno - varnostna agencija (SOVA),
Ministrstvo za pravosodje - Zavodi za prestajanje kazenskih sankciji, mestna redarstva,
Družba za avtoceste RS, Carinska / Finančna uprava RS, protokol Vlade RS itd.
Vse do danes je pokritost omrežja na območju Slovenije 70 %, v prihodnjih letih se tako
načrtuje še dodatne postavitve baznih postaj, ki bo povečala odstotek pokritosti s signalom
po državi.
Poudariti je potrebno, da gre za zelo drago omrežje, ki je državo stalo že na desetine
milijonov evrov. Drage so ne le investicije in nakup nove opreme, temveč tudi dnevno
vzdrževanje omrežne infrastrukture.
Glavni upravljalec TETRA omrežja je tako Ministrstvo za notranje zadeve. MNZ ima podpisano
pogodbo o vzdrževanju s podjetjem Santera, d.o.o., s sedežem na Industrijski cesti 9,
Grosuplje, ki vzdržuje infrastrukturo baznih postaj, ter nadzoruje delovanje samega
2
European Telecommunications Standards Institute
3
Base Station
4
Mobile Station
5
Terrestrial Trunked Radio
4
omrežja. MNZ v vlogi upravljalca omrežja skrbi za jedro samega sistema in uporabniški ter
varnostni management.
Pred začetkom varnostne analize digitalnega radijskega omrežja TETRA v Sloveniji, smo
najprej pregledali javno dostopno dokumentacijo, predvsem dokumentacijo o javnih
naročilih opreme in že iz dokumentacije ugotovili nekatere tehnične lastnosti samega
omrežja.
Iz tehnične dokumentacije lahko razberemo, da TETRA omrežje pri nas deluje na
frekvenčnem pasu 380 – 430 Mhz (deluje lahko tudi na drugih frekvenčnih območjih), v dveh
načinih delovanja: DMO6
direkten način brez omrežja med radijski terminali in TMO7
omrežni
način. V omrežnem načinu komunikacija poteka med uporabniki in samim dispečerskim
sistemom preko baznih postaj, ki so del TETRA infrastrukture. Infrastrukturo sestavljajo
radijski terminali (ročni, mobilni) in bazne postaje, ki so med seboj fizično povezane s
stikalnim delom in centralnim sistemom, ta pa spet preko mikrovalovnih povezav vodi do
dislociranih baznih postaj oziroma rezervnega centralnega sistema. Iz razpisne
dokumentacije (MNZ, 2010) je razvidno, da se za dostop do omrežja obvezno uporablja
temeljni varnostni mehanizem – avtentikacija.
Med drugim smo na podlagi tehničnih dokumentaciji lahko sklepali, da je določena
komunikacija šifrirana s šifrirnim algoritmom TEA1, saj je pri skoraj vseh javnih naročilih JU
v tehnični specifikaciji bil naveden pogoj, da mora terminalna in omrežna oprema delovati
v režimu CLASS 1 in CLASS 3, kar pomeni, da so nekateri prometni podatki šifrirani, nekateri
pa ne. Kaj to pomeni v praksi bomo opisali v nadaljevanju.
TETRA je po samem delovanju zelo podobno GSM, vendar je med njima kar nekaj razlik, v
nekaterih pogledih je TETRA omrežje bolj kompleksnejše, predvsem pri varnostnih
mehanizmih, ki pa so, poudarjamo, opcijski.
Tako je mogoče uporabljati obvezno medsebojno avtentikacijo, šifriranje radijskega
vmesnika, šifriranje od točke do točke z AES algoritmom ali pa nič od navedenega. Vse je
odvisno od zahtevnosti in potreb uporabnikov ter seveda od finančnih sredstev, saj vsi
varnostni mehanizmi, ki so v TETRA omrežju opcijski, stanejo.
Več o delovanju omrežja na različnih nivojih, bomo predstavili po ločenih sklopih.
6
Direct Mode
7
Trunked Mode
5
2 PRIPRAVA
Pred začetkom varnostne analize in raziskovanjem TETRA omrežja, smo najprej pripravili
strojno in programsko opremo. V ta namen smo uporabili:
- RTL-SDR (DVB-T znamke Terratec TStick+, s čipom Elonics E4000)
- ANTENA (priložena)
- OS LINUX (UBUNTU 12.04 LTS)
- osmo-tetra (http://tetra.osmocom.org/trac/wiki/osmo-tetra)
- Wireshark (http://www.wireshark.org/)
3 DEKODIRANJE SIGNALA
Če smo želeli analizirati prometne podatke, ki se prenašajo po TETRA omrežju, smo pred
tem morali dekodirati digitalni signal. Od začetka razvoja omrežja, leta 1995 pa vse do leta
2010 je veljalo, da je za dekodiranje TETRA signala potrebna zelo draga oprema. Naprave,
ki so omogočale takšno dekodiranje, predvsem za namen testiranja delovanja omrežja, so
stale deset tisoč evrov in več. To pa je s prihodom USRP8
naprav postalo dostopnejše pa tudi
cenejše. USRP naprava je univerzalna naprava za sprejem, pa tudi oddajo vseh mogočih
radijskih signalov, žal pa je zaenkrat sama naprava še vedno relativno draga (od 1000 do
1500 evrov), zato so se pojavile bistveno cenejše alternative, ki prav tako dobro opravijo
svojo vlogo - SDR ali odprtokodni programski radio je strojna in programska oprema, ki se jo
8
Universal Software Radio Peripheral
6
lahko prav tako uporabi za sprejem katerega koli radijskega signala. S takšno opremo lahko
sprejemamo tudi GSM, GPRS, AP25, DMR in še mnoge druge radijske signale. SDR je lahko
tako navaden DVB-T sprejemnik, ki ni nič drugega kot USB ključek za sprejemanje TV
digitalnega signala. V ta namen smo kupili DVB-T (RTL2832U) sprejemnik, znamke Terratec
TStick+, s čipom Elonics E4000, ki nas je stal 20 evrov.
Da smo lahko dekodirali TETRA signal z modulacijo π/4-DQPSK, je bila potrebna le
programska koda, orodje, ki je sposobno dekodirati prejeti signal preko SDR naprave.
Osmocom, skupina hekerjev, katerih prvotni namen je raziskovanje GSM omrežja, je prav v
letu 2011 objavila odprtokodno rešitev osmo-tetra, ki deluje na LINUX platformi.
osmo-tetra (vir: http://tetra.osmocom.org/trac/wiki/osmo-tetra)
Osmo-tetra vsebuje različne skripte in programe za dekodiranje TETRA signala na različnih
slojih. Osnovna odprta javno dostopna koda je tako sposobna dekodirati TETRA signal
DOWNLINK-a bazne postaje. Kot smo že uvodoma zapisali, varnostna analiza temelji na
lastnem pisanju manjkajoče in popravljanju obstoječe osmocom kode. Za podrobnejšo
analizo prometnih podatkov in kasneje tudi poslušanje samega govornega prometa je bilo
potrebnega veliko dela, popravkov, predvsem bug-ov in implementaciji nekaterih rešitev.
Naj na kratko povzamemo nekatere funkcije osnovne kode v osmo-tetra.
~/sdr/osmo-tetra/src/demod/python/tetra-demod.py
Phython skripta, namenjena za uvoz I/Q vira, ki ustvari "cfile".
~/sdr/osmo-tetra/src/float_to_bits
Programska koda za uvoz dekodiranih bitov.
~/sdr/osmo-tetra/src/demod/python/osmosdr-tetra_demod_fft.py
Phython skripta, namenjena uvozu vira iz SDR naprave.
7
~/sdr/osmo-tetra/src/tetra-rx
Osredni program, ki uvozi iz datoteke "file.bits" bite podatkov in jih nato pošlje bodisi konzoli
ali preko GSMTAP protokola Wiresharku, programu za analizo protokolov in prometnih
podatkov.
Osmo-tetra lahko uporabljamo za časovno določen zajem signala, dekodiranja in poznejšega
analiziranja prometnih podatkov ali pa kar zajemanje "real time" torej dekodiranje in
analiziranje trenutnih prometnih podatkov.
Imeli smo strojno opremo in javno dostopno odprtokodno programsko rešitev, ki pa jo je bilo
potrebno ustrezno pripraviti. Potrebno je bilo namestiti mnogo različnih programskih
paketov, ki so potrebni za delovanje osmo-tetra programske kode. Začeli smo z
nameščanjem odprtokodnega programskega ogrodja GNU Radio, v sklopu katerega je tudi
RTL-SDR programska oprema, ki je potrebna za dekodiranje signala preko SDR programske
naprave. GNU Radio je programsko ogrodje, ki vsebuje različna orodja, dekoderje, filtre in
druge pripomočke za dekodiranje in analiziranje različnih radijskih signalov. Po uspešno
nameščenem GNU Radio ogrodju, smo namestili različne knjižnice in pakete, brez katerih
osmo-tetra ne more delovati. Po mučnem nameščanju in sprotnem reševanju težav z
različnimi gonilniki in datotekami, smo le uspeli usposobiti strojno opremo za delovanje.
Na začetku je vse delovalo v zelo primitivnem okolju, z vpisovanjem ukazov v ukazno
konzolo, tako da je bilo potrebno nekaj prehodnega znanja v LINUX okolju.
Pri vpisu ukaza:
src$ ./demod/python/osmosdr-tetra_demod_fft.py -o /dev/stdout | ./float_to_bits
/dev/stdin /dev/stdout | ./tetra-rx /dev/stdin
se nam je odprl osmosdr-tetra_demod_fft.py, program, ki nam prikaže frekvenčni spekter.
Postavimo se na frekvenčni spekter od 390 – 395 Mhz. Na frekvenčnem spektru opazimo več
amplitud, ki predstavljajo bazne postaje. Amplitude lahko vidimo na spektru, izberemo pa
lahko tudi prikaz spektra kanala.
8
Na frekvenčnem
spektru 390 – 395 Mhz
smo našli bazne
postaje in si izbrali
najbolj izraženo.
Poudariti je
potrebno, da so
antene, ki so
navadno priložene
DVB-T sprejemnikom
lahko problematične,
še posebno če smo na
območju, kjer je
pokritost s TETRA
signalom slaba.
osmosdr-tetra_demod_fft.py
Na frekvenčnemu spektru kliknemo najbolj izraženo amplitudo, torej bazno postajo, jo
umerimo in če smo bili uspešni pri centriranju amplitude, bi morali v ukazni konzoli ujeti
SYNC9
izbruhe (ang. BURST) BSCH10
(MAC11
-SYNC PDU12
) in BNCH13
(SYSINFO PDU).
Na sliki lahko vidimo,
da smo na frekvenci
DL 391. 91250 Mhz,
UL 381.91250 Mhz,
ujeli bazno postajo,
ki ima MCC14
oznako
293 (Slovenija), ter
MNC15
oznako 7, kar
označuje ponudnika
TETRA storitve.
9
Synchronization
10
Broadcast Synchronization Channel
11
Media Access Control
12
Protocol Data Unit
13
Broadcast Network Channel
14
Mobile Country Code
15
Mobile country code
9
Razberemo lahko nekaj osnovnih podatkov o omrežju (na voljo je kriptografska zaščita
radijskega vmesnika, obvezna registracija, de-registracija, govorne in podatkovne storitve,
itd.)
4 ANALIZA DEKODIRANEGA TETRA SIGNALA
Dobili smo dekodiran TETRA signal bazne postaje. Dekodirane prometne podatke, ki smo jih
"real-time" zajemali od bazne postaje, smo želeli videti v nekem smiselnem zaporedju. Da
bi jih lahko podrobneje analizirali, smo se odločili, da uporabimo orodje Wireshark, ki je
namenjeno analizi protokolov in prometnih podatkov. Osmo-tetra dekoder namreč pošilja
prometne podatke po GSMTAP protokolu na localhost (127.0.0.1) Wiresharku, le-ta pa
omogoča grafični prikaz zajetih prometnih podatkov, ki se pošiljajo po TETRA omrežju.
Na voljo smo imeli Wiresharkov dissector, za dekodiranje TETRA prometnih podatkov, ki ga
je napisala skupina razvijalcev na Pekinškem inštitutu za tehnologijo po ETSI standardu.
Tako kot pri osmocom kodi, smo morali tudi za Wiresharkov dissector sami korigirati
določene napake in dodati nekaj dodatnih funkciji za dekodiranje določenih prometnih
podatkov.
Ko smo imeli popravljeno osmocom kodo in dodelan Wiresharkov dissector, smo lahko "real-
time" zajemali prometne podatke na različnih slojih: PHY16
, Lower MAC, Upper MAC, LLC17
,
16
Physical
17
Logical Link Control
10
MLE18
, CMCE19
in MM20
. Na Lower MAC sloju smo npr. z osmo-tetra dekoderjem in
Wiresharkovim dissectorjem lahko dekodirali ACCESS-ASSIGN, SYNC, SYSINFO in RESOURCE.
V pomoč razumevanju zajetih prometnih podatkov v Wiresharku nam je bila dokumentacija
ETSI standardov, ki za vsak paketek do podrobnosti razloži funkcijo in vlogo. To je pomenilo
poglobljen študij ETSI standardov.
V Wiresharku smo tako lahko zasledili registracije, lokacijske posodobitve, avtentikacije,
govorni in podatkovni promet ter seveda šifrirani promet. V ločenih sklopih bomo predstavili
naše ugotovitve.
Spodnja slika prikazuje broadcast SYNC izbruh BNCH, sub broadcast signaling kanala BCCH21
,
ki ima privzeto ISSI22
številko: 16777215. Če poenostavimo BCCH oddaja signal radijskim
terminalom, na podlagi katerega lahko identificirajo omrežje in se nanj tudi povežejo.
Kot še lahko razberemo iz spodnje slike, broadcast prometni podatki niso šifrirani, kar jasno
označuje identifikator na MAC-RESOURCE PDU (encryption mode: 0).
18
Mobile Link Entity
19
Circuit Mode Control Entity
20
Mobility Management
21
Broadcast Synchronization Channel
22
Individual Short Subscriber Identitiy
11
4.1 Registracija
Vsak radijski terminal mora biti predhodno vpisan v posebnem imeniku registraciji, ki ga
upravlja administrativni management. Imenik za vsak radijski terminal vsebuje unikatno
TEI23
številko proizvajalca in identifikacijsko ISSI številko, ki mora biti unikatna in ki se jo
sprogramira s programsko opremo proizvajalca radijskega terminala. ISSI številka predstavlja
24 bitov od skupno 48 bitov, ki so del ITSI24
identitete. Preostalih 24 bitov predstavljata MCC
in MNC koda.
Če ponazorimo proces registracije. Pri vklopu radijskega terminala, terminal s svojo ISSI
številko pošlje zahtevo za registracijo bazni postaji (U-LOCATION-UPDATE-DEMAND) ki ima
na MAC-RESOURCE PDU identifikator ITSI ATTACH. Bazna postaja, oziroma omrežna nadzorna
infrastruktura preveri ali je radijski terminal z navedeno ISSI številko vpisan v bazo radijskih
terminalov. Če je odgovor pritrdilen, bazna postaja registrira radijski terminal v omrežje
(D-LOCATION-UPDATE-ACCEPT). V kolikor se uporablja ključni varnostni mehanizem –
avtentikacija radijskega terminala, je pred samo registracijo nujen proces overitve z
avtentikacijskim ključem, ki ga bomo razložili v nadaljevanju.
Po uspešno opravljeni registraciji in predhodni avtentikaciji, lahko radijski terminal dostopa
do določenih grup – številk GSSI25
. V nadzornem managementu se namreč določa tudi pravice
posameznemu radijskemu terminalu, do katerih grup GSSI ima pravico dostopati. GSSI je 24
bitna identifikacijska številka grupe.
Na začetku našega raziskovanja TETRA omrežja, nekje v drugi polovici leta 2013 smo
ugotovili, da veliko radijskih terminalov, ki so delovali v režimu brez šifriranja radijskega
vmesnika (CLASS 1), niso imeli vključene avtentikacije. Slednje je bilo mogoče ugotoviti
tako, da smo v Wiresharku med prometnimi podatki MAC-RESOURCE PDU zasledili
D-LOCATION-UPDATE-ACCEPT, ki je imel tip ITSI ATTACH, pred tem pa nismo zasledili
avtentikacije (D-LOCATION-AUTHENTICATION-DEMAND), kar je pomenilo, da je bil radijski
terminal registriran v omrežje brez predhodne avtentikacije.
Teoretično bi se v omrežje lahko prijavil kdorkoli, ki bi poznal ISSI identifikacijsko številko,
le imeti bi moral radijski terminal in programsko opremo za programiranje. Ugotovili smo
tudi, da je bila ustaljena praksa predvsem v Policiji, ki sicer uporablja šifriranje radijskega
vmesnika s šifrirnim algoritmom TEA1 in posledično tudi avtentikacijo, da so radijskim
terminalom, ki so jih želeli izklopiti iz omrežja, le onemogočili avtentikacijo, ne pa tudi
23
TETRA Equipment Identity
24
Individual TETRA Subscriber Identitiy
25
Group Short Subscriber Identitiy
12
registracije. Tako bi teoretično lahko bila mogoča registracija radijskega terminala brez
avtentikacije in s tem tudi prijava na vse določene grupe, do katere je imel radijski terminal
s svojo ISSI številko dostop.
Spodnja slika prikazuje registracijo, radijskega terminala po predhodni uspešni avtentikaciji
z ISSI številko 6750452. Bazna postaja po predhodni uspešni avtentikaciji pošlje radijskemu
terminalu D-LOCATION-UPDATE-ACCEPT, ki ima pod tip označen ITSI ATTACH, kar pomeni,
da je bil radijski terminal uspešno registriran v omrežje.
V MAC-RESOURCE PDU med D-LOCATION-UPDATE-ACCEPT (tip ATTACH ali ROAMING) lahko
zasledimo tudi pripeto številko GSSI (ATTACH GSSI). Pri tem je zanimivo, da je prikaz GSSI
številke odvisen od proizvajalca terminalih naprav (če je v MAC-RESOURCE PDU pripeta
medtem, ko pošlje U-LOCATION-UPDATE-DEMAND). Na podlagi analize smo tako ugotovili,
da so pripete le GSSI številke od proizvajalca Motorola. Nokia/EASD, Sapura in drugi, pa
imajo očitno onemogočeno pripenjanje GSSI številke na MAC-RESOURCE PDU identifikatorju.
Spodnja slika prikazuje pripeto GSSI številko 6750903, ki je bila vidna na MAC-RESOURCE PDU
D-LOCATION-UPDATE-ACCEPT ISSI številke 6750452.
13
4.2 Avtentikacija
Proces avtentikacije v TETRA omrežju je temeljni varnostni mehanizem od katerega so
odvisni vsi nadaljnji varnostni mehanizmi. Za avtentikacijo se uporablja 128 bitno simetrično
šifriranje na podlagi poziva-odziva (ang. challenge – RAND, response - RES) spremenljivk.
Avtetikacija poteka med omrežno infrastrukturo, na katero je tudi priključen avtentikacijski
center (Authentication Center – AuC) in radijskim terminalom, ki ima shranjen unikatni K
ključ na posebnem zaščitenem čipu ali SIM kartici. Avtentikacijski center je strežnik,
priključen na stikalno infrastrukturo, na katerem se prav tako nahaja enak unikatni
avtentikacijski ključi (K), vezan na ISSI, kot na radijskem terminalu. K ključ se zaradi varnosti
nikoli ne prenese preko omrežja, zato se za preverjanje avtentičnosti uporabijo štirje
algoritmi TA11, TA12, TA21 in TA22, ki preverjajo ujemanje avtentikacijskega ključa z RES
in RAND spremenljivkama. ETSI standard določa tri možne avtentikacije:
 avtentikacija radijskega terminala omrežju,
 medsebojna avtentikacija med omrežjem in radijskim terminalom,
 obvezna medsebojna avtentikacija omrežja in radijskega terminala.
Med analizo prometnih podatkov, ki se prenašajo po TETRA omrežju, smo tako opazili
D-AUTHENTICATION-DEMAND, zahtevek bazne postaje, da se mora določen radijski terminal
avtenticirati. Prestregli smo poziv, 80 bitno RAND SEED in 80 bitno RAND CHALLENGE
spremenljivko, ki jo je poslala bazna postaja radijskemu terminalu. Ker nismo imeli ustrezne
programske in strojne opreme, da bi analizirali tudi prometne podatke, ki se prenašajo preko
UPLINK-a do bazne postaje, žal nismo mogli videti odziva (U-AUTHENTICATION-RESPONSE)
radijskega terminala z RES spremenljivko.
Spodnja slika prikazuje avtentikacijo radijskega terminala, s številko ISSI 3005715, ki se
uspešno avtenticira omrežju, kar je razvidno iz odziva bazne postaje D-LOCATION-
LOCATION-UPDATE-ACCEPT. V kolikor proces avtentikacije ne bi bil uspešen, bodi si zaradi
napačnih spremenljivk RES, RAND in s tem tudi avtentikacijskega ključa, bi zasledili
D-LOCATION-UPDATE-REJECT. Radijski terminal, ki bi prejel zavrnitev bazne postaje D-
LOCATION-UPDATE-REJECT, vsaj po teoriji in ETSI standardih, se naj ne bi mogel registrirati
v samo omrežje.
14
Pri opazovanju prometnih podatkov DOWNLINK-a smo ugotovili, da se v CLASS 1 uporablja le
enostranska avtentikacija in sicer da se radijski terminal avtenticira omrežju, ne pa tudi
obratno. Tako se uporabljata dva algoritma TA11 in TA12. Slednja lastnost pa lahko
predstavlja varnostno tveganje pred lažnimi baznimi postajami, saj ni varnostnega
mehanizma na strani radijskih terminalov, ki bi preverjal avtentičnost baznih postaj.
Omenili smo že, da smo na začetku raziskovanja omrežja odkrili hudo varnostno ranljivost,
ki je omogočala registracijo radijskih terminalov brez avtentikacije, kar je pomenilo, da bi
lahko kdorkoli kloniral ISSI številko terminala in se brez težav prijavil na katerikoli GSSI.
Varnostna ranljivost je bila odkrita tako pri organizacijah in službah, ki ne uporabljajo
šifriranja radijskega vmesnika (CLASS 1) in v službah, ki so šifriranje uporabljale (CLASS 3),
to sta po naših podatkih le Policija in SOVA. Tedaj je bila ustaljena praksa, da so operaterji
na sistemu nadzorne infrastrukture le onemogočili avtentikacijo za določen radijski
terminal, ki so ga želeli začasno onemogočiti. Prijava v omrežje bi lahko bila zaradi te
napake mnogo lažja. Kljub tej napaki pa zaradi dodatnih varnostnih mehanizmov, ki so
povezani z avtentikacijo, naj ne bi bilo mogoče poslušati pogovorov službam, ki delujejo v
CLASS-u 3, saj so šifrirani z izpeljanimi, dinamičnimi ključi preko uspešne avtentikacije,
o katerih nekoliko kasneje.
Pri analizi prometnih podatkov smo ugotovili dve varnostni ranljivosti, najhujše tretje, v
javni varnostni analizi ne bomo omenjali, saj bi lahko razkritje te varnostne ranljivosti
pomenilo ogrožanje najbolj kritičnih komunikaciji v Sloveniji in s tem tudi ogrožanje
nacionalne varnosti države.
15
Brez avtentikacije je torej mogoča prijava v samo omrežje, saj ETSI standardi ne določajo
varnostnih mehanizmov za preprečevanje kloniranja ISSI številk. Registracija je uspešna, če
je ISSI številka vpisana v imenik, bazo uporabnikov. V kolikor avtentikacija ni vključena, ni
mogoče šifrirati prometa z dinamičnimi ključi, so ti izpeljani skozi uspešen postopek
avtentikacije (DCK, CLASS 3).
Lahko dodamo, da je naše omrežje nekoliko posebno, saj deluje tako varnostnem razredu 1
(CLASS 1, brez šifriranja) kot varnostnem razredu 3 (CLASS 3, šifriranje, izpeljani, dinamični
ključi). To pomeni da bazne postaje in vsa omrežna infrastruktura deluje v obeh načinih, kar
pa ni ravno najboljša varnostna pa tudi funkcionalna rešitev.
4.3 Govorni promet
Na začetku smo spremljali le prometne podatke registraciji in avtentikaciji, a ko smo v
Wiresharku zasledili D-SETUP, kar je pomenilo da se prenaša tudi govorni promet, smo se
odločili, da si raziskovanje še malce bolj popestrimo. V ta namen smo morali spisati nekaj
manjkajoče kode, popraviti nekaj bug-ov in narediti patch-e za osmo-tetra. Zanimivo je, da
je ETSI javno objavil ACELP govorni kodek po standardu ETSI 300 395-2. Bilo ga je potrebno
le implementirat v osmocom kodo. Pri tem smo imeli ne malo težav, ki smo jih sprotno in
vztrajno reševali in po določenem času smo lahko že poslušali tako pogovore na grupah, kot
tudi individualne pogovore, seveda tiste, ki so bili nešifrirani. Spodnja slika prikazuje govorni
promet v Wiresharku.
16
Iz slike je razvidno, da gre za skupinski klic v režimu CLASS 1, brez šifriranja (encryption-
mode: 0) na grupi GSSI številke 900006. ISSI številka uporabnika, ki v tem trenutku govori na
grupi je 9200047 (calling-party-address-ssi).
Uporabnik ISSI številke 9200047 pritisne PTT tipko za govor (U-SETUP), za kar bazna postaja
najprej dodeli klicu USAGE marker (5), slednje namreč zagotavlja večjo zanesljivost klica in
preprečuje motnje klica na istem časovnem kanalu hkrati. Nato bazna postaja dodeli prosti
časovni kanal in govor se začne prenašati preko bazne postaje tudi na DOWNLINK-u
(D-SETUP). Govorni promet se tako prenaša naslovniku (individualni klic) ali naslovnikom
(skupinski klic – grupa) kar v Wiresharku vidimo kot D-SETUP. Trajanja klica označuje CALL-
TX-GRANTED konec klica pa CALL-RELEASE, kar označuje tudi "TIMEOUT - T308"
rezerviranega časa določenega skupinskega klica.
Iz prometnih podatkov je tako razvidno kdo, kdaj, kam in koliko časa kliče, katera časovna
reža je namenjena klicu, USAGE marker, identifikator klica, identifikator šifriranja
(encrypted, clear) in še mnogo drugega.
Omenili smo že, da je možno ne samo poslušanje govornega prometa skupinskih klicev,
ampak tudi individualnih. Individualni klici so možni tako v TMO kot tudi v DMO načinu. V
TMO načinu so lahko notranji (samo znotraj TETRA omrežja, med radijskimi terminali ali
dispečersko infrastrukturo) ali zunanji (na druga omrežja, npr. GSM, stacionarno, IP, itd.)
Opazili smo, da je storitev individualnih klicev že nekaj časa nedelujoča, oziroma jo, kot
smo zasledili, uporablja le Policija.
17
4.4 Podatkovni promet (SDS, Stutus)
Med nešifriranimi prometnimi podatki smo lahko zasledili tudi SDS26
sporočila, za katere
lahko rečemo, da gre za podobno storitev kot SMS pri GSM. SDS sporočila se lahko preko TMO
ali DMO omrežja pošilja na grupo GSSI, pri tem dobijo SDS sporočilo vsi, ki so pridruženi grupi
ali pa individualno. Statusna sporočila imajo drugačno vlogo, saj gre za vnaprej določena,
numerična sporočila, ki jasno določajo nek v naprej določen status uporabnika. Podobno kot
pri GSM tudi TETRA uporablja servisno številko SDS centra, preko katerega se pošiljajo
sporočila. Za pošiljanje SDS sporočil se uporablja CMCE27
protokol na tretjem krmilnem sloju.
Pri analizi prometnih podatkov v Wiresharku smo zasledili D-SDS-DATA. SDS ali statusno
sporočilo je nič drugega kot niz bitov, ki jih je bilo potrebno dekodirati, za kar smo kasneje
uporabili tudi grafični vmesnik, TETRA Monitor, o katerem več v nadaljevanju. Med
prometnimi podatki smo lahko pri določenih uporabnikih, službah lahko videli tudi LIP28
SDS
sporočila.
Spodnja slika prikazuje Wireshark, preko katerega smo na začetku analizirali prometne
podatke. Vidimo lahko poslano SDS sporočilo (D-SDS-DATA) pošiljatelja ISSI številke 3005820
naslovniku ISSI številke 3005823.
26
Short Data Service
27
Circuit Mode Control Entity
28
Location Information Protocol
18
Ko smo osvojili nekaj znanja, smo dodali kodo, ki je dekodirala SDS in statusna sporočila ter
jih takole prikazovala ukazni konzoli.
Kot vidimo na sliki, je
pošiljatelj z ISSI številko
3005820 poslal SDS sporočilo
naslovniku z ISSI številko
3005823 z vsebino "SOBA
42".
Dekodirali smo tudi statusno in SDS sporočilo naslovljenega na radijski terminal, ki naj bi
deloval v šifriranem načinu delovanja (CLASS 3), vendar kot bomo lahko spoznali v
naslednjem delu varnostne analize, ni vedno tako. Vidimo da je dispečerski ISSI (PU LJ)
6100001 poslal najprej statusno sporočilo radijskemu terminalu, ISSI številke 6109101, status
32462, hkrati pa tudi SDS sporočilo z vsebino "Uspesno ste se prijavili v patruljo G611. Vrsta
patrulje je INTERVENCIJA. Stevilo clanov patrulje je 2".
Ugotovimo lahko, da je poslano SDS sporočilo, povratno obvestilo o uspešni prijavi v sam
sistem. Status, ki ga pošlje uporabnik radijskega terminala, se prikaže operaterju OKC,
v aplikaciji TETRA Dispečer, kjer je prikazan klicni znak policista/patrulje s podatki o vrsti
dela, številu policistov v patrulji, delovnem časom, delovnim statusom, specifični opremi,
ter o vrsti in tipu vozila. (A. GRADIŠNIK, M. RISTIČ, 2012.)
19
4.5. Šifrirani promet
Kot smo že omenili, smo lahko na podlagi podatkov BCCH kanala ugotovili, da TETRA omrežje
podpira tudi šifriranje radijskega vmesnika. Sami prometni podatki, ki se pošiljajo preko
BCCH kanala, še ne povedo za kateri šifrirani algoritem gre. Naj za začetek predhodno
postrežemo nekaj teorije o varnostnih mehanizmih.
Varnostni mehanizmi v TETRA omrežju so:
 medsebojna avtentikacija med terminalskimi napravami in omrežjem preko
radijskega vmesnika (algoritmi TA11, TA12, TA21, TA22),
 kriptografska zaščita radijskega vmesnika (algoritmi TEA1, TEA2, TEA3, TEA4),
 kriptografska zaščita točka – točka (*AES),
 anonimnost,
 daljinska blokada terminalnih naprav.
TETRA pozna tri možne varnostne razrede (security classes):
 Security CLASS 1 (avtentikacija je opcijska, brez kriptografske zaščite radijskega
vmesnika, brez kriptografske zaščite točka – točka),
 Security CLASS 2 (avtentikacija je opcijska, kriptografska zaščita radijskega vmesnika
je statična - SCK29
, kriptografska zaščita točka – točka je opcijska),
 Security CLASS 3 (avtentikacija je obvezna, kriptografska zaščita radijskega vmesnika
je dinamična – DCK30
, kriptografska zaščita točka – točka je opcijska).
Po javno dostopni tehničnih dokumentacijah se v Sloveniji uporabljata varnostna razreda,
CLASS 1 in CLASS 3, kar lahko razberemo tudi iz sporočil BCCH kanala. Podatka, kateri
algoritem se uporablja za šifriranje radijskega vmesnika med samimi prometnimi podatki ne
najdemo, zato pa je toliko bolj priročen internet, na katerem ugotovimo, da v Slovenji
uporabljamo TEA1 algoritem.
TEA ali TETRA Encryption Algorithm je 80 bitni algoritem za tokovno šifriranje (stream
cipher). Mnogi po ETSI standardu določene TEA algoritme enačijo s algoritmom Tiny
Encryption Algorithm, ki je pravzaprav javno razkrit algoritem za šifriranje blokov (block
ciphers) in nima nikakršne povezave s TETRA Algorithm Encryption (TEA).
29
Static Cipher Key
30
Derived Cipher Key
20
Uporabnikom TETRA omrežja so opcijsko po ETSI standardu na voljo štirje standardizirani
algoritmi za kriptografsko zaščito radijskega vmesnika:
• TEA1 je osnovni 80 bitni algoritem za splošno uporabo.
• TEA2 je 80 bitni algoritem. Njegova uporaba je omejena na organizacije javne
varnosti v državah podpisnicah Schengenskega sporazuma. Skrbnik algoritma je
nemška Policija. Izvoz algoritma je pod nadzorom. Algoritem uporablja večina
Policiji znotraj EU.
• TEA3 je 80 bitni algoritem. Njegova uporaba je omejena na organizacije javne
varnosti v državah, ki niso podpisnice Schengenskega sporazuma. Izvoz algoritma je
pod nadzorom.
• TEA4 je 80 bitni algoritem, namenjen splošni uporabi.
Za vse TEA algoritme velja, da so dobro varovana skrivnost, saj do zdaj nobeden izmed njih
ni bil javno razkrit. Prav tako do zdaj še ni nobene javno znane kriptoanalize TEA algoritmov,
kar gre pripisati restriktivnim ukrepom, ki prepovedujejo splošno distribucijo in protokolom,
ki varujejo algoritme varno shranjene znotraj programske opreme, ki se nahajajo na
radijskih terminalih in napravah, ki so priključene v TETRA omrežje. Tako so na primer
različni proizvajalci TETRA opreme algoritme, ki so zapisani v spominskem modulu, posebno
šifrirali, tako da dostop do njih ni ravno enostaven.
Ko smo malce bolj razumeli kakšni so varnostni mehanizmi in kakšno varnost lahko
pričakujemo, smo verjeli, da ima Policija povsem zavarovane svoje komunikacije. Toda, kot
smo že omenili, imamo pri nas nekoliko specifično omrežje, saj bazne postaje delujejo tako
v CLASS-u 1 kot v CLASS-u 3, kar pomeni da na časovnih oknih (time slot) poteka podatkovna
in govorna komunikacija šifrirano ali pa tudi ne, odvisno od nastavitev. To je v praksi
pomenilo kar nekaj težav…
Da bi bolje razumeli kriptografske mehanizme, naj na hitro omenimo kako deluje šifriranje
radijske vmesnika s TEA algoritmom. Za primer bomo vzeli šifriranje v CLASS-u 3, torej
dinamično (DCK/CCK31
). Na radijskih terminalnih napravah se nahaja eden izmed štirih
algoritmov za šifriranje radijskega vmesnika (TEA algoritmi). Enak algoritem mora biti
implementiran tudi v omrežni infrastrukturi baznih postaj. Ko imata tako bazna postaja, kot
radijski terminal enak algoritem za šifriranje radijskega vmesnika, se ves postopek šifriranja
začne z avtentikacijo. Bazna postaja od radijskega terminala zahteva avtentikacijo, kot smo
to že lahko spoznali, z RES in RAND spremenljivkami preveri pravilnost avtentikacijskega
ključa in v kolikor radijski terminal uspešno opravi postopek avtentikacije, ima radijski
31
Common Cipher Key
21
terminal veljaven izpeljan DCK32
ključ. Enak DCK ključ mora biti izpeljan tudi na strani
omrežja.
DCK ključ je v uporabi predvsem za šifriranje v smeri od bazne postaje do radijskih
terminalov, torej UPLINK-a. Govorna in podatkovna komunikacija je šifrirana s CCK ključem,
ki je skupinski ključ za šifriranje v smeri od bazne postaje do radijskih terminalov, torej
DOWNLINK-a. CCK ključ generira omrežje in ga na podlagi uspešne avtentikacije pošlje
radijskemu terminalu šifriranega z DCK ključem.
Omrežna infrastruktura preko SYSINFO BROADCAST razpršeno pošilja CCK-id vsem radijskim
terminalom, registriranim na določenem LA. Če radijski terminal uspešno opravi proces
avtentikacije ima tako veljaven DCK ključ s katerim dešifrira ključ CCK, ki ga nadalje uporabi
za dešifriranje prometnih podatkov, ki jih dobi od bazne postaje (VOICE + DATA).
CCK ključ je mogoče na zahtevo radijskega terminala (U-OTAR CCK DEMAND) distribuirati
tudi preko mehanizma OTAR33
. V tem primeru se distribuira (D-OTAR CCK Provide) SCCK34
,
ki je na strani omrežne infrastrukture šifriran z algoritmom TA31, vsebuje pa CCK-id, DCK in
CCK. Redundanca se na strani radijskega terminala preveri z algoritmom TA32.
Vsi prometni podatki, ki se prenašajo po fizičnih vodih in mikrovalovnih povezavah od bazne
postaje do stikalne oziroma centralne infrastrukture, niso zaščitene s šifriranjem radijskega
vmesnika. Za to se po ETSI standardih uporablja šifriranje točka – točka (End-to-End
Encryption), torej šifriranje prometnih podatkov po celotni prometni poti od dispečerske
centrale preko vozlišča, stikalne infrastrukture, baznih postaj in na koncu do samih radijskih
terminalov.
Pri tem naj dodamo, da smo na podlagi prometnih podatkov ugotovili, se pri nas ne uporablja
šifriranja točka – točka, kar že predstavlja varnostno tveganje, da bi nekdo prestrezal
nešifrirane komunikacije, nekje med bazno postajo in stikalno/centralno infrastrukturo.
32
Derived Cipher Key
33
Over The Air Re-keying
34
Sealed Common Cipher Key
22
Kot vidimo na zgornji sliki, na MAC-RESOURCE PDU zasledimo identifikator stanja "encryption
mode: 2", kar pomeni, da so prometni podatki šifrirani. Vidimo lahko, da je ISSI osem mestna
številka 12971394, ki je že na prvi pogled drugačna kot ostale, načeloma sedem mestne ISSI
številke. Gre za xESI35
entiteto, šifrirano obliko ISSI ali GSSI številke.
Spodnja slika prikazuje proces šifriranja ISSI številke. Enak proces oziroma algoritem se
uporablja tudi za šifriranje GSSI številke. Kot lahko vidimo, ima algoritem TA61 za vhod (ang.
input) CCK ali SCK ključ in xSSI številko, za izhod (ang. output) pa xESI entiteto.
Vir: ETSI EN 300 392-7
35
Encrypted Short Identity
23
V Wiresharku tako vidimo xESI entitete, za katere pa na prvi pogled ne vemo ali gre za GSSI
ali ISSI. S časoma, ko malce bolj opazujemo prometne podatke in spremljamo tudi šifriran
promet, ugotovimo, katera xESI entiteta je lahko GSSI, celo več, ugotovimo lahko za katero
GSSI številko gre. Slednje ugotovimo tako, da spremljamo časovne reže (ang. time slot)
MCCH36
kanala, na katerem so tudi štiri časovne reže (ang. time slots). Govorni promet,
četudi šifriran se prenaša preko MCCH kanala, zato lahko vidimo kdaj se prenaša govorni
promet preko časovnih rež. S podrobnejšo analizo GSSI številk (registracije, de-registracije,
avtentikacije, roaming) in vnaprejšnjim poznavanjem intenzitete zasedenosti določene
grupe, lahko pridemo do ugotovitve katera GSSI številka je neka xESI entiteta.
In zdaj najbolj zanimivi del. Marca, leta 2013 smo na podlagi šifriranih prometnih podatkov
iz bazne postaje EMONA (LA37
: 160) naredili seznam xESI entitet. Uredili smo ga tako, da smo
ločili xESI entitete, za katere smo menili da pripadajo GSSI številkam.
Avgusta letos, smo ponovno opravili podrobno analizo šifriranih prometnih podatkov na bazni
postaji EMONA in ugotovili, da se xESI entitete niso spremenile. Če ponovno pogledamo
zgornjo sliko lahko ugotovimo, da gre za GSSI številko, ki je logično vedno enaka, da pa je
tudi drugi vhod, CCK ključ vedno enak, saj se xESI spremeni takoj, ko se spremeni vhod,
bodisi xSSI ali CCK ključ. Tako ugotovimo, da je CCK ključ za omenjen LA enak že več kot
leto dni.
Slednja lastnost omrežja pomeni varnostno ranljivost, saj omogoča napadalcu, da z
mavričnimi tabelami (ang. rainbow tables), podobno kot pri GSM (algoritem A5/1) ali
napadom z grobo silo (ang. brute force) v doglednem času zlomi CCK ključ.
Že na začetku smo omenili, da smo zaznali težave z dostavo ključev, saj smo lahko velikokrat
poslušali govorni promet Policije, ki naj bi delovala v šifriranem režimu, kar prikazuje tudi
spodnja slika. Do tega je po našem mnenju prišlo zaradi težav pri avtentikacijah, ki so lahko
posledica težav na strani radijskih terminalov ali omrežne infrastrukture. Možnosti je lahko
več, vsekakor pa je najbolj verjetna ta, da bazne postaje niso uspešno distribuirale CCK
ključa, ker na MAC-RESOURCE PDU ni bilo pravilnega identifikatorja CCK-id ali pa radijski
terminal ni imel veljavnega DCK ključa, da bi dešifriral CCK ključ.
Na sliki vidimo da poteka govorni promet D-SETUP, z dodeljenim USAGE markerjem (22), na
grupi GSSI številke 6100003 (POLICIJA, PU LJ, LJ3). V PDU MAC-RESOURCE identifikatorju
lahko vidimo, da gre za nešifriran govorni promet (encryption mode: 0).
36
Main Control CHannel
37
Local Area
24
Naj dodamo, da so kljub uporabi šifriranja radijskega vmesnika s TEA1 algoritmom in
dinamičnimi izpeljanimi ključi (DCK, CCK), ne šifrirajo vsi prometni podatki. Po vsej
verjetnosti prav zaradi specifičnega omrežja, ki deluje tako v načinu brez šifriranja
(CLASS 1) kot tudi v šifriranem načinu (CLASS 3), ostane nešifriran del signalizacije na PDU
MAC / LLC sloju. Tako je razumljivo, zakaj je mogoče videti vse registracije, avtentikacije
in lokacijske posodobitve (ang. roaming) radijskih terminalov, ki bi morali imeti šifrirano
tudi signalizacijo.
Kar pa s stališča varnostne ranljivosti pomeni, da je s časoma možno ugotoviti katera ISSI
številka pripada kateri policijski patrulji/enoti in kateri GSSI grupi, katere ISSI številke se
pojavljajo na nekem območju, kdaj se na območju bazne postaje dogaja nekaj "zanimivega"
itd.
Tako smo lahko tudi mi dokaj hitro ugotovili katere grupe (GSSI) številke se pojavljajo na
nekem območju, katere ISSI številke ter zaradi težav s šifriranjem prometnih podatkov
DOWNLINK-a (CCK ključa) večkrat ujeli kakšno govorno in podatkovno zanimivost, ki bi sicer
morala biti šifrirana.
25
5 GRAFIČNI VMESNIK TETRA MONITOR
Avtor, ki ne želi biti javno imenovan, je v C/C++ kodi napisal program TETRA Monitor,
namenjen le naši skupni interni uporabi, ki smo ga tudi uporabili pri sami varnostni analizi.
TETRA Monitor je grafični vmesnik, ki prejema dekodiran signal od izvornega programa
osmosdr-tetra_demod_fft.py. Prikazuje registracije, avtentikacije, individualne in skupinske
klice (čas klica, dolžina klica, pošiljatelja ISSI/GSSI in naslovnika ISSI/GSSI klica) SDS in
statusna sporočila, aktivnost in zasedenost časovnih rež (prva časovna reža rumena –
aktivnost MCCH, govorni promet CLASS 3/CLEAR, rumena na preostalih treh časovnih režah
– RELEASE/TIMEOUT govornega prometa, prav tako se pri govornem prometu izpiše dodeljena
številka USAGE markerja), stopnjo signala, ID bazne postaje – LA, broadcast (MCC, MNC,
identifikatorje - CLASS 1,2,3, GCK, auth req) in omogoča pregled nad grupami – GSSI
številkami, ki jih je mogoče shraniti v SQLite bazo.
Program samodejno shranjuje govorne posnetke ter podatkovne loge BCCH kanala.
Samodejno se logirajo tudi vse registracije, avtentikacije in lokacijske posodobitve. TETRA
Monitor mam je tako bistveno olajšal pregledovanje najbolj zanimivih prometih podatkov.
BROADCAST SYSINFO bazne postaje LJ-EMONA LA160 nam pove, da ni zahtevana obvezna
avtentikacija, da je podprt CLASS 1 in CLASS 3. Šifriranje z GCK38
ključem ni podprto.
38
Group Cipher Key
26
Spodnja slika prikazuje registracije, lokacijske posodobitve (ROAMING) in avtentikacije
radijskih terminalov. V prvem stolpcu vidimo ISSI številke, v drugem stolpcu imamo označene
ATT - vrednost 0 je v primeru, da radijski terminal prejme D-LOCATION-UPDATE-ACCEPT kar
pomeni lokacijsko posodobitev radijskega terminala (ROAMING), vrednost 1 pa je v primeru,
če je radijski terminal na novo registriran v omrežje, MAC PDU tip ITSI ATTACH (npr. ko se
radijski terminal na novo registrira v omrežje).
Sledi stolpec avtentikaciji – vrednost 0 v primeru, da radijski terminal prejme D-LOCATION-
UPDATE-ACCEPT, kar pomeni lokacijsko posodobitev radijskega terminala (ROAMING) ali ATT
v primeru, da radijski terminal nima vključene avtentikacije. Vrednost 1 je, če BS zahteva
avtentikacijo (D-AUTHENTICATION-DEMAND).
Četrti stolpec prikazuje TEI request flag v procesu avtentikacije – vrednost 0 če ni zahtevan,
1 če je zahtevan (TEI req / zahteva se zaradi uporabe CLASS-a 1 in 3 ne uporablja, saj se to
odsvetuje v omrežjih, ki delujejo tudi ali samo v nešifriranem načinu).
Sledi stolpec, ki prikazuje GSSI (kot smo že omenili, je prikaz GSSI odvisen od proizvajalca
terminalih naprav. Prikazan je le, če je preko U-LOCATION-UPDATE-DEMAND pripet na MAC
PDU.
Zadnja dva stolpca pa prikazujeta prvo zaznavo ISSI številke (registracija, avtentikacija ali
ROAMING) ter zadnjo spremembo (registracija, avtentikacija ali ROAMING).
27
TETRA Monitor prikazuje skupinske in individualne klice. V prvem stolpcu je izvorna ISSI
številka, v drugem pa naslovna (največkrat je to kar GSSI). Tretji stolpec prikazuje čas klica,
četrti identifikator klica, peti številko (2-4) časovne reže, na kateri je potekal govorni
promet, šesti pa številko USAGE markerja, ki je bil dodeljen individualnem ali skupinskem
klicu. Prva slika med drugim prikazuje tudi govorni promet, ki naj bi bil šifriran, vendar kot
vidimo, ni bil šifriran in tako smo lahko poslušali govorne komunikacije Policije.
28
Spodnji dve sliki prikazujeta poslana SDS in statusna sporočila.
29
6 UGTOVITVE
Z varnostno analizo slovenskega TETRA omrežja smo dokazali, da je mogoče signal
dekodirati, prometne podatke pa analizirati. Videli smo lahko kako izgledajo registracije,
avtentikacije, SDS in statusna sporočila, tako tista nešifrirana kot tudi tista, ki naj bi bila
šifrirana. Na začetku varnostne analize smo zaznali registracije radijskih terminalov brez
predhodne avtentikacije. Poslušali smo lahko skupinske in individualne pogovore, tako
nešifriranega govornega prometa kot tudi govorni promet, ki naj bi bil šifriran. Ugotovili
smo, da se pri CLASS-u 1 uporablja le enostranska avtentikacija, kar predstavlja varnostno
tveganje, saj bi lahko nekdo npr. z USRP napravo na GNU radio platformi in znanjem razvil
lažno bazno postajo, podobno kot IMSI-Cather pri GSM omrežju. Prav tako smo zaznali napake
pri avtentikacijah ter distribucijo CCK ključa ali dešifriranje tega pri šifriranem prometu. Na
podlagi analize šifriranih prometnih podatkov smo ugotovili, da se CCK ključ ne spreminja,
kar predstavlja varnostno tveganje v primeru napada CCK ključa z grobo silo ali mavričnimi
tabelami. Težave smo zaznali na določenih baznih postajah, ki so oddajale povsem napačne
MAC PDU parametre in identifikatorje (BS LJ-ŠIŠENSKI HRIB, LA113). Ugotovili smo še druge
varnostne ranljivosti, ki jih zaradi morebitnega ogrožanja nacionalne varnosti ne bomo javno
izpostavljali.
Poudarjamo, da bi bilo smiselno opraviti še dodatno varnostno analizo, predvsem zato, da
se razjasni ali je slovensko TETRA omrežje posebnost ali pa obstajajo varnostne ranljivosti
že v samih osnovnih ETSI standardih.
Ključnega pomena v TETRA omrežju je varnost, saj je to glavni atribut, zaradi katerega je
bil takšen sistem sploh zasnovan. Vsekakor je potrebno razumeti, da samo delovanje v
digitalnem načinu še ne zagotavlja varnih komunikaciji. Ker so uporabniki TETRA omrežja
službe, ki zagotavljajo javno in nacionalno varnost države, je potrebno v sistem vložiti več
sredstev (tako finančnih kot strokovno-kadrovskih), predvsem za namen varnostnih
mehanizmov, ki bi preprečevali aktivne in pasivne napade ter druge varnostne incidente.
Varnost govornih in podatkovnih komunikaciji je odvisna predvsem od pravilno
implementiranih varnostnih mehanizmov – obvezna medsebojna avtentikacija, šifriranje
radijskega vmesnika in šifriranje celotne radijske poti točka – točka. Varnostni mehanizmi
pa lahko delujejo le, če je vsa omrežna oprema kompatibilna med seboj. Prav tako bi bilo
smiselno razmišljati o ločenih načinih delovanja (CLASS 1, CLASS 3) ali vklopu šifriranega
načina za vse govorne in podatkovne komunikacije (ne razumemo, zakaj to pristojni niso
storili že v preteklosti, saj je bil pri vseh javnih razpisih in javnih naročilih TETRA opreme
naveden pogoj, da morajo radijski terminali imeti algoritem TEA1 in tako delovati v načinu
CLASS 1 ali CLASS 3), saj bi to pomenilo bistveno manjšo možnost, da bi prihajalo do težav
30
z distribucijo šifrirnih ključev. Prav tako bi s tem onemogočili analizo prometnih podatkov
signalizacije.
Menimo, da bi bilo potrebno baznim postajam, v kolikor to možnost dopuščajo, nastaviti
obvezno medsebojno avtentikacijo (ang. Mandatory Mutual Authentication). Če bi bazne
postaje delovale le v enem varnostnem razredu (CLASS 3, DCK/CCK/GCK) bi bilo smiselno, v
kolikor bazne postaje to možnost dopuščajo, omejiti registracije v omrežje le na radijske
terminale, ki imajo enak algoritem za šifriranje radijskega vmesnika kot omrežna
infrastruktura. Prav tako bi lahko, če bi bazne postaje delovale le v šifriranem načinu (CLASS
3), lahko vključili možnost "TEI request flag" in tako še dodatno zavarovali omrežje pred
vdori.
Smiselno bi bilo razmišljati tudi o prehodu iz šifriranja radijskega vmesnika z algoritmom
TEA1 na TEA2, saj je TEA2 algoritem, za katerega veljajo posebni restriktivni ukrepi in
distribucijski protokol, kar seveda zmanjšuje možnost, da bi lahko bil algoritem javno razkrit
oziroma da bi bila uspešno opravljena kriptoanaliza algoritma. To je še posebno smiselno
storiti, če bodo tudi ostale sosednje države prešle na TEA2, saj bi bile potemtakem možnosti
za gostovanje tudi v drugih TETRA omrežjih.
Nujno potrebno se nam zdi zavarovati mikrovalovne povezave in šifrirati prometne podatke,
ki se prenašajo preko mikrovalnovnih-optičnih povezav.
Za konec objavljamo še preglednico nekaterih uporabnikov TETRA omrežja v Slovenji iz
katere je razvidno, da le Policija bolj ali manj uspešno uporablja šifriranje radijskega
vmesnika s TEA1 algoritmom.
SLUŽBA / ORGANIZACIJA ISSI GSSI CLASS 1 / 3
MNZ - POLICIJA 6xxxxxx 6xxxxxx 3
MORS - VOJSKA 199xxxx 1xxxxxx 1
MORS - VP 200xxxx 29990xx 1
PRAVOSODJE 305xxxx 305xxxx 1
REDARSKE SLUŽBE 92xxxxx 9000xxx 1
CARINSKA UPRAVA / FURS 7000xxx 71990xx 1
PROTOKOL VLADE 40000xx 4000901 1
DARS 93xxxxx 90005xx 1
31
7 VIRI
European Telecommunications Standards Institute, (2009). ETSI EN 300 392-1. Pridobljeno
na: http://www.etsi.org/deliver/etsi_en/30030 0_300399/30039201/01.04.01_60/en_
30039201v010401p.pdf (27. 5. 2014)
European Telecommunications Standards Institute, (2009). ETSI EN 300 392-7. Pridobljeno
na: http://www.etsi.org/deliver/etsi_en/300300_300399/30039207/03.01.01_60/en_
30039207v030101p.pdf (27. 5. 2014)
MIBO Komunikacije, (2011). Študija uvajanja sistemov radijskih zvez TETRA.
Ministrstvo za notranje zadeve RS, (2010). Razpisna dokumentacija. Pridobljeno na:
http://www.mnz.gov.si/fileadmin/mnz.gov.si/pageuploads/JAVNA_NAROCILA/1458p-10-
RD-projektna_dok-TETRA.doc (27. 5. 2014)
Ministrstvo za notranje zadeve RS, (2013). JAVNI POZIV PROMOTORJEM K ODDAJI VLOGE O
ZAINTERESIRANOSTI ZA IZVEDBO PROJEKTA JAVNO-ZASEBNEGA PARTNERSTVA. Pridobljeno
na: http://www.mnz.gov.si/fileadmin/mnz.gov.si/pageuploads/JAVNA_NAROCILA/LETO_
2013/1200-13-jzp_POZIV_promotorjem_razpis_TETRA.doc (27. 5. 2014)
Norwegian University of Science and Technology, Department of Telematics, (2013). Security
Analysis of TETRA. Pridobljeno na: http://www.diva-portal.org/smash/get/diva2:656471/
FULLTEXT01.pdf (27. 5. 2014)
Fakulteta za varnostne vede, Univerze v Mariboru (2012). Operativno - komunikacijski center
policijske uprave je pomembna operativna služba v policiji. Pridobljeno na:
http://www.fvv.uni-mb.si/DV2012/zbornik/policijska_dejavnost/Gradisnik_Ristic.pdf (27.
5. 2014)

More Related Content

Featured

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Featured (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Varnostna analiza slovenskega digitalnega radijskega omrežja TETRA

  • 1. Varnostna analiza DIGITALNEGA RADIJSKEGA OMREŽJA TETRA Dejan ORNIG dejan.ornig@gmail.com Avgust, 2014 Ključne besede: TETRA, Osmocom, RTL-SDR, omrežje, varnost, analiza, Wireshark.
  • 2. 2 Namen V letu 2012 so Jaka Hudoklin, Matej Kovačič in Klemen Rupnik na Slo-Tech spletni strani objavili varnostno analizo GSM omrežja, v kateri so ugotovili številne varnostne ranljivosti GSM omrežja, ter na ta način opozorili pristojne, da se varnostne ranljivosti odpravijo in tako zagotovi višja stopnja varnosti za uporabnike. Po vzoru tovrstne varnostne analize smo v letu 2013 začeli raziskovati delovanje TETRA omrežja. Naš namen je opraviti varnostno analizo digitalnega radijskega omrežja TETRA, ter tako širšo javnost seznaniti s splošnimi ugotovitvami, strokovno javnost pa opozoriti na varnostne ranljivosti in napake, ki bi lahko povzročile mnoge težave, lahko tudi delni ali popolni izpad omrežja. V strokovnih krogih velja prepričanje, da je TETRA omrežje zaradi digitalnega delovanja varno, da je onemogočeno prisluškovanje individualnim pogovorov ter skupinskih pogovorov na grupah, branje SDS1 in statusnih sporočil, itd. Prav tako nihče v strokovnih krogih ne dvomi v varnostne ranljivosti varnostnih mehanizmov, kot sta avtentikacija in šifriranje radijskega vmesnika s šifrirnim algoritmom oziroma dinamičnimi, izpeljanimi ključi. V prispevku smo se podrobneje posvetili trditvam stroke, ter dokazali povsem nasprotno. Ugotovili smo, da je možno dekodirati sam signal, ga analizirati, pregledovati prometne podatke, brati SDS in statusna sporočila, poslušati individualne pogovore in pogovore na grupah, ter ugotovili druge ranljivosti samega sistema, kot so težave s šifrirnimi algoritmi, oziroma distribucijo ključev, težave pri avtentikaciji, baznih postajah, itd. Naj pri tem poudarimo, da varnostna analiza, ki smo jo opravili na slovenskem TETRA omrežju, nikakor ni bila trivialna, saj smo za izvedbo te morali spremeniti del osmocom kode in spisati nekaj nove, tako da je ponovitev opisanih postopkov za nekoga brez predhodnega znanja, zelo težko izvedljiva. Ena izmed varnostnih ranljivosti TETRA omrežja so po našem raziskovanju tudi mikrovalovne povezave, ki delujejo na frekvenci 1.4 GHz in 18 GHz, problem teh pa je pravzaprav ta, da podatki, ki se prenašajo preko mikrovalovnih povezav, niso šifrirani. Z ustrezno opremo, znanjem in vedenjem, kje potekajo optične poti mikrovalovnih povezav, bi lahko prišli do popolnoma vseh podatkov, ki se prenašajo preko TETRA omrežja. S tem se v tej varnostni analizi ne bomo posebej ukvarjali, bomo pa opisali delovanje omrežja na nivoju uporabnikov, torej radijskih terminalov in baznih postaj. 1 Short Data Service
  • 3. 3 Prav tako se v tej varnostni analizi ne bomo ukvarjali s tehničnim delom radijskih terminalov, kljub temu da je verjetno največja varnostna ranljivost prav kloniranje radijskih terminalov, natančneje kloniranje avtentikacijskega (K) ključa, saj za takšen možni hekerski napad po ETSI2 standardih, ne obstaja nikakršni varnostni mehanizem. Poudarjamo, da smo pri raziskovanju slovenskega TETRA omrežja in sami varnostni analizi, uporabili le legalno dovoljena tehnična sredstva in metode, ter da nismo posegali v delovanje samega sistema. Varnostna analiza je nastala izključno na podlagi zajemanja in analiziranja prometnih podatkov v smeri BS3 -> MS4 , torej DOWNLINK-a. Prometnih podatkov UPLINK-a zaenkrat z osmocom programsko in strojno opremo ni mogoče zajemati. 1 O TETRI TETRA5 ali prizemni snopovni radio je digitalni radijski komunikacijski sistem, ki ga za svojo komunikacijo uporabljajo službe nacionalne varnosti EU ter druge službe, ki zagotavljajo javne storitve. Digitalni radijski sistem TETRA je bil s standardom Evropskega inštituta za telekomunikacije ETSI zasnovan leta 1995. TETRA omrežje se je pri nas začelo graditi leta 2001. Uporabniki omrežja v Slovenji, teh je do zdaj preko 7.000, so: MNZ - Policija, Ministrstvo za obrambo - SV, VP, Slovensko obveščevalno - varnostna agencija (SOVA), Ministrstvo za pravosodje - Zavodi za prestajanje kazenskih sankciji, mestna redarstva, Družba za avtoceste RS, Carinska / Finančna uprava RS, protokol Vlade RS itd. Vse do danes je pokritost omrežja na območju Slovenije 70 %, v prihodnjih letih se tako načrtuje še dodatne postavitve baznih postaj, ki bo povečala odstotek pokritosti s signalom po državi. Poudariti je potrebno, da gre za zelo drago omrežje, ki je državo stalo že na desetine milijonov evrov. Drage so ne le investicije in nakup nove opreme, temveč tudi dnevno vzdrževanje omrežne infrastrukture. Glavni upravljalec TETRA omrežja je tako Ministrstvo za notranje zadeve. MNZ ima podpisano pogodbo o vzdrževanju s podjetjem Santera, d.o.o., s sedežem na Industrijski cesti 9, Grosuplje, ki vzdržuje infrastrukturo baznih postaj, ter nadzoruje delovanje samega 2 European Telecommunications Standards Institute 3 Base Station 4 Mobile Station 5 Terrestrial Trunked Radio
  • 4. 4 omrežja. MNZ v vlogi upravljalca omrežja skrbi za jedro samega sistema in uporabniški ter varnostni management. Pred začetkom varnostne analize digitalnega radijskega omrežja TETRA v Sloveniji, smo najprej pregledali javno dostopno dokumentacijo, predvsem dokumentacijo o javnih naročilih opreme in že iz dokumentacije ugotovili nekatere tehnične lastnosti samega omrežja. Iz tehnične dokumentacije lahko razberemo, da TETRA omrežje pri nas deluje na frekvenčnem pasu 380 – 430 Mhz (deluje lahko tudi na drugih frekvenčnih območjih), v dveh načinih delovanja: DMO6 direkten način brez omrežja med radijski terminali in TMO7 omrežni način. V omrežnem načinu komunikacija poteka med uporabniki in samim dispečerskim sistemom preko baznih postaj, ki so del TETRA infrastrukture. Infrastrukturo sestavljajo radijski terminali (ročni, mobilni) in bazne postaje, ki so med seboj fizično povezane s stikalnim delom in centralnim sistemom, ta pa spet preko mikrovalovnih povezav vodi do dislociranih baznih postaj oziroma rezervnega centralnega sistema. Iz razpisne dokumentacije (MNZ, 2010) je razvidno, da se za dostop do omrežja obvezno uporablja temeljni varnostni mehanizem – avtentikacija. Med drugim smo na podlagi tehničnih dokumentaciji lahko sklepali, da je določena komunikacija šifrirana s šifrirnim algoritmom TEA1, saj je pri skoraj vseh javnih naročilih JU v tehnični specifikaciji bil naveden pogoj, da mora terminalna in omrežna oprema delovati v režimu CLASS 1 in CLASS 3, kar pomeni, da so nekateri prometni podatki šifrirani, nekateri pa ne. Kaj to pomeni v praksi bomo opisali v nadaljevanju. TETRA je po samem delovanju zelo podobno GSM, vendar je med njima kar nekaj razlik, v nekaterih pogledih je TETRA omrežje bolj kompleksnejše, predvsem pri varnostnih mehanizmih, ki pa so, poudarjamo, opcijski. Tako je mogoče uporabljati obvezno medsebojno avtentikacijo, šifriranje radijskega vmesnika, šifriranje od točke do točke z AES algoritmom ali pa nič od navedenega. Vse je odvisno od zahtevnosti in potreb uporabnikov ter seveda od finančnih sredstev, saj vsi varnostni mehanizmi, ki so v TETRA omrežju opcijski, stanejo. Več o delovanju omrežja na različnih nivojih, bomo predstavili po ločenih sklopih. 6 Direct Mode 7 Trunked Mode
  • 5. 5 2 PRIPRAVA Pred začetkom varnostne analize in raziskovanjem TETRA omrežja, smo najprej pripravili strojno in programsko opremo. V ta namen smo uporabili: - RTL-SDR (DVB-T znamke Terratec TStick+, s čipom Elonics E4000) - ANTENA (priložena) - OS LINUX (UBUNTU 12.04 LTS) - osmo-tetra (http://tetra.osmocom.org/trac/wiki/osmo-tetra) - Wireshark (http://www.wireshark.org/) 3 DEKODIRANJE SIGNALA Če smo želeli analizirati prometne podatke, ki se prenašajo po TETRA omrežju, smo pred tem morali dekodirati digitalni signal. Od začetka razvoja omrežja, leta 1995 pa vse do leta 2010 je veljalo, da je za dekodiranje TETRA signala potrebna zelo draga oprema. Naprave, ki so omogočale takšno dekodiranje, predvsem za namen testiranja delovanja omrežja, so stale deset tisoč evrov in več. To pa je s prihodom USRP8 naprav postalo dostopnejše pa tudi cenejše. USRP naprava je univerzalna naprava za sprejem, pa tudi oddajo vseh mogočih radijskih signalov, žal pa je zaenkrat sama naprava še vedno relativno draga (od 1000 do 1500 evrov), zato so se pojavile bistveno cenejše alternative, ki prav tako dobro opravijo svojo vlogo - SDR ali odprtokodni programski radio je strojna in programska oprema, ki se jo 8 Universal Software Radio Peripheral
  • 6. 6 lahko prav tako uporabi za sprejem katerega koli radijskega signala. S takšno opremo lahko sprejemamo tudi GSM, GPRS, AP25, DMR in še mnoge druge radijske signale. SDR je lahko tako navaden DVB-T sprejemnik, ki ni nič drugega kot USB ključek za sprejemanje TV digitalnega signala. V ta namen smo kupili DVB-T (RTL2832U) sprejemnik, znamke Terratec TStick+, s čipom Elonics E4000, ki nas je stal 20 evrov. Da smo lahko dekodirali TETRA signal z modulacijo π/4-DQPSK, je bila potrebna le programska koda, orodje, ki je sposobno dekodirati prejeti signal preko SDR naprave. Osmocom, skupina hekerjev, katerih prvotni namen je raziskovanje GSM omrežja, je prav v letu 2011 objavila odprtokodno rešitev osmo-tetra, ki deluje na LINUX platformi. osmo-tetra (vir: http://tetra.osmocom.org/trac/wiki/osmo-tetra) Osmo-tetra vsebuje različne skripte in programe za dekodiranje TETRA signala na različnih slojih. Osnovna odprta javno dostopna koda je tako sposobna dekodirati TETRA signal DOWNLINK-a bazne postaje. Kot smo že uvodoma zapisali, varnostna analiza temelji na lastnem pisanju manjkajoče in popravljanju obstoječe osmocom kode. Za podrobnejšo analizo prometnih podatkov in kasneje tudi poslušanje samega govornega prometa je bilo potrebnega veliko dela, popravkov, predvsem bug-ov in implementaciji nekaterih rešitev. Naj na kratko povzamemo nekatere funkcije osnovne kode v osmo-tetra. ~/sdr/osmo-tetra/src/demod/python/tetra-demod.py Phython skripta, namenjena za uvoz I/Q vira, ki ustvari "cfile". ~/sdr/osmo-tetra/src/float_to_bits Programska koda za uvoz dekodiranih bitov. ~/sdr/osmo-tetra/src/demod/python/osmosdr-tetra_demod_fft.py Phython skripta, namenjena uvozu vira iz SDR naprave.
  • 7. 7 ~/sdr/osmo-tetra/src/tetra-rx Osredni program, ki uvozi iz datoteke "file.bits" bite podatkov in jih nato pošlje bodisi konzoli ali preko GSMTAP protokola Wiresharku, programu za analizo protokolov in prometnih podatkov. Osmo-tetra lahko uporabljamo za časovno določen zajem signala, dekodiranja in poznejšega analiziranja prometnih podatkov ali pa kar zajemanje "real time" torej dekodiranje in analiziranje trenutnih prometnih podatkov. Imeli smo strojno opremo in javno dostopno odprtokodno programsko rešitev, ki pa jo je bilo potrebno ustrezno pripraviti. Potrebno je bilo namestiti mnogo različnih programskih paketov, ki so potrebni za delovanje osmo-tetra programske kode. Začeli smo z nameščanjem odprtokodnega programskega ogrodja GNU Radio, v sklopu katerega je tudi RTL-SDR programska oprema, ki je potrebna za dekodiranje signala preko SDR programske naprave. GNU Radio je programsko ogrodje, ki vsebuje različna orodja, dekoderje, filtre in druge pripomočke za dekodiranje in analiziranje različnih radijskih signalov. Po uspešno nameščenem GNU Radio ogrodju, smo namestili različne knjižnice in pakete, brez katerih osmo-tetra ne more delovati. Po mučnem nameščanju in sprotnem reševanju težav z različnimi gonilniki in datotekami, smo le uspeli usposobiti strojno opremo za delovanje. Na začetku je vse delovalo v zelo primitivnem okolju, z vpisovanjem ukazov v ukazno konzolo, tako da je bilo potrebno nekaj prehodnega znanja v LINUX okolju. Pri vpisu ukaza: src$ ./demod/python/osmosdr-tetra_demod_fft.py -o /dev/stdout | ./float_to_bits /dev/stdin /dev/stdout | ./tetra-rx /dev/stdin se nam je odprl osmosdr-tetra_demod_fft.py, program, ki nam prikaže frekvenčni spekter. Postavimo se na frekvenčni spekter od 390 – 395 Mhz. Na frekvenčnem spektru opazimo več amplitud, ki predstavljajo bazne postaje. Amplitude lahko vidimo na spektru, izberemo pa lahko tudi prikaz spektra kanala.
  • 8. 8 Na frekvenčnem spektru 390 – 395 Mhz smo našli bazne postaje in si izbrali najbolj izraženo. Poudariti je potrebno, da so antene, ki so navadno priložene DVB-T sprejemnikom lahko problematične, še posebno če smo na območju, kjer je pokritost s TETRA signalom slaba. osmosdr-tetra_demod_fft.py Na frekvenčnemu spektru kliknemo najbolj izraženo amplitudo, torej bazno postajo, jo umerimo in če smo bili uspešni pri centriranju amplitude, bi morali v ukazni konzoli ujeti SYNC9 izbruhe (ang. BURST) BSCH10 (MAC11 -SYNC PDU12 ) in BNCH13 (SYSINFO PDU). Na sliki lahko vidimo, da smo na frekvenci DL 391. 91250 Mhz, UL 381.91250 Mhz, ujeli bazno postajo, ki ima MCC14 oznako 293 (Slovenija), ter MNC15 oznako 7, kar označuje ponudnika TETRA storitve. 9 Synchronization 10 Broadcast Synchronization Channel 11 Media Access Control 12 Protocol Data Unit 13 Broadcast Network Channel 14 Mobile Country Code 15 Mobile country code
  • 9. 9 Razberemo lahko nekaj osnovnih podatkov o omrežju (na voljo je kriptografska zaščita radijskega vmesnika, obvezna registracija, de-registracija, govorne in podatkovne storitve, itd.) 4 ANALIZA DEKODIRANEGA TETRA SIGNALA Dobili smo dekodiran TETRA signal bazne postaje. Dekodirane prometne podatke, ki smo jih "real-time" zajemali od bazne postaje, smo želeli videti v nekem smiselnem zaporedju. Da bi jih lahko podrobneje analizirali, smo se odločili, da uporabimo orodje Wireshark, ki je namenjeno analizi protokolov in prometnih podatkov. Osmo-tetra dekoder namreč pošilja prometne podatke po GSMTAP protokolu na localhost (127.0.0.1) Wiresharku, le-ta pa omogoča grafični prikaz zajetih prometnih podatkov, ki se pošiljajo po TETRA omrežju. Na voljo smo imeli Wiresharkov dissector, za dekodiranje TETRA prometnih podatkov, ki ga je napisala skupina razvijalcev na Pekinškem inštitutu za tehnologijo po ETSI standardu. Tako kot pri osmocom kodi, smo morali tudi za Wiresharkov dissector sami korigirati določene napake in dodati nekaj dodatnih funkciji za dekodiranje določenih prometnih podatkov. Ko smo imeli popravljeno osmocom kodo in dodelan Wiresharkov dissector, smo lahko "real- time" zajemali prometne podatke na različnih slojih: PHY16 , Lower MAC, Upper MAC, LLC17 , 16 Physical 17 Logical Link Control
  • 10. 10 MLE18 , CMCE19 in MM20 . Na Lower MAC sloju smo npr. z osmo-tetra dekoderjem in Wiresharkovim dissectorjem lahko dekodirali ACCESS-ASSIGN, SYNC, SYSINFO in RESOURCE. V pomoč razumevanju zajetih prometnih podatkov v Wiresharku nam je bila dokumentacija ETSI standardov, ki za vsak paketek do podrobnosti razloži funkcijo in vlogo. To je pomenilo poglobljen študij ETSI standardov. V Wiresharku smo tako lahko zasledili registracije, lokacijske posodobitve, avtentikacije, govorni in podatkovni promet ter seveda šifrirani promet. V ločenih sklopih bomo predstavili naše ugotovitve. Spodnja slika prikazuje broadcast SYNC izbruh BNCH, sub broadcast signaling kanala BCCH21 , ki ima privzeto ISSI22 številko: 16777215. Če poenostavimo BCCH oddaja signal radijskim terminalom, na podlagi katerega lahko identificirajo omrežje in se nanj tudi povežejo. Kot še lahko razberemo iz spodnje slike, broadcast prometni podatki niso šifrirani, kar jasno označuje identifikator na MAC-RESOURCE PDU (encryption mode: 0). 18 Mobile Link Entity 19 Circuit Mode Control Entity 20 Mobility Management 21 Broadcast Synchronization Channel 22 Individual Short Subscriber Identitiy
  • 11. 11 4.1 Registracija Vsak radijski terminal mora biti predhodno vpisan v posebnem imeniku registraciji, ki ga upravlja administrativni management. Imenik za vsak radijski terminal vsebuje unikatno TEI23 številko proizvajalca in identifikacijsko ISSI številko, ki mora biti unikatna in ki se jo sprogramira s programsko opremo proizvajalca radijskega terminala. ISSI številka predstavlja 24 bitov od skupno 48 bitov, ki so del ITSI24 identitete. Preostalih 24 bitov predstavljata MCC in MNC koda. Če ponazorimo proces registracije. Pri vklopu radijskega terminala, terminal s svojo ISSI številko pošlje zahtevo za registracijo bazni postaji (U-LOCATION-UPDATE-DEMAND) ki ima na MAC-RESOURCE PDU identifikator ITSI ATTACH. Bazna postaja, oziroma omrežna nadzorna infrastruktura preveri ali je radijski terminal z navedeno ISSI številko vpisan v bazo radijskih terminalov. Če je odgovor pritrdilen, bazna postaja registrira radijski terminal v omrežje (D-LOCATION-UPDATE-ACCEPT). V kolikor se uporablja ključni varnostni mehanizem – avtentikacija radijskega terminala, je pred samo registracijo nujen proces overitve z avtentikacijskim ključem, ki ga bomo razložili v nadaljevanju. Po uspešno opravljeni registraciji in predhodni avtentikaciji, lahko radijski terminal dostopa do določenih grup – številk GSSI25 . V nadzornem managementu se namreč določa tudi pravice posameznemu radijskemu terminalu, do katerih grup GSSI ima pravico dostopati. GSSI je 24 bitna identifikacijska številka grupe. Na začetku našega raziskovanja TETRA omrežja, nekje v drugi polovici leta 2013 smo ugotovili, da veliko radijskih terminalov, ki so delovali v režimu brez šifriranja radijskega vmesnika (CLASS 1), niso imeli vključene avtentikacije. Slednje je bilo mogoče ugotoviti tako, da smo v Wiresharku med prometnimi podatki MAC-RESOURCE PDU zasledili D-LOCATION-UPDATE-ACCEPT, ki je imel tip ITSI ATTACH, pred tem pa nismo zasledili avtentikacije (D-LOCATION-AUTHENTICATION-DEMAND), kar je pomenilo, da je bil radijski terminal registriran v omrežje brez predhodne avtentikacije. Teoretično bi se v omrežje lahko prijavil kdorkoli, ki bi poznal ISSI identifikacijsko številko, le imeti bi moral radijski terminal in programsko opremo za programiranje. Ugotovili smo tudi, da je bila ustaljena praksa predvsem v Policiji, ki sicer uporablja šifriranje radijskega vmesnika s šifrirnim algoritmom TEA1 in posledično tudi avtentikacijo, da so radijskim terminalom, ki so jih želeli izklopiti iz omrežja, le onemogočili avtentikacijo, ne pa tudi 23 TETRA Equipment Identity 24 Individual TETRA Subscriber Identitiy 25 Group Short Subscriber Identitiy
  • 12. 12 registracije. Tako bi teoretično lahko bila mogoča registracija radijskega terminala brez avtentikacije in s tem tudi prijava na vse določene grupe, do katere je imel radijski terminal s svojo ISSI številko dostop. Spodnja slika prikazuje registracijo, radijskega terminala po predhodni uspešni avtentikaciji z ISSI številko 6750452. Bazna postaja po predhodni uspešni avtentikaciji pošlje radijskemu terminalu D-LOCATION-UPDATE-ACCEPT, ki ima pod tip označen ITSI ATTACH, kar pomeni, da je bil radijski terminal uspešno registriran v omrežje. V MAC-RESOURCE PDU med D-LOCATION-UPDATE-ACCEPT (tip ATTACH ali ROAMING) lahko zasledimo tudi pripeto številko GSSI (ATTACH GSSI). Pri tem je zanimivo, da je prikaz GSSI številke odvisen od proizvajalca terminalih naprav (če je v MAC-RESOURCE PDU pripeta medtem, ko pošlje U-LOCATION-UPDATE-DEMAND). Na podlagi analize smo tako ugotovili, da so pripete le GSSI številke od proizvajalca Motorola. Nokia/EASD, Sapura in drugi, pa imajo očitno onemogočeno pripenjanje GSSI številke na MAC-RESOURCE PDU identifikatorju. Spodnja slika prikazuje pripeto GSSI številko 6750903, ki je bila vidna na MAC-RESOURCE PDU D-LOCATION-UPDATE-ACCEPT ISSI številke 6750452.
  • 13. 13 4.2 Avtentikacija Proces avtentikacije v TETRA omrežju je temeljni varnostni mehanizem od katerega so odvisni vsi nadaljnji varnostni mehanizmi. Za avtentikacijo se uporablja 128 bitno simetrično šifriranje na podlagi poziva-odziva (ang. challenge – RAND, response - RES) spremenljivk. Avtetikacija poteka med omrežno infrastrukturo, na katero je tudi priključen avtentikacijski center (Authentication Center – AuC) in radijskim terminalom, ki ima shranjen unikatni K ključ na posebnem zaščitenem čipu ali SIM kartici. Avtentikacijski center je strežnik, priključen na stikalno infrastrukturo, na katerem se prav tako nahaja enak unikatni avtentikacijski ključi (K), vezan na ISSI, kot na radijskem terminalu. K ključ se zaradi varnosti nikoli ne prenese preko omrežja, zato se za preverjanje avtentičnosti uporabijo štirje algoritmi TA11, TA12, TA21 in TA22, ki preverjajo ujemanje avtentikacijskega ključa z RES in RAND spremenljivkama. ETSI standard določa tri možne avtentikacije:  avtentikacija radijskega terminala omrežju,  medsebojna avtentikacija med omrežjem in radijskim terminalom,  obvezna medsebojna avtentikacija omrežja in radijskega terminala. Med analizo prometnih podatkov, ki se prenašajo po TETRA omrežju, smo tako opazili D-AUTHENTICATION-DEMAND, zahtevek bazne postaje, da se mora določen radijski terminal avtenticirati. Prestregli smo poziv, 80 bitno RAND SEED in 80 bitno RAND CHALLENGE spremenljivko, ki jo je poslala bazna postaja radijskemu terminalu. Ker nismo imeli ustrezne programske in strojne opreme, da bi analizirali tudi prometne podatke, ki se prenašajo preko UPLINK-a do bazne postaje, žal nismo mogli videti odziva (U-AUTHENTICATION-RESPONSE) radijskega terminala z RES spremenljivko. Spodnja slika prikazuje avtentikacijo radijskega terminala, s številko ISSI 3005715, ki se uspešno avtenticira omrežju, kar je razvidno iz odziva bazne postaje D-LOCATION- LOCATION-UPDATE-ACCEPT. V kolikor proces avtentikacije ne bi bil uspešen, bodi si zaradi napačnih spremenljivk RES, RAND in s tem tudi avtentikacijskega ključa, bi zasledili D-LOCATION-UPDATE-REJECT. Radijski terminal, ki bi prejel zavrnitev bazne postaje D- LOCATION-UPDATE-REJECT, vsaj po teoriji in ETSI standardih, se naj ne bi mogel registrirati v samo omrežje.
  • 14. 14 Pri opazovanju prometnih podatkov DOWNLINK-a smo ugotovili, da se v CLASS 1 uporablja le enostranska avtentikacija in sicer da se radijski terminal avtenticira omrežju, ne pa tudi obratno. Tako se uporabljata dva algoritma TA11 in TA12. Slednja lastnost pa lahko predstavlja varnostno tveganje pred lažnimi baznimi postajami, saj ni varnostnega mehanizma na strani radijskih terminalov, ki bi preverjal avtentičnost baznih postaj. Omenili smo že, da smo na začetku raziskovanja omrežja odkrili hudo varnostno ranljivost, ki je omogočala registracijo radijskih terminalov brez avtentikacije, kar je pomenilo, da bi lahko kdorkoli kloniral ISSI številko terminala in se brez težav prijavil na katerikoli GSSI. Varnostna ranljivost je bila odkrita tako pri organizacijah in službah, ki ne uporabljajo šifriranja radijskega vmesnika (CLASS 1) in v službah, ki so šifriranje uporabljale (CLASS 3), to sta po naših podatkih le Policija in SOVA. Tedaj je bila ustaljena praksa, da so operaterji na sistemu nadzorne infrastrukture le onemogočili avtentikacijo za določen radijski terminal, ki so ga želeli začasno onemogočiti. Prijava v omrežje bi lahko bila zaradi te napake mnogo lažja. Kljub tej napaki pa zaradi dodatnih varnostnih mehanizmov, ki so povezani z avtentikacijo, naj ne bi bilo mogoče poslušati pogovorov službam, ki delujejo v CLASS-u 3, saj so šifrirani z izpeljanimi, dinamičnimi ključi preko uspešne avtentikacije, o katerih nekoliko kasneje. Pri analizi prometnih podatkov smo ugotovili dve varnostni ranljivosti, najhujše tretje, v javni varnostni analizi ne bomo omenjali, saj bi lahko razkritje te varnostne ranljivosti pomenilo ogrožanje najbolj kritičnih komunikaciji v Sloveniji in s tem tudi ogrožanje nacionalne varnosti države.
  • 15. 15 Brez avtentikacije je torej mogoča prijava v samo omrežje, saj ETSI standardi ne določajo varnostnih mehanizmov za preprečevanje kloniranja ISSI številk. Registracija je uspešna, če je ISSI številka vpisana v imenik, bazo uporabnikov. V kolikor avtentikacija ni vključena, ni mogoče šifrirati prometa z dinamičnimi ključi, so ti izpeljani skozi uspešen postopek avtentikacije (DCK, CLASS 3). Lahko dodamo, da je naše omrežje nekoliko posebno, saj deluje tako varnostnem razredu 1 (CLASS 1, brez šifriranja) kot varnostnem razredu 3 (CLASS 3, šifriranje, izpeljani, dinamični ključi). To pomeni da bazne postaje in vsa omrežna infrastruktura deluje v obeh načinih, kar pa ni ravno najboljša varnostna pa tudi funkcionalna rešitev. 4.3 Govorni promet Na začetku smo spremljali le prometne podatke registraciji in avtentikaciji, a ko smo v Wiresharku zasledili D-SETUP, kar je pomenilo da se prenaša tudi govorni promet, smo se odločili, da si raziskovanje še malce bolj popestrimo. V ta namen smo morali spisati nekaj manjkajoče kode, popraviti nekaj bug-ov in narediti patch-e za osmo-tetra. Zanimivo je, da je ETSI javno objavil ACELP govorni kodek po standardu ETSI 300 395-2. Bilo ga je potrebno le implementirat v osmocom kodo. Pri tem smo imeli ne malo težav, ki smo jih sprotno in vztrajno reševali in po določenem času smo lahko že poslušali tako pogovore na grupah, kot tudi individualne pogovore, seveda tiste, ki so bili nešifrirani. Spodnja slika prikazuje govorni promet v Wiresharku.
  • 16. 16 Iz slike je razvidno, da gre za skupinski klic v režimu CLASS 1, brez šifriranja (encryption- mode: 0) na grupi GSSI številke 900006. ISSI številka uporabnika, ki v tem trenutku govori na grupi je 9200047 (calling-party-address-ssi). Uporabnik ISSI številke 9200047 pritisne PTT tipko za govor (U-SETUP), za kar bazna postaja najprej dodeli klicu USAGE marker (5), slednje namreč zagotavlja večjo zanesljivost klica in preprečuje motnje klica na istem časovnem kanalu hkrati. Nato bazna postaja dodeli prosti časovni kanal in govor se začne prenašati preko bazne postaje tudi na DOWNLINK-u (D-SETUP). Govorni promet se tako prenaša naslovniku (individualni klic) ali naslovnikom (skupinski klic – grupa) kar v Wiresharku vidimo kot D-SETUP. Trajanja klica označuje CALL- TX-GRANTED konec klica pa CALL-RELEASE, kar označuje tudi "TIMEOUT - T308" rezerviranega časa določenega skupinskega klica. Iz prometnih podatkov je tako razvidno kdo, kdaj, kam in koliko časa kliče, katera časovna reža je namenjena klicu, USAGE marker, identifikator klica, identifikator šifriranja (encrypted, clear) in še mnogo drugega. Omenili smo že, da je možno ne samo poslušanje govornega prometa skupinskih klicev, ampak tudi individualnih. Individualni klici so možni tako v TMO kot tudi v DMO načinu. V TMO načinu so lahko notranji (samo znotraj TETRA omrežja, med radijskimi terminali ali dispečersko infrastrukturo) ali zunanji (na druga omrežja, npr. GSM, stacionarno, IP, itd.) Opazili smo, da je storitev individualnih klicev že nekaj časa nedelujoča, oziroma jo, kot smo zasledili, uporablja le Policija.
  • 17. 17 4.4 Podatkovni promet (SDS, Stutus) Med nešifriranimi prometnimi podatki smo lahko zasledili tudi SDS26 sporočila, za katere lahko rečemo, da gre za podobno storitev kot SMS pri GSM. SDS sporočila se lahko preko TMO ali DMO omrežja pošilja na grupo GSSI, pri tem dobijo SDS sporočilo vsi, ki so pridruženi grupi ali pa individualno. Statusna sporočila imajo drugačno vlogo, saj gre za vnaprej določena, numerična sporočila, ki jasno določajo nek v naprej določen status uporabnika. Podobno kot pri GSM tudi TETRA uporablja servisno številko SDS centra, preko katerega se pošiljajo sporočila. Za pošiljanje SDS sporočil se uporablja CMCE27 protokol na tretjem krmilnem sloju. Pri analizi prometnih podatkov v Wiresharku smo zasledili D-SDS-DATA. SDS ali statusno sporočilo je nič drugega kot niz bitov, ki jih je bilo potrebno dekodirati, za kar smo kasneje uporabili tudi grafični vmesnik, TETRA Monitor, o katerem več v nadaljevanju. Med prometnimi podatki smo lahko pri določenih uporabnikih, službah lahko videli tudi LIP28 SDS sporočila. Spodnja slika prikazuje Wireshark, preko katerega smo na začetku analizirali prometne podatke. Vidimo lahko poslano SDS sporočilo (D-SDS-DATA) pošiljatelja ISSI številke 3005820 naslovniku ISSI številke 3005823. 26 Short Data Service 27 Circuit Mode Control Entity 28 Location Information Protocol
  • 18. 18 Ko smo osvojili nekaj znanja, smo dodali kodo, ki je dekodirala SDS in statusna sporočila ter jih takole prikazovala ukazni konzoli. Kot vidimo na sliki, je pošiljatelj z ISSI številko 3005820 poslal SDS sporočilo naslovniku z ISSI številko 3005823 z vsebino "SOBA 42". Dekodirali smo tudi statusno in SDS sporočilo naslovljenega na radijski terminal, ki naj bi deloval v šifriranem načinu delovanja (CLASS 3), vendar kot bomo lahko spoznali v naslednjem delu varnostne analize, ni vedno tako. Vidimo da je dispečerski ISSI (PU LJ) 6100001 poslal najprej statusno sporočilo radijskemu terminalu, ISSI številke 6109101, status 32462, hkrati pa tudi SDS sporočilo z vsebino "Uspesno ste se prijavili v patruljo G611. Vrsta patrulje je INTERVENCIJA. Stevilo clanov patrulje je 2". Ugotovimo lahko, da je poslano SDS sporočilo, povratno obvestilo o uspešni prijavi v sam sistem. Status, ki ga pošlje uporabnik radijskega terminala, se prikaže operaterju OKC, v aplikaciji TETRA Dispečer, kjer je prikazan klicni znak policista/patrulje s podatki o vrsti dela, številu policistov v patrulji, delovnem časom, delovnim statusom, specifični opremi, ter o vrsti in tipu vozila. (A. GRADIŠNIK, M. RISTIČ, 2012.)
  • 19. 19 4.5. Šifrirani promet Kot smo že omenili, smo lahko na podlagi podatkov BCCH kanala ugotovili, da TETRA omrežje podpira tudi šifriranje radijskega vmesnika. Sami prometni podatki, ki se pošiljajo preko BCCH kanala, še ne povedo za kateri šifrirani algoritem gre. Naj za začetek predhodno postrežemo nekaj teorije o varnostnih mehanizmih. Varnostni mehanizmi v TETRA omrežju so:  medsebojna avtentikacija med terminalskimi napravami in omrežjem preko radijskega vmesnika (algoritmi TA11, TA12, TA21, TA22),  kriptografska zaščita radijskega vmesnika (algoritmi TEA1, TEA2, TEA3, TEA4),  kriptografska zaščita točka – točka (*AES),  anonimnost,  daljinska blokada terminalnih naprav. TETRA pozna tri možne varnostne razrede (security classes):  Security CLASS 1 (avtentikacija je opcijska, brez kriptografske zaščite radijskega vmesnika, brez kriptografske zaščite točka – točka),  Security CLASS 2 (avtentikacija je opcijska, kriptografska zaščita radijskega vmesnika je statična - SCK29 , kriptografska zaščita točka – točka je opcijska),  Security CLASS 3 (avtentikacija je obvezna, kriptografska zaščita radijskega vmesnika je dinamična – DCK30 , kriptografska zaščita točka – točka je opcijska). Po javno dostopni tehničnih dokumentacijah se v Sloveniji uporabljata varnostna razreda, CLASS 1 in CLASS 3, kar lahko razberemo tudi iz sporočil BCCH kanala. Podatka, kateri algoritem se uporablja za šifriranje radijskega vmesnika med samimi prometnimi podatki ne najdemo, zato pa je toliko bolj priročen internet, na katerem ugotovimo, da v Slovenji uporabljamo TEA1 algoritem. TEA ali TETRA Encryption Algorithm je 80 bitni algoritem za tokovno šifriranje (stream cipher). Mnogi po ETSI standardu določene TEA algoritme enačijo s algoritmom Tiny Encryption Algorithm, ki je pravzaprav javno razkrit algoritem za šifriranje blokov (block ciphers) in nima nikakršne povezave s TETRA Algorithm Encryption (TEA). 29 Static Cipher Key 30 Derived Cipher Key
  • 20. 20 Uporabnikom TETRA omrežja so opcijsko po ETSI standardu na voljo štirje standardizirani algoritmi za kriptografsko zaščito radijskega vmesnika: • TEA1 je osnovni 80 bitni algoritem za splošno uporabo. • TEA2 je 80 bitni algoritem. Njegova uporaba je omejena na organizacije javne varnosti v državah podpisnicah Schengenskega sporazuma. Skrbnik algoritma je nemška Policija. Izvoz algoritma je pod nadzorom. Algoritem uporablja večina Policiji znotraj EU. • TEA3 je 80 bitni algoritem. Njegova uporaba je omejena na organizacije javne varnosti v državah, ki niso podpisnice Schengenskega sporazuma. Izvoz algoritma je pod nadzorom. • TEA4 je 80 bitni algoritem, namenjen splošni uporabi. Za vse TEA algoritme velja, da so dobro varovana skrivnost, saj do zdaj nobeden izmed njih ni bil javno razkrit. Prav tako do zdaj še ni nobene javno znane kriptoanalize TEA algoritmov, kar gre pripisati restriktivnim ukrepom, ki prepovedujejo splošno distribucijo in protokolom, ki varujejo algoritme varno shranjene znotraj programske opreme, ki se nahajajo na radijskih terminalih in napravah, ki so priključene v TETRA omrežje. Tako so na primer različni proizvajalci TETRA opreme algoritme, ki so zapisani v spominskem modulu, posebno šifrirali, tako da dostop do njih ni ravno enostaven. Ko smo malce bolj razumeli kakšni so varnostni mehanizmi in kakšno varnost lahko pričakujemo, smo verjeli, da ima Policija povsem zavarovane svoje komunikacije. Toda, kot smo že omenili, imamo pri nas nekoliko specifično omrežje, saj bazne postaje delujejo tako v CLASS-u 1 kot v CLASS-u 3, kar pomeni da na časovnih oknih (time slot) poteka podatkovna in govorna komunikacija šifrirano ali pa tudi ne, odvisno od nastavitev. To je v praksi pomenilo kar nekaj težav… Da bi bolje razumeli kriptografske mehanizme, naj na hitro omenimo kako deluje šifriranje radijske vmesnika s TEA algoritmom. Za primer bomo vzeli šifriranje v CLASS-u 3, torej dinamično (DCK/CCK31 ). Na radijskih terminalnih napravah se nahaja eden izmed štirih algoritmov za šifriranje radijskega vmesnika (TEA algoritmi). Enak algoritem mora biti implementiran tudi v omrežni infrastrukturi baznih postaj. Ko imata tako bazna postaja, kot radijski terminal enak algoritem za šifriranje radijskega vmesnika, se ves postopek šifriranja začne z avtentikacijo. Bazna postaja od radijskega terminala zahteva avtentikacijo, kot smo to že lahko spoznali, z RES in RAND spremenljivkami preveri pravilnost avtentikacijskega ključa in v kolikor radijski terminal uspešno opravi postopek avtentikacije, ima radijski 31 Common Cipher Key
  • 21. 21 terminal veljaven izpeljan DCK32 ključ. Enak DCK ključ mora biti izpeljan tudi na strani omrežja. DCK ključ je v uporabi predvsem za šifriranje v smeri od bazne postaje do radijskih terminalov, torej UPLINK-a. Govorna in podatkovna komunikacija je šifrirana s CCK ključem, ki je skupinski ključ za šifriranje v smeri od bazne postaje do radijskih terminalov, torej DOWNLINK-a. CCK ključ generira omrežje in ga na podlagi uspešne avtentikacije pošlje radijskemu terminalu šifriranega z DCK ključem. Omrežna infrastruktura preko SYSINFO BROADCAST razpršeno pošilja CCK-id vsem radijskim terminalom, registriranim na določenem LA. Če radijski terminal uspešno opravi proces avtentikacije ima tako veljaven DCK ključ s katerim dešifrira ključ CCK, ki ga nadalje uporabi za dešifriranje prometnih podatkov, ki jih dobi od bazne postaje (VOICE + DATA). CCK ključ je mogoče na zahtevo radijskega terminala (U-OTAR CCK DEMAND) distribuirati tudi preko mehanizma OTAR33 . V tem primeru se distribuira (D-OTAR CCK Provide) SCCK34 , ki je na strani omrežne infrastrukture šifriran z algoritmom TA31, vsebuje pa CCK-id, DCK in CCK. Redundanca se na strani radijskega terminala preveri z algoritmom TA32. Vsi prometni podatki, ki se prenašajo po fizičnih vodih in mikrovalovnih povezavah od bazne postaje do stikalne oziroma centralne infrastrukture, niso zaščitene s šifriranjem radijskega vmesnika. Za to se po ETSI standardih uporablja šifriranje točka – točka (End-to-End Encryption), torej šifriranje prometnih podatkov po celotni prometni poti od dispečerske centrale preko vozlišča, stikalne infrastrukture, baznih postaj in na koncu do samih radijskih terminalov. Pri tem naj dodamo, da smo na podlagi prometnih podatkov ugotovili, se pri nas ne uporablja šifriranja točka – točka, kar že predstavlja varnostno tveganje, da bi nekdo prestrezal nešifrirane komunikacije, nekje med bazno postajo in stikalno/centralno infrastrukturo. 32 Derived Cipher Key 33 Over The Air Re-keying 34 Sealed Common Cipher Key
  • 22. 22 Kot vidimo na zgornji sliki, na MAC-RESOURCE PDU zasledimo identifikator stanja "encryption mode: 2", kar pomeni, da so prometni podatki šifrirani. Vidimo lahko, da je ISSI osem mestna številka 12971394, ki je že na prvi pogled drugačna kot ostale, načeloma sedem mestne ISSI številke. Gre za xESI35 entiteto, šifrirano obliko ISSI ali GSSI številke. Spodnja slika prikazuje proces šifriranja ISSI številke. Enak proces oziroma algoritem se uporablja tudi za šifriranje GSSI številke. Kot lahko vidimo, ima algoritem TA61 za vhod (ang. input) CCK ali SCK ključ in xSSI številko, za izhod (ang. output) pa xESI entiteto. Vir: ETSI EN 300 392-7 35 Encrypted Short Identity
  • 23. 23 V Wiresharku tako vidimo xESI entitete, za katere pa na prvi pogled ne vemo ali gre za GSSI ali ISSI. S časoma, ko malce bolj opazujemo prometne podatke in spremljamo tudi šifriran promet, ugotovimo, katera xESI entiteta je lahko GSSI, celo več, ugotovimo lahko za katero GSSI številko gre. Slednje ugotovimo tako, da spremljamo časovne reže (ang. time slot) MCCH36 kanala, na katerem so tudi štiri časovne reže (ang. time slots). Govorni promet, četudi šifriran se prenaša preko MCCH kanala, zato lahko vidimo kdaj se prenaša govorni promet preko časovnih rež. S podrobnejšo analizo GSSI številk (registracije, de-registracije, avtentikacije, roaming) in vnaprejšnjim poznavanjem intenzitete zasedenosti določene grupe, lahko pridemo do ugotovitve katera GSSI številka je neka xESI entiteta. In zdaj najbolj zanimivi del. Marca, leta 2013 smo na podlagi šifriranih prometnih podatkov iz bazne postaje EMONA (LA37 : 160) naredili seznam xESI entitet. Uredili smo ga tako, da smo ločili xESI entitete, za katere smo menili da pripadajo GSSI številkam. Avgusta letos, smo ponovno opravili podrobno analizo šifriranih prometnih podatkov na bazni postaji EMONA in ugotovili, da se xESI entitete niso spremenile. Če ponovno pogledamo zgornjo sliko lahko ugotovimo, da gre za GSSI številko, ki je logično vedno enaka, da pa je tudi drugi vhod, CCK ključ vedno enak, saj se xESI spremeni takoj, ko se spremeni vhod, bodisi xSSI ali CCK ključ. Tako ugotovimo, da je CCK ključ za omenjen LA enak že več kot leto dni. Slednja lastnost omrežja pomeni varnostno ranljivost, saj omogoča napadalcu, da z mavričnimi tabelami (ang. rainbow tables), podobno kot pri GSM (algoritem A5/1) ali napadom z grobo silo (ang. brute force) v doglednem času zlomi CCK ključ. Že na začetku smo omenili, da smo zaznali težave z dostavo ključev, saj smo lahko velikokrat poslušali govorni promet Policije, ki naj bi delovala v šifriranem režimu, kar prikazuje tudi spodnja slika. Do tega je po našem mnenju prišlo zaradi težav pri avtentikacijah, ki so lahko posledica težav na strani radijskih terminalov ali omrežne infrastrukture. Možnosti je lahko več, vsekakor pa je najbolj verjetna ta, da bazne postaje niso uspešno distribuirale CCK ključa, ker na MAC-RESOURCE PDU ni bilo pravilnega identifikatorja CCK-id ali pa radijski terminal ni imel veljavnega DCK ključa, da bi dešifriral CCK ključ. Na sliki vidimo da poteka govorni promet D-SETUP, z dodeljenim USAGE markerjem (22), na grupi GSSI številke 6100003 (POLICIJA, PU LJ, LJ3). V PDU MAC-RESOURCE identifikatorju lahko vidimo, da gre za nešifriran govorni promet (encryption mode: 0). 36 Main Control CHannel 37 Local Area
  • 24. 24 Naj dodamo, da so kljub uporabi šifriranja radijskega vmesnika s TEA1 algoritmom in dinamičnimi izpeljanimi ključi (DCK, CCK), ne šifrirajo vsi prometni podatki. Po vsej verjetnosti prav zaradi specifičnega omrežja, ki deluje tako v načinu brez šifriranja (CLASS 1) kot tudi v šifriranem načinu (CLASS 3), ostane nešifriran del signalizacije na PDU MAC / LLC sloju. Tako je razumljivo, zakaj je mogoče videti vse registracije, avtentikacije in lokacijske posodobitve (ang. roaming) radijskih terminalov, ki bi morali imeti šifrirano tudi signalizacijo. Kar pa s stališča varnostne ranljivosti pomeni, da je s časoma možno ugotoviti katera ISSI številka pripada kateri policijski patrulji/enoti in kateri GSSI grupi, katere ISSI številke se pojavljajo na nekem območju, kdaj se na območju bazne postaje dogaja nekaj "zanimivega" itd. Tako smo lahko tudi mi dokaj hitro ugotovili katere grupe (GSSI) številke se pojavljajo na nekem območju, katere ISSI številke ter zaradi težav s šifriranjem prometnih podatkov DOWNLINK-a (CCK ključa) večkrat ujeli kakšno govorno in podatkovno zanimivost, ki bi sicer morala biti šifrirana.
  • 25. 25 5 GRAFIČNI VMESNIK TETRA MONITOR Avtor, ki ne želi biti javno imenovan, je v C/C++ kodi napisal program TETRA Monitor, namenjen le naši skupni interni uporabi, ki smo ga tudi uporabili pri sami varnostni analizi. TETRA Monitor je grafični vmesnik, ki prejema dekodiran signal od izvornega programa osmosdr-tetra_demod_fft.py. Prikazuje registracije, avtentikacije, individualne in skupinske klice (čas klica, dolžina klica, pošiljatelja ISSI/GSSI in naslovnika ISSI/GSSI klica) SDS in statusna sporočila, aktivnost in zasedenost časovnih rež (prva časovna reža rumena – aktivnost MCCH, govorni promet CLASS 3/CLEAR, rumena na preostalih treh časovnih režah – RELEASE/TIMEOUT govornega prometa, prav tako se pri govornem prometu izpiše dodeljena številka USAGE markerja), stopnjo signala, ID bazne postaje – LA, broadcast (MCC, MNC, identifikatorje - CLASS 1,2,3, GCK, auth req) in omogoča pregled nad grupami – GSSI številkami, ki jih je mogoče shraniti v SQLite bazo. Program samodejno shranjuje govorne posnetke ter podatkovne loge BCCH kanala. Samodejno se logirajo tudi vse registracije, avtentikacije in lokacijske posodobitve. TETRA Monitor mam je tako bistveno olajšal pregledovanje najbolj zanimivih prometih podatkov. BROADCAST SYSINFO bazne postaje LJ-EMONA LA160 nam pove, da ni zahtevana obvezna avtentikacija, da je podprt CLASS 1 in CLASS 3. Šifriranje z GCK38 ključem ni podprto. 38 Group Cipher Key
  • 26. 26 Spodnja slika prikazuje registracije, lokacijske posodobitve (ROAMING) in avtentikacije radijskih terminalov. V prvem stolpcu vidimo ISSI številke, v drugem stolpcu imamo označene ATT - vrednost 0 je v primeru, da radijski terminal prejme D-LOCATION-UPDATE-ACCEPT kar pomeni lokacijsko posodobitev radijskega terminala (ROAMING), vrednost 1 pa je v primeru, če je radijski terminal na novo registriran v omrežje, MAC PDU tip ITSI ATTACH (npr. ko se radijski terminal na novo registrira v omrežje). Sledi stolpec avtentikaciji – vrednost 0 v primeru, da radijski terminal prejme D-LOCATION- UPDATE-ACCEPT, kar pomeni lokacijsko posodobitev radijskega terminala (ROAMING) ali ATT v primeru, da radijski terminal nima vključene avtentikacije. Vrednost 1 je, če BS zahteva avtentikacijo (D-AUTHENTICATION-DEMAND). Četrti stolpec prikazuje TEI request flag v procesu avtentikacije – vrednost 0 če ni zahtevan, 1 če je zahtevan (TEI req / zahteva se zaradi uporabe CLASS-a 1 in 3 ne uporablja, saj se to odsvetuje v omrežjih, ki delujejo tudi ali samo v nešifriranem načinu). Sledi stolpec, ki prikazuje GSSI (kot smo že omenili, je prikaz GSSI odvisen od proizvajalca terminalih naprav. Prikazan je le, če je preko U-LOCATION-UPDATE-DEMAND pripet na MAC PDU. Zadnja dva stolpca pa prikazujeta prvo zaznavo ISSI številke (registracija, avtentikacija ali ROAMING) ter zadnjo spremembo (registracija, avtentikacija ali ROAMING).
  • 27. 27 TETRA Monitor prikazuje skupinske in individualne klice. V prvem stolpcu je izvorna ISSI številka, v drugem pa naslovna (največkrat je to kar GSSI). Tretji stolpec prikazuje čas klica, četrti identifikator klica, peti številko (2-4) časovne reže, na kateri je potekal govorni promet, šesti pa številko USAGE markerja, ki je bil dodeljen individualnem ali skupinskem klicu. Prva slika med drugim prikazuje tudi govorni promet, ki naj bi bil šifriran, vendar kot vidimo, ni bil šifriran in tako smo lahko poslušali govorne komunikacije Policije.
  • 28. 28 Spodnji dve sliki prikazujeta poslana SDS in statusna sporočila.
  • 29. 29 6 UGTOVITVE Z varnostno analizo slovenskega TETRA omrežja smo dokazali, da je mogoče signal dekodirati, prometne podatke pa analizirati. Videli smo lahko kako izgledajo registracije, avtentikacije, SDS in statusna sporočila, tako tista nešifrirana kot tudi tista, ki naj bi bila šifrirana. Na začetku varnostne analize smo zaznali registracije radijskih terminalov brez predhodne avtentikacije. Poslušali smo lahko skupinske in individualne pogovore, tako nešifriranega govornega prometa kot tudi govorni promet, ki naj bi bil šifriran. Ugotovili smo, da se pri CLASS-u 1 uporablja le enostranska avtentikacija, kar predstavlja varnostno tveganje, saj bi lahko nekdo npr. z USRP napravo na GNU radio platformi in znanjem razvil lažno bazno postajo, podobno kot IMSI-Cather pri GSM omrežju. Prav tako smo zaznali napake pri avtentikacijah ter distribucijo CCK ključa ali dešifriranje tega pri šifriranem prometu. Na podlagi analize šifriranih prometnih podatkov smo ugotovili, da se CCK ključ ne spreminja, kar predstavlja varnostno tveganje v primeru napada CCK ključa z grobo silo ali mavričnimi tabelami. Težave smo zaznali na določenih baznih postajah, ki so oddajale povsem napačne MAC PDU parametre in identifikatorje (BS LJ-ŠIŠENSKI HRIB, LA113). Ugotovili smo še druge varnostne ranljivosti, ki jih zaradi morebitnega ogrožanja nacionalne varnosti ne bomo javno izpostavljali. Poudarjamo, da bi bilo smiselno opraviti še dodatno varnostno analizo, predvsem zato, da se razjasni ali je slovensko TETRA omrežje posebnost ali pa obstajajo varnostne ranljivosti že v samih osnovnih ETSI standardih. Ključnega pomena v TETRA omrežju je varnost, saj je to glavni atribut, zaradi katerega je bil takšen sistem sploh zasnovan. Vsekakor je potrebno razumeti, da samo delovanje v digitalnem načinu še ne zagotavlja varnih komunikaciji. Ker so uporabniki TETRA omrežja službe, ki zagotavljajo javno in nacionalno varnost države, je potrebno v sistem vložiti več sredstev (tako finančnih kot strokovno-kadrovskih), predvsem za namen varnostnih mehanizmov, ki bi preprečevali aktivne in pasivne napade ter druge varnostne incidente. Varnost govornih in podatkovnih komunikaciji je odvisna predvsem od pravilno implementiranih varnostnih mehanizmov – obvezna medsebojna avtentikacija, šifriranje radijskega vmesnika in šifriranje celotne radijske poti točka – točka. Varnostni mehanizmi pa lahko delujejo le, če je vsa omrežna oprema kompatibilna med seboj. Prav tako bi bilo smiselno razmišljati o ločenih načinih delovanja (CLASS 1, CLASS 3) ali vklopu šifriranega načina za vse govorne in podatkovne komunikacije (ne razumemo, zakaj to pristojni niso storili že v preteklosti, saj je bil pri vseh javnih razpisih in javnih naročilih TETRA opreme naveden pogoj, da morajo radijski terminali imeti algoritem TEA1 in tako delovati v načinu CLASS 1 ali CLASS 3), saj bi to pomenilo bistveno manjšo možnost, da bi prihajalo do težav
  • 30. 30 z distribucijo šifrirnih ključev. Prav tako bi s tem onemogočili analizo prometnih podatkov signalizacije. Menimo, da bi bilo potrebno baznim postajam, v kolikor to možnost dopuščajo, nastaviti obvezno medsebojno avtentikacijo (ang. Mandatory Mutual Authentication). Če bi bazne postaje delovale le v enem varnostnem razredu (CLASS 3, DCK/CCK/GCK) bi bilo smiselno, v kolikor bazne postaje to možnost dopuščajo, omejiti registracije v omrežje le na radijske terminale, ki imajo enak algoritem za šifriranje radijskega vmesnika kot omrežna infrastruktura. Prav tako bi lahko, če bi bazne postaje delovale le v šifriranem načinu (CLASS 3), lahko vključili možnost "TEI request flag" in tako še dodatno zavarovali omrežje pred vdori. Smiselno bi bilo razmišljati tudi o prehodu iz šifriranja radijskega vmesnika z algoritmom TEA1 na TEA2, saj je TEA2 algoritem, za katerega veljajo posebni restriktivni ukrepi in distribucijski protokol, kar seveda zmanjšuje možnost, da bi lahko bil algoritem javno razkrit oziroma da bi bila uspešno opravljena kriptoanaliza algoritma. To je še posebno smiselno storiti, če bodo tudi ostale sosednje države prešle na TEA2, saj bi bile potemtakem možnosti za gostovanje tudi v drugih TETRA omrežjih. Nujno potrebno se nam zdi zavarovati mikrovalovne povezave in šifrirati prometne podatke, ki se prenašajo preko mikrovalnovnih-optičnih povezav. Za konec objavljamo še preglednico nekaterih uporabnikov TETRA omrežja v Slovenji iz katere je razvidno, da le Policija bolj ali manj uspešno uporablja šifriranje radijskega vmesnika s TEA1 algoritmom. SLUŽBA / ORGANIZACIJA ISSI GSSI CLASS 1 / 3 MNZ - POLICIJA 6xxxxxx 6xxxxxx 3 MORS - VOJSKA 199xxxx 1xxxxxx 1 MORS - VP 200xxxx 29990xx 1 PRAVOSODJE 305xxxx 305xxxx 1 REDARSKE SLUŽBE 92xxxxx 9000xxx 1 CARINSKA UPRAVA / FURS 7000xxx 71990xx 1 PROTOKOL VLADE 40000xx 4000901 1 DARS 93xxxxx 90005xx 1
  • 31. 31 7 VIRI European Telecommunications Standards Institute, (2009). ETSI EN 300 392-1. Pridobljeno na: http://www.etsi.org/deliver/etsi_en/30030 0_300399/30039201/01.04.01_60/en_ 30039201v010401p.pdf (27. 5. 2014) European Telecommunications Standards Institute, (2009). ETSI EN 300 392-7. Pridobljeno na: http://www.etsi.org/deliver/etsi_en/300300_300399/30039207/03.01.01_60/en_ 30039207v030101p.pdf (27. 5. 2014) MIBO Komunikacije, (2011). Študija uvajanja sistemov radijskih zvez TETRA. Ministrstvo za notranje zadeve RS, (2010). Razpisna dokumentacija. Pridobljeno na: http://www.mnz.gov.si/fileadmin/mnz.gov.si/pageuploads/JAVNA_NAROCILA/1458p-10- RD-projektna_dok-TETRA.doc (27. 5. 2014) Ministrstvo za notranje zadeve RS, (2013). JAVNI POZIV PROMOTORJEM K ODDAJI VLOGE O ZAINTERESIRANOSTI ZA IZVEDBO PROJEKTA JAVNO-ZASEBNEGA PARTNERSTVA. Pridobljeno na: http://www.mnz.gov.si/fileadmin/mnz.gov.si/pageuploads/JAVNA_NAROCILA/LETO_ 2013/1200-13-jzp_POZIV_promotorjem_razpis_TETRA.doc (27. 5. 2014) Norwegian University of Science and Technology, Department of Telematics, (2013). Security Analysis of TETRA. Pridobljeno na: http://www.diva-portal.org/smash/get/diva2:656471/ FULLTEXT01.pdf (27. 5. 2014) Fakulteta za varnostne vede, Univerze v Mariboru (2012). Operativno - komunikacijski center policijske uprave je pomembna operativna služba v policiji. Pridobljeno na: http://www.fvv.uni-mb.si/DV2012/zbornik/policijska_dejavnost/Gradisnik_Ristic.pdf (27. 5. 2014)