Spojujeme software, technologie a služby SIM karty a bezpečnost v mobilních sítích Václav Lín programátor 19.5.2009 1
Osnova SIM karty Role SIM karet v telekomunikacích Hardwarové charakteristiky Bezpečnost a autentizace v GSM Autentizační protokol Používané algoritmy Slabiny a útoky Bezpečnost a autentizace v UMTS JavaCard a SIM Toolkit Podpora kryptografie Uživatelské rozhraní SMS komunikace Aplikace: mobilní bankovnictví 2
Role SIM karet v telekomunikacích Základní funkce autentizace do sítě Na kartách jsou uloženy tajné klíče pro autentizaci Na kartách probíhá i výpočet autentizačního algoritmu Na kartách jsou uložena data GSM operátora... partnerské sítě pro roaming ID karty (IMSI, TMSI)...... a data uživatele SMS telefonní čísla 3
Hardwarové charakteristiky SIM karet Standardy: ISO/IEC 7816-x ETSI TS 102.221 Velikost chipu ~ max 25 mm 2 Procesor - 8 bit, 16 bit, 32 bit kryptografický koprocesor (DES/AES/RNG) Paměti: ROM 16-500 kb RAM 1-24 kb NVM EEPROM 8-256kB Flash >= 128 kb 4
Bezpečnost a autentizace v GSM 5
Možné ztráty při prolomení bezpečnosti Operátor Bezplatné využívání služeb útočníkem Ztráta důvěry klientů Nedodržení zákonných požadavků (ochrana soukromí klientů) Uživatel Účtování služeb využívaných útočníkem Odposlech hovorů a SMS Sledování pohybu... 6
Architektura GSM sítě Radio interface Mobile Station BTS HLR BSC MSC SIM BTS AuC Base Station Subsystem Network subsystem GSM network 7
GSM autentizace Jednoduchý protokol typu výzva-odpověď Tajný klíč sdílený mezi SIM a sítí Protokol navržený v 80. letech minulého století má řadu slabin 8
Identifikace SIM karty v síti IMSI International Mobile Subsriber Identity Používá se pro první přihlášení po zapnutí telefonu TMSI Temporary Mobile Subscriber Identity Dočasná identita Znesnadňuje sledování chování uživatelů 9
GSM autentizační protokol Ki Auc BTS ME SIM Sres = A3( Ki, Rand) Kc= A8(Ki,Rand) IMSI / TMSI SIM SI M SI M NET Ki Rand,Sres,Kc Rand Sres = Sres? Sres Sres Kc Sres = A3( Ki, Rand) Kc= A8(Ki,Rand) Ano Přístup povolen 10
Comp128 a klonování SIM karet COMP128 v minulosti rozšířená implementace A3/A8 tajná specifikace algoritmus se podařilo prolomit nahrazován bezpečnějšími algoritmy Comp128v2, Comp128v3 Klonování nalezení IMSI a Ki vytvoření náhradní SIM Klonování na webu: http://www.isaac.cs.berkeley.edu/isaac/gsm.html http://www.hackwatch.com/gsmpaper.html http://klony.ic.cz/ 11
Šifrování rádiové komunikace Data přenášená mezi telefonem a BTS jsou šifrovaná Používá se klíč Kc odvozený při autentizaci Algoritmy A5: A5/0, A5/1, A5/2, A5/3 Mobile Station BTS Fn (22 bit) Kc (64 bit) Fn (22 bit) Kc (64 bit) A5 A5 Data XOR Encrypted Data XOR Data 12
Útoky proti A5 Tajný algoritmus dostupný na internetu: http://www.scard.org/gsm/a51.html Bylo popsáno několik teoretických útoků (první 1997) V poslední době útoky v reálném čase (se speciálním hardware) 13
ME Man-in-the-middle útok Attacker Fake BTS Fake ME BTS Kc A3/A8 RAND SRES Choose A5/2 RAND encrypted data Crack A5/2 Kc SRES Choose A5/1 encrypted data 14
UMTS: 3G Autentizace Překonává známé slabiny GSM autentizace: Vzájemná autentizace Není možné použít vícekrát stejnou výzvu Kontrola integrity dat Často užívaný algoritmus: Milenage 15
3G Autentizace Bezpečnostní vlastnosti User Identity Confidentiality Používání dočasných identit, šifrování Entity Authentication Autentizace uživatele Autentizace sítě Confidentiality Generování klíče pro šifrování Data Integrity Generování klíče pro kontrolu integrity 16
Javacard applety na SIM interoperabilní aplikace bezpečnost k datům appletu nemají ostatní applety přístup mohou mít vlastní PIN a tajné klíče SIMToolkit uživatelské rozhraní komunikace se serverem přes binární SMS 17
Podpora kryptografie v Javacard bezpečné uložení klíčů speciální třídy pro různé typy klíčů generátor náhodných čísel message digest md5, sha1, sha2, ripe md-160 šifrování DES, TDES, AES, RSA na SIM nemusí být všechny algoritmy implementované 18
SIM Toolkit příjem a odesílání binárních SMS až 140 Bytů v 1 SMS možnost konkatenovaných SMS možnost zašifrovaných a podepsaných SMS informace o buňce, ve které applet právě je uživatelské rozhraní menu, get input, display text,... 19
Aplikace: mobilní bankovnictví Aplikace pro správu bankovního účtu z mobilního telefonu Využívá možnosti poskytované SIMToolkit technologií: uživatelské rozhraní šifrované SMS kryptografické operace na SIM bezpečné uložení tajného klíče 20
Děkuji za pozornost Odkazy: http://www.gsm-security.net/ http://www.gsmworld.com/ ftp://ftp.3gpp.org/ http://wiki.thc.org/gsm