Bluetooth-Hacking - Mike Ryanhardwear
Bluetooth-Hacking - Mike Ryanhardwear
Hacking:
Tools and Techniques
Mike Ryan
Founder
ICE9 Consulting
@mpeg4codec
#RSAC
Who is this talk for?
Bluetooth device developers
Penetration testers
Managers
Structure of the Talk
Overview of Bluetooth
Case Studies
Bluetooth and the
Reverse Engineering Process
Reverse Engineering Process
???
2. Capture the data sent via Bluetooth
3. Analyze
Sniffing Bluetooth is Hard
Pros: 100% reliable
Cons: $20,000
≈
[various layers] TCP
L2CAP IP
Link Layer Ethernet LL
PHY Ethernet PHY
Host
Bluetooth Overview
App Layer
[various layers]
L2CAP HCI
Link Layer
Controller
PHY
Logging HCI
OS X packet logger
Linux Logging
???
Capture the data sent via Bluetooth
✅
2.
3. Analyze
Case Studies
Case Study 1: BLE Heart Rate Monitor
82
btatt
bthci_cmd.le_long_tem_key
No encryption
Case Study 1: Conclusions
§ Wireshark is incredible
§ Getting Bluetooth logs is practical
Case Study 2: BLE Blood Pressure Monitor
Write characteristic: Phone → Device
Notify characteristic: Device → Phone
75 00 51 00 117 / 81
Conclusions: BP Monitor
A2DP? HFP?
Reasons
80 77 DD AF magic number
XX opcode
YY sequence number
ZZ ZZ length (16 bit little endian)
... data
CC CC checksum
“Educated guess”
Conclusions: Headset
+ ==
Bluetooth Hacking: Tools and Techniques – Mike Ryan
tx 02be01013030310000000000000000000000008f ....001.............
tx 02bf0101000000000000000000000000000000bf ....................
tx 02ea0101000000000000000000000000000000ea ....................
tx 02c50101303000000000000000000000000000c5 ....00..............
tx 02ea0101000000000000000000000000000000ea ....................
tx 02b9010131304669727374206e616d65000000ee ....10First name....
tx 02b302013130313034666f6f6f31303b3939388f ....10104fooo10;998.
tx 02b3020238373737373f30303330300000000087 ....87777?00300.....
tx 02ea0101000000000000000000000000000000ea ....................
tx 02c50101313000000000000000000000000000c4 ....10..............
02 XX YY ZZ .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. WW
XX – opcode
YY – total number of messages
ZZ – current message
WW – checksum
Conclusions: Credit Card
No App!
1. Launch Ubertooth
2. Connect remote to board
3. If connection not followed, go to 1
4. Do stuff with board
5. Analyze
No Encryption
RC00000 idle
RC02002 dead man’s trigger
RC02327
RC027D6
increasing throttle
RC02AA6
RC032F4
Conclusions: Skateboard
§ No encryption
§ Problems with home made encryption
§ Debug interfaces left behind
§ Incomplete threat modeling
Conclusions
Affordable
Case Studies
Call to Action
Go forth and hack some Bluetooth
Bluetooth Hacking:
Tools and Techniques
https://ice9.us/
mike@ice9.us