OsmocomBB - Running your own GSM stack on a phone · PDF fileGSM/3G Network Security Introduction Security Problems and the Baseband OsmocomBB Project Summary OsmocomBB Running your

  • Upload
    vominh

  • View
    220

  • Download
    0

Embed Size (px)

Citation preview

  • GSM/3G Network Security IntroductionSecurity Problems and the Baseband

    OsmocomBB ProjectSummary

    OsmocomBBRunning your own GSM stack on a phone

    Harald Welte and Steve Markgraf

    http://bb.osmocom.org/

    27th CCC Congress, December 2010, Berlin/Germany

    Harald Welte and Steve Markgraf OsmocomBB

  • GSM/3G Network Security IntroductionSecurity Problems and the Baseband

    OsmocomBB ProjectSummary

    Outline

    1 GSM/3G Network Security Introduction

    2 Security Problems and the Baseband

    3 OsmocomBB Project

    4 Summary

    Harald Welte and Steve Markgraf OsmocomBB

  • GSM/3G Network Security IntroductionSecurity Problems and the Baseband

    OsmocomBB ProjectSummary

    The closed GSM industrySecurity implicationsThe GSM networkThe GSM protocols

    GSM/3G protocol security

    ObservationBoth GSM/3G and TCP/IP protocol specs are publiclyavailableThe Internet protocol stack (Ethernet/Wifi/TCP/IP) receiveslots of scrutinyGSM networks are as widely deployed as the InternetYet, GSM/3G protocols receive no such scrutiny!

    There are reasons for that:GSM industry is extremely closed (and closed-minded)Only about 4 closed-source protocol stack implementationsGSM chipset makers never release any hardwaredocumentation

    Harald Welte and Steve Markgraf OsmocomBB

  • GSM/3G Network Security IntroductionSecurity Problems and the Baseband

    OsmocomBB ProjectSummary

    The closed GSM industrySecurity implicationsThe GSM networkThe GSM protocols

    The closed GSM industryHandset manufacturing side

    Only very few companies build GSM/3.5G baseband chipstoday

    Those companies buy the operating system kernel and theprotocol stack from third parties

    Only very few handset makers are large enough tobecome a customer

    Even they only get limited access to hardwaredocumentationEven they never really get access to the firmware source

    Harald Welte and Steve Markgraf OsmocomBB

  • GSM/3G Network Security IntroductionSecurity Problems and the Baseband

    OsmocomBB ProjectSummary

    The closed GSM industrySecurity implicationsThe GSM networkThe GSM protocols

    The closed GSM industryNetwork manufacturing side

    Only very few companies build GSM network equipmentBasically only Ericsson, Nokia-Siemens, Alcatel-Lucent andHuaweiException: Small equipment manufacturers for picocell /nanocell / femtocells / measurement devices and lawenforcement equipment

    Only operators buy equipment from themSince the quantities are low, the prices are extremely high

    e.g. for a BTS, easily 10-40k EUR

    Harald Welte and Steve Markgraf OsmocomBB

  • GSM/3G Network Security IntroductionSecurity Problems and the Baseband

    OsmocomBB ProjectSummary

    The closed GSM industrySecurity implicationsThe GSM networkThe GSM protocols

    The closed GSM industryOperator side

    Operators are mainly banks todayTypical operator outsources

    BillingNetwork planning / deployment / servicing

    Operator just knows the closed equipment as shipped bymanufacturerVery few people at an operator have knowledge of theprotocol beyond whats needed for operations andmaintenance

    Harald Welte and Steve Markgraf OsmocomBB

  • GSM/3G Network Security IntroductionSecurity Problems and the Baseband

    OsmocomBB ProjectSummary

    The closed GSM industrySecurity implicationsThe GSM networkThe GSM protocols

    The closed GSM industrySecurity implications

    The security implications of the closed GSM industry are:Almost no people who have detailed technical knowledgeoutside the protocol stack or GSM network equipmentmanufacturersNo independent research on protocol-level security

    If theres security research at all, then only theoretical (likethe A5/2 and A5/1 cryptanalysis)Or on application level (e.g. mobile malware)

    No open source protocol implementationswhich are key for making more people learn about theprotocolswhich enable quick prototyping/testing by modifying existingcode

    Harald Welte and Steve Markgraf OsmocomBB

  • GSM/3G Network Security IntroductionSecurity Problems and the Baseband

    OsmocomBB ProjectSummary

    The closed GSM industrySecurity implicationsThe GSM networkThe GSM protocols

    Security analysis of GSMHow would you get started?

    If you were to start with GSM protocol level security analysis,where and how would you start?

    On the network side?Difficult since equipment is not easily available andnormally extremely expensiveHowever, network is very modular and has manystandardized/documented interfacesThus, if equipment is available, much easier/faster progressHas been done in 2008/2009: Project OpenBSC

    Harald Welte and Steve Markgraf OsmocomBB

  • GSM/3G Network Security IntroductionSecurity Problems and the Baseband

    OsmocomBB ProjectSummary

    The closed GSM industrySecurity implicationsThe GSM networkThe GSM protocols

    Security analysis of GSMHow would you get started?

    If you were to start with GSM protocol level security analysis,where and how would you start?

    On the handset side?Difficult since GSM firmware and protocol stacks are closedand proprietaryEven if you want to write your own protocol stack, the layer1 hardware and signal processing is closed andundocumented, tooKnown attempts

    The TSM30 project as part of the THC GSM projectmados, an alternative OS for Nokia DTC3 phones

    none of those projects successful so far

    Harald Welte and Steve Markgraf OsmocomBB

  • GSM/3G Network Security IntroductionSecurity Problems and the Baseband

    OsmocomBB ProjectSummary

    The closed GSM industrySecurity implicationsThe GSM networkThe GSM protocols

    Security analysis of GSMThe bootstrapping process

    Read GSM specs day and night (> 1000 PDF documents)Gradually grow knowledge about the protocolsObtain actual GSM network equipment (BTS, MS tester, ...)Try to get actual protocol traces as examplesStart a complete protocol stack implementation fromscratchFinally, go and play with GSM protocol security

    Harald Welte and Steve Markgraf OsmocomBB

  • GSM/3G Network Security IntroductionSecurity Problems and the Baseband

    OsmocomBB ProjectSummary

    The closed GSM industrySecurity implicationsThe GSM networkThe GSM protocols

    The GSM networkSource: Wikipedia, User Tsaitgaist, Licensed under GPLv3

    Harald Welte and Steve Markgraf OsmocomBB

  • GSM/3G Network Security IntroductionSecurity Problems and the Baseband

    OsmocomBB ProjectSummary

    The closed GSM industrySecurity implicationsThe GSM networkThe GSM protocols

    GSM network components

    The BSS (Base Station Subsystem)MS (Mobile Station): Your phoneBTS (Base Transceiver Station): The cell towerBSC (Base Station Controller): Controlling up to hundredsof BTS

    The NSS (Network Sub System)MSC (Mobile Switching Center): The central switchHLR (Home Location Register): Database of subscribersAUC (Authentication Center): Database of authenticationkeysVLR (Visitor Location Register): For roaming usersEIR (Equipment Identity Register): To block stolen phones

    Harald Welte and Steve Markgraf OsmocomBB

  • GSM/3G Network Security IntroductionSecurity Problems and the Baseband

    OsmocomBB ProjectSummary

    The closed GSM industrySecurity implicationsThe GSM networkThe GSM protocols

    GSM network interfaces

    Um: Interface between MS and BTSthe only interface that is specified over radio

    A-bis: Interface between BTS and BSCA: Interface between BSC and MSCB: Interface between MSC and other MSC

    GSM networks are a prime example of an asymmetricdistributed network, very different from the end-to-endtransparent IP network.

    Harald Welte and Steve Markgraf OsmocomBB

  • GSM/3G Network Security IntroductionSecurity Problems and the Baseband

    OsmocomBB ProjectSummary

    The closed GSM industrySecurity implicationsThe GSM networkThe GSM protocols

    GSM network protocolsOn the Um interface

    Layer 1: Radio Layer, TS 04.04Layer 2: LAPDm, TS 04.06Layer 3: Radio Resource, Mobility Management, CallControl: TS 04.08Layer 4+: for USSD, SMS, LCS, ...

    Harald Welte and Steve Markgraf OsmocomBB

  • GSM/3G Network Security IntroductionSecurity Problems and the Baseband

    OsmocomBB ProjectSummary

    TheoryThe Baseband

    Known GSM security problemsScientific papers, etc

    No mutual authentication between phone and networkleads to rogue network attacksleads to man-in-the-middle attacksis what enables IMSI-catchers

    Weak encryption algorithmsEncryption is optional, user does never know when itsactive or notDoS of the RACH by means of channel request floodingRRLP (Radio Resource Location Protocol)

    the network can obtain GPS fix or even raw GSM data fromthe phonecombine that with the network not needing to authenticateitself

    Harald Welte and Steve Markgraf OsmocomBB

  • GSM/3G Network Security IntroductionSecurity Problems and the Baseband

    OsmocomBB ProjectSummary

    TheoryThe Baseband

    Known GSM security problemsThe Baseband side

    GSM protocol stack always runs in a so-called basebandprocessor (BP)What is the baseband processor

    Typically ARM7 (2G/2.5G phones) or ARM9 (3G/3.5Gphones)

    Runs some RTOS (often Nucleus, sometimes L4)No memory protection between tasks

    Some kind of DSP, model depends on vendorRuns the digital signal processing for the RF Layer 1Has hardware peripherals for A5 encryption

    The software stack on the baseband processoris written in C and assemblylacks any modern security features (stack protection,non-executable pages, address space randomization, ..)

    Harald Welte and Steve Markgraf OsmocomBB

  • GSM/3G Network S