base jumping - github pages...base jumping attacking the gsm baseband and base station...

69
Base Jumping Attacking the GSM baseband and base station [email protected] Tuesday, 20 July 2010

Upload: others

Post on 24-Apr-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

Base Jumping

Attacking the GSM baseband and base station

[email protected]

Tuesday, 20 July 2010

Page 2: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

Overview

❖GSM❖Base Station❖Base Band❖Conclusion

2

Tuesday, 20 July 2010

Page 3: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

GSM: The Protocol

3

Tuesday, 20 July 2010

Page 4: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

Documents

4

❖Dozens of docs❖Thousands of pages❖Important one (defines L3)

❖GSM 04 08

Tuesday, 20 July 2010

Page 5: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

5

Tuesday, 20 July 2010

Page 6: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

6

Tuesday, 20 July 2010

Page 7: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

7

Logical Channels

Broadcast Channels (BCH)     Broadcast Control Channel (BCCH)     Frequency Correction Channel (FCCH)     Synchronization Channel (SCH)     Cell Broadcast Channel (CBCH)

Tuesday, 20 July 2010

Page 8: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

Logical Channels, cont.❖ Common Control Channels (CCCH)     Paging Channel (PCH)     Random Access Channel (RACH)     Access Grant Channel (AGCH)

8

Tuesday, 20 July 2010

Page 9: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

Logical Channels, cont.

Standalone Dedicated Control Channel (SDCCH)     Associated Control Channel (ACCH)     Fast Associated Control Channel (FACCH)     Slow Associated Control Channel (SACCH)

9

Tuesday, 20 July 2010

Page 10: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

GSM Channels

10

❖Opening a channel is slow❖Can take seconds

❖Specific channels for specific uses

Tuesday, 20 July 2010

Page 11: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

Opening a channel

11

Tuesday, 20 July 2010

Page 12: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

12

Tuesday, 20 July 2010

Page 13: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

12

RACH

Tuesday, 20 July 2010

Page 14: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

12

RACH

AGCH

Tuesday, 20 July 2010

Page 15: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

12

RACH

AGCH

LCH

Tuesday, 20 July 2010

Page 16: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

13

Tuesday, 20 July 2010

Page 17: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

13

PCH

Tuesday, 20 July 2010

Page 18: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

13

RACH

PCH

Tuesday, 20 July 2010

Page 19: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

13

RACH

PCH

AGCH

Tuesday, 20 July 2010

Page 20: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

13

RACH

PCH

AGCH

LCH

Tuesday, 20 July 2010

Page 21: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

14

MS

BTS

BTSBSCMSC

ARFCN

Tuesday, 20 July 2010

Page 22: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

15

Base Transceiver StationBTS

Base StationController

BSC

Mobile StationController

MSC

Mobile StationMS

Base Station Sub-SystemBSS

Tuesday, 20 July 2010

Page 23: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

16

MSBSSMSCHLR

VLR

Tuesday, 20 July 2010

Page 24: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

Mobile Identifiers

17

Tuesday, 20 July 2010

Page 25: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

18

Tuesday, 20 July 2010

Page 26: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

18

IMSI

Tuesday, 20 July 2010

Page 27: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

18

IMSI

IMEI

Tuesday, 20 July 2010

Page 28: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

GSM Attacks

19

Tuesday, 20 July 2010

Page 29: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

20

Tuesday, 20 July 2010

Page 30: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

RACHell

21

❖Request channel allocation❖Flood the BSS with requests❖First announced by Dieter Spaar at DeepSec

❖Prevent everyone from using that cell

Tuesday, 20 July 2010

Page 31: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

22

RACHell

Tuesday, 20 July 2010

Page 32: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

22

RACHell

Tuesday, 20 July 2010

Page 33: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

22

RACHell

Tuesday, 20 July 2010

Page 34: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

22

RACHell

Tuesday, 20 July 2010

Page 35: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

22

RACHell

Tuesday, 20 July 2010

Page 36: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

22

RACHell

Tuesday, 20 July 2010

Page 37: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

22

?

RACHell

Tuesday, 20 July 2010

Page 38: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

23

Tuesday, 20 July 2010

Page 39: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

23

Our Target

Tuesday, 20 July 2010

Page 40: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

Demo - RACHell

24

Tuesday, 20 July 2010

Page 41: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

IMSI Flood

❖Send IMSI ATTACH messages❖pre-authentication❖Overload the HLR/VLR infrastructure❖Prevent everyone using the network

25

Tuesday, 20 July 2010

Page 42: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

26

IMSI Flood

Tuesday, 20 July 2010

Page 43: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

26

IMSI Flood

Tuesday, 20 July 2010

Page 44: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

26

IMSI Flood

Tuesday, 20 July 2010

Page 45: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

26

IMSI Flood

Tuesday, 20 July 2010

Page 46: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

26

IMSI Flood

Tuesday, 20 July 2010

Page 47: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

26

IMSI Flood

Tuesday, 20 July 2010

Page 48: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

26

IMSI Flood

Tuesday, 20 July 2010

Page 49: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

How hard to get an IMSI?

27

Tuesday, 20 July 2010

Page 50: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

IMSI DETACH

❖Send multiple Location Update Requests including a spoofed IMSI❖Unauthenticated

❖Prevent SIM from receiving calls and SMS

❖Discovered by Sylvain Munaut

28

Tuesday, 20 July 2010

Page 51: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

29

IMSI DETACH

Tuesday, 20 July 2010

Page 52: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

29

IMSI DETACH

Tuesday, 20 July 2010

Page 53: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

29

IMSI DETACH

Tuesday, 20 July 2010

Page 54: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

29

IMSI DETACH

Tuesday, 20 July 2010

Page 55: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

29

IMSI DETACH

Tuesday, 20 July 2010

Page 56: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

29

IMSI DETACH

Tuesday, 20 July 2010

Page 57: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

29

IMSI DETACH

Tuesday, 20 July 2010

Page 58: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

Baseband Fuzzing

30

Tuesday, 20 July 2010

Page 59: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

31

=+

How to make a smartphone

Tuesday, 20 July 2010

Page 60: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

32

Two separate computers

Tuesday, 20 July 2010

Page 61: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

32

Two separate computers

Tuesday, 20 July 2010

Page 62: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

33

Baseband

❖Controls the radio❖Separate CPU and code base❖RTOS❖Written in C❖Typically legacy code base (decades)

Tuesday, 20 July 2010

Page 63: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

Coseinc GSM FuzzFarm❖OpenBTS based fuzzer delivery engine

❖Targetting❖ iPhone❖HTC (Android)❖Palm Pre❖Blackberry❖Nokia

34

Tuesday, 20 July 2010

Page 64: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

35

Tuesday, 20 July 2010

Page 65: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

Conclusion

36

Tuesday, 20 July 2010

Page 66: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

GSM Trouble

37

❖GSM is no longer a walled garden❖GSM spec has security problems❖Expect many more issues as OSS reduces costs for entry

Tuesday, 20 July 2010

Page 67: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

Future work

❖More GSM stack fuzzing❖Next gen protocol stacks

38

Tuesday, 20 July 2010

Page 68: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

39

Thanks to

Harald Walte, Osmocom-bb & OpenBTS

Tuesday, 20 July 2010

Page 69: Base Jumping - GitHub Pages...Base Jumping Attacking the GSM baseband and base station grugq@coseinc.com Tuesday, 20 July 2010 Overview GSM Base Station Base Band Conclusion 2 Tuesday,

Questions?

40

Tuesday, 20 July 2010