Bezpečnost GSM

Mobilní telefony není jistě třeba představovat, ale podívejme se na zajímavé technické detaily týkající se bezpeč...


Mobilní telefony není jistě třeba představovat, ale podívejme se na zajímavé
technické detaily týkající se bezpečnosti GSM. V první části článku se zaměříme
na principy GSM důležité pro bezpečnost a v závěru se budeme věnovat aktuálním
bezpečnostním problémům. Nakonec jen zběžně zmíníme jinak velmi zajímavé
detaily správy kryptografických klíčů v síti GSM.
Sama mobilní telefonie a přístup k dalším mobilním službám neposkytují stejnou
úroveň bezpečnosti jako pevná síť. Odposlouchávání rádiového spojení mezi
mobilní stanicí a odpovídající základnou je snadné a těžko mu lze zabránit
zachycení dat na jejich cestě a neautorizovaný přístup ke službám jsou pak bez
další ochrany triviální. Zachycení uživatelských nebo signálních dat může mít
za následek odtajení těchto dat a ztrátu důvěrnosti uživatelské identity.
Uživatelská data jsou přenášena transportními i signálními kanály. Signální
kanál přenáší mj. i uživatelská data ve formě krátkých zpráv (příjem i vysílání
bloku do 160 B) bez aktivace transportního kanálu.
Díky celulární struktuře sítě a neustálé aktualizaci informací o uživatelském
modulu/kartě SIM, které jsou nezbytné pro zajištění spojení, síť umí
lokalizovat účastnickou kartu (pokud je karta zasunuta do mobilního telefonu a
ten je buď v provozu, nebo připraven k příjmu). Území pokryté buňkou závisí na
umístění buňky a pohybuje se od stovek metrů po 35 km okruh kolem základové
stanice. Jednoduchou triangulací lze sledovat pohyb účastníka s přesností na
stovky až desítky metrů. Jsou známy případy, kdy švýcarská policie takto
analyzovala data o pohybu mobilních telefonů uchovávaná operátorem GSM po dobu
půl roku (!). Podle dostupných informací těchto postupů využívá i naše policie.
Pro ochranu operátorů a účastníků proti různým útokům přes nechráněná rádiová
spojení a nekontrolované přístupy k mobilním službám je pro každou síť GSM
závazné zajištění:
1.důvěrnosti identity účastníka,
2.autentizace účastníka,
3.důvěrnosti uživatelských dat i signálních informací.
Jednou z vlastností GSM je zašifrování linky z důvodu ochrany uživatelských i
signálních dat. Pro tento účel byla vyvinuta speciální šifra, která je
hardwarově integrována. Je zajímavé, že tato šifra je v určitých detailech
odlišná v zemích NATO a ostatních zemích a je ještě zajímavější, že šifrování
je standardně nasazeno jen pro komunikaci mezi mobilním telefonem a základnovou
stanicí, avšak komunikaci v síti operátora GSM lze obvykle odposlouchávat (máte-
li patřičné vybavení, jehož výroba a prodej jsou kontrolovány). SIM odvozuje
šifrovací klíč jako součást autentizačního procesu. To znamená, že šifrování
může být aktivováno, až je identita uživatele úspěšně ověřena. Autentizace sítě
mobilní stanicí ovšem v GSM prováděna není.
Algoritmy samotné jsou vyjma šifrovacího algoritmu(ů) záležitostí síťového
operátora. V SIM je uložen (pro každou kartu jedinečný) klíč Ki a algoritmy
označené A3 a A8. Algoritmus A3 je používán k autentizaci mobilního telefonu a
algoritmus A8 k vygenerování jednorázového klíče relace Kc, kterým bude
šifrováno vlastní spojení. Algoritmus A5 není umístěn v kartě, ale v mobilním
telefonu, a slouží právě šifrování spojení klíčem Kc. GSM v zásadě poskytuje 3
bezpečnostní služby:
1.Dočasné identity pro důvěrnost identity uživatele.
2.Autentizaci pro kontrolu identity uživatele.
3.Šifrování pro důvěrnost uživatelských dat.
Autentizace a dočasné identity
Účelem autentizace účastníka je ochránit síť před neautorizovaným použitím.
Síťový operátor může používat vlastní algoritmus, ale návrhy možných algoritmů
jsou k dispozici na příslušnou žádost. K zajištění interoperability jsou
specifikovány autentizační protokol a délka parametrů (vstup, výstup a klíč),
stejně jako čas provádění algoritmu. Před započetím hovoru musí být identita
SIM síti GSM známa. Obvykle se místo zaslání IMSI (International Mobile
Subscriber Identity) používá dočasné identity. Smyslem dočasné identity (TMSI
Temporary Subscriber Identity) je zabránit útočníkovi v možnosti získat
informace ze zdrojů účastníka a zjistit polohu účastníka. Navíc je obtížnější
přiřadit uživatele k přenášeným datům. IMSI se musí používat pro vytvoření
spojení jen v krajním případě.
Autentizace a účtování poplatků jsou v systému GSM prováděny operátorem
domovské sítě.
Není pak potřeba zavádět jednotný autentizační algoritmus a každý operátor může
používat svůj vlastní algoritmus. Data používaná k ověření identity jsou
generována domovskou sítí. Samotná verifikace a řízení přístupu jsou
zajišťovány lokálně pomocí VLR (Visitor Location Register), u kterého je
účastník dočasně registrován. Uživateli stačí vzít jen svůj SIM a vloží jej do
libovolného mobilního zařízení. SIM obsahuje veškeré potřebné informace o
účastníkovi, jako je IMSI, síťově specifický autentizační algoritmus či tajný,
pro každého uživatele specifický, autentizační klíč Ki. Autentizační algoritmus
na straně sítě (určený podle A3) je implementován v domácím registru polohy
(HLR Home Location Register) nebo v Autentizačním centru (AuC), zatímco na
straně MS je obsažen v SIM. Volitelně může být A3 implementován ve VLR. Metoda
použitá mezi HLR/AuC a SIM je typu výzva--odpověď používající náhodná čísla:
Náhodné číslo RAND je zasláno do MS (Mobile Subscriber) jako výzva, poté SIM
spočte odpověď SRES k RAND. SRES je odeslán a porovnán s hodnotou spočtenou
sítí. Jen v případě, že se tyto hodnoty rovnají, je MS povolen přístup do sítě.
Použití kryptografie s veřejným klíčem by umožnilo autentizaci bez prozrazování
jakýchkoliv tajných informací pro VLR. Autentizační mechanismy užívající
veřejné klíče mají také být standardizovány.
Šifrování
Aktivace služby šifrování je řízena síťovou stranou. Standardní šifrování,
popisované jako algoritmus A5, je používáno v celém systému. Tento proprietární
algoritmus, který lze implementovat pomocí asi 3 000 tranzistorů, je obsažen na
vyhrazeném hardwaru v MS a základnové stanici, která je protistanicí MS na
rádiové cestě. Nezašifrovaný text je organizován do bloků 114 bitů, což je
množství dat přenášených během jedné časové periody. Proud klíče, neboli
sekvence bitů, které jsou XORovány (sčítány modulo 2) s datovým blokem, je
produkován algoritmem A5 jako výstupní blok 114 bitů. Klíč Kc je odvozen v SIM
během autentizačního procesu za použití algoritmu A8, specifického pro síťového
operátora. Vstupem algoritmu A8 jsou "vyzývající" RAND (128 b) a účastnický
autentizační klíč (128 b) používaný i pro autentizační proceduru, zatímco
výstupem je klíč Kc sestávající ze 64 b.
Existují 2 standardní metody generování klíčů pro GSM. Buď pomocí generátoru
náhodných čísel, nebo na základě algoritmu používaného k odvození klíče z dat,
vztahujících se k uživateli a z klíče vyšší úrovně (MK Master Key). Hlavní
výhodou odvození klíče z netajných údajů šifrovaných MK je to, že takovéto
odvoditelné klíče nemusejí být uschovávány a zálohování účastnických klíčů je
omezeno jen na zálohování MK. Hlavním problémem je samozřejmě ochrana tajného
klíče MK. Kdokoliv by jej vlastnil a znal tajné algoritmy A3 a A8,
zkompromitoval by všechny karty vystavené pod tímto MK(!). Toto riziko lze
snížit periodickou změnou MK, což ale znamená správu většího množství tajných
klíčů, navíc je nutno udržovat spojitost mezi příslušným MK a účastnickým
účtem. Použití náhodného čísla má svůj závažný důsledek v tom, že není přímá
spojitost mezi autentizačním klíčem a daty specifickými pro uživatele. Tyto
klíče sice také musí být chráněny AuC, ale ne nutně na tak vysoké úrovni jako v
předcházejícím případě. Také zjištění takového klíče potenciálním útočníkem
neznamená zjištění MK.
SIM
SIM je realizován čipovou kartou a obsahuje všechny nezbytné informace a
algoritmy k autentizaci účastníka v síti. Dodává se ve dvou provedeních. Větší
karta SIM má rozměr kreditní karty, zatímco "plug-in" SIM lze získat "ořezáním"
na 25 x 15 mm. PIN je uložen v EEPROM na čipu a porovnání s hodnotou
předloženou uživatelem je prováděno v CPU na SIMu, takže PIN čip neopouští.
Blokovaný SIM nevysílá svou identitu v podobě TMSI nebo IMSI do ME, protože
tato data jsou (slabě, ale přece) chráněna proti čtení PINem. Ověření PINu před
autentizací MS síťovou stranou šetří čas a zdroje v síti, je-li zadán špatný
PIN.
Uživatel může SIM odblokovat zadáním tzv. osobního odblokovacího klíče (PUK)
kartě, společně s novým PINem. PUK je prostě jen další identifikační číslo.
Uživatel nemůže PUK změnit, kopie je uložena v domovské síti a vydána jen po
splnění určitých bezpečnostních podmínek. Přístup SIM k mobilní službě lze
zablokovat uvedením "na černou listinu" u HLR/AuC. Po několika (obvykle deseti)
následných špatných PUK je SIM trvale zablokován. Samozřejmě jestliže je
kontrola PINu uživatelem zakázána, řízení přístupu k SIM a tedy i síti (pokud
karta není na černé listině) je závislé pouze na držení karty. Zůstává ke
zvážení, zda se má uživatelům tato možnost povolit.
Z výše uvedených informací je jasné, že bezpečnost SIM je závislá na utajení
klíče Ki. Dále je potřeba si uvědomit, že algoritmy A3, A5 a A8 jsou utajované.
Čili klasická ukázka bezpečnosti přes obskurnost (security through obscurity),
kritizované důkladně již v předcházejícím díle seriálu. Algoritmy A3 a A5 jsou
navíc v naprosté většině implementací realizovány algoritmem jediným, obvykle
COMP128 (zatím je známo jen 5 operátorů, kteří nasadili jiný než tento
"ilustrativní" algoritmus více informací je dostupných přes URL v tabulce).
Na jaře letošního roku se na veřejnost dostal dříve utajovaný dokument
"TECHNICAL INFORMATION GSM System Security Study", kde je mj. popis algoritmu
COMP128 (více opět v uvedených URL; podle informací GSM hackerů ale chybělo jen
několik měsíců ke zjištění COMP128 přes "reverse engineering"). Smartcard
Developer Association a tým univerzity v Berkeley kryptanalyzovali tento
algoritmus a zjistili, že díky chybám v designu je možné během několika hodin
ze SIM zjistit klíč Ki a vytvořit tak klon této karty. Asociace GSM MoU
(Memorandum of Understanding) sdružující operátory GSM reagovala prohlášením,
že COMP128 je algoritmem ilustrativním, nikoliv povinným a každý operátor GSM
si měl zvolit svůj vlastní bezpečný algoritmus. Úsudek si udělejte sami, já jen
potvrdím, že většina GSM operátorů to neudělala. Jak jinak. Ostatně škody takto
způsobené hovory přes naklonované karty jdou na účet vlastníků původních
"originálů" karet, nikoliv na účet operátorů GSM.
8 1937 / ram









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.