Hacking Bluetooth Enabled Mobile Phones and Beyond - Full Disclosure
Hacking Bluetooth Enabled Mobile Phones and Beyond - Full Disclosure
Hacking Bluetooth Enabled Mobile Phones and Beyond - Full Disclosure
Who we are
Adam Laurie
CSO of The Bunker Secure Hosting Ltd. Co-Maintainer of Apache-SSL DEFCON Staff/Organiser Maintainer and core developer of the Linux Bluetooth Stack BlueZ Security Researcher Founder of trifinite.org
Bluetooth Hacking Full Disclosure @ 21C3
Marcel Holtmann
Martin Herfurt
Outline (1)
Bluetooth Introduction History Technology Overview The BlueSnarf Attack The HeloMoto Attack The BlueBug Attack Bluetooone Long-Distance Attacking
Outline (2)
Blooover Blueprinting DOS Attacks Sniffing Bluetooth with hcidump Conclusions Lessons tought Feedback / Discussion
Wire replacement technology Low power Short range 10m - 100m 2.4 GHz 1 Mb/s data rate
Bluetooth SIG
Trade Association Founded 1998 Owns & Licenses IP Individual membership free Promoter members: Agere, Ericsson, IBM, Intel, Microsoft, Motorola, Nokia and Toshiba Consumer http://www.bluetooth.com Technical http://www.bluetooth.org
History (1)
Bluejacking
Early adopters abuse 'Name' field to send message Now more commonly send 'Business Card' with message via OBEX 'Toothing' - Casual sexual liasons
History (2)
Bluesnarfing
Wireless Technologies Congress, Sindelfingen, Germany Bugtraq, Full Disclosure Houses of Parliament London Underground
History (3)
Bluesnarfing
Appointments Images Names, Addresses, Numbers PINs and other codes Images
Phone Book
History (4)
Bluebugging
CeBIT Hanover
Create unauthorised connection to serial profile Full access to AT command set Read/Write access to SMS store Read/Write access to Phone Book
History (5)
Embedded devices New process for telecom industry Firmware updates available 6310i tested OK
Motorola committed to fix known vulnerabilities Sony Ericsson publicly stated all problems fixed
Bluetooth Technology
ISM band at 2.4 GHz 79 channels 1600 hops per second Multi-Slot packets
Bluetooth Piconet
One master per piconet Up to seven active slaves Over 200 passive members are possible Master sets the hopping sequence Transfer rates of 721 Kbit/sec
Bluetooth Scatternet
Master in one and slave in another piconet Slave in two different piconets Only master in one piconet Scatternet support is optional
Bluetooth Architecture
Hardware layer
Radio, Baseband and Link Manager Access through Host Controller Interface
Profile implementations
Bluetooth Stack
Application specific security mechanisms
Bluetooth Security
All security routines are inside the Bluetooth chip Nothing is transmitted in plain text
Interface for link manager security routines Part of the HCI specification Easy interface No further encryption of pin codes or keys
Security Modes
Security mode 1
Security mode 2
Security mode 3
AVM BlueFRITZ! AP-DSL HBH-10 Aficio AP600N ELSA Vianect Blue ISDN Nokia 6210 Ericsson T39m Anycom LAN Access Point
HCI and L2CAP SDP, RFCOMM, BNEP, CMTP, HIDP, HCRP and AVDTP OBEX and CAPI
Security Commands
Pairing Functions
Events
Commands
First connection
(1) HCI_Pin_Code_Request (2) HCI_Pin_Code_Request_Reply (3) HCI_Link_Key_Notification
Further connections
(1) HCI_Link_Key_Request (2) HCI_Link_Key_Request_Reply (3) HCI_Link_Key_Notification (optional)
BlueSnarf
obexapp (FreeBSD) PULL known objects instead of PUSH No authentication IrMC (Specifications for Ir Mobile Communications)
e.g. telecom/pb.vcf
Ericsson R520m, T39m, T68 Sony Ericsson T68i, T610, Z1010 Nokia 6310, 6310i, 8910, 8910i
Bluetooth Hacking Full Disclosure @ 21C3
HeloMoto
Requires entry in 'Device History' OBEX PUSH to create entry Connect RFCOMM to Handsfree or Headset
Got inspired from Adam's BlueSnarf which has been written about on slashdot Tried to figure out how Adam did it (no purposebuilt tools available) Found BlueBug
Booth close to the restrooms -> many people there Even Policemen ;)
Got on slashdot at the end of March 2004 Teamed up with Adam in April 2004 Various media citations Presentation at Blackhat and DEFCON in August 2004 Full Disclosure at 21C3 in December 2004 (now!)
Bluetooth Hacking Full Disclosure @ 21C3
As mentioned earlier...
BlueBug is based on AT Commands (ASCII Terminal) Very common for the configuration and control of telecommunications devices High level of control...
Call control (turning phone into a bug) Sending/Reading/Deleting SMS Reading/Writing Phonebook Entries Setting Forwards -> causing costs on the vulnerable phones!
How come!?
Various Manufacturers poorly implemented the Bluetooth security mechanisms Unpublished services on RFCOMM channels
Nokia has quite a lot of models (6310, 6310i, 8910, 8910i,...) Sony Ericsson T86i, T610, ... Motorola has similar problems (see HeloMoto)
Bluetooth Hacking Full Disclosure @ 21C3
Bluetooone
Enhancing the range of a Bluetooth dongle by connecting a directional antenna -> as done in the Long Distance Attack Original idea from Mike Outmesguine (Author of Book: Wi-Fi Toys) Step by Step instruction on trifinite.org
Beginning of August 2004 (right after DEFCON 12) Experiment in Santa Monica California Modified Class-1 Dongle Snarfing/Bugging Class-2 device (Nokia 6310i) from a distance of 1,78 km (1.01 miles)
Blooover - Bluetooth Wireless Technology Hoover Proof-of-Concept Application Educational Purposes only Phone Auditing Tool Running on Java
J2ME MIDP 2.0 Implemented JSR-82 (Bluetooth API) Nokia 6600, Nokia 7610, Nokia 6670, ... Series 60 Siemens S65 SonyEricsson P900 ...
Reading phonebooks Writing phonebook entries Reading/decoding SMS stored on the device (buggy..) Setting Call forward (predef. Number) +49 1337 7001 Initiating phone call (predef. Number) 0800 2848283
Blueprinting is fingerprinting Bluetooth Wireless Technology interfaces of devices This work has been started by Collin R. Mulliner and Martin Herfurt Relevant to all kinds of applications
Released paper and tool at 21C3 in December 2004 in Berlin (again, now!)
Bluetooth Hacking Full Disclosure @ 21C3
Blueprinting - How
RecordHandle RFCOMM channel number Adding it all up (RecHandle1*Channel1)+ (RecHandle2*Channel2)+...+(RecHandlen*Channeln) First three bytes refer to manufacturer (IEEE OUI)
BlueSmack
Signal channel request/response L2CAP signal MTU is unknown No open L2CAP channel needed
BlueSmack
< HCI Command: Create Connection (0x01|0x0005) plen 13 0000: b6 1e 33 6d 0e 00 18 cc 02 00 00 00 01 > HCI Event: Command Status (0x0f) plen 4 0000: 00 01 05 04 > HCI Event: Connect Complete (0x03) plen 11 0000: 00 29 00 b6 1d 32 6d 0e 00 01 00 ..2m......... .... .)...2m....
< ACL data: handle 0x0029 flags 0x02 dlen 28 L2CAP(s): Echo req: dlen 20 0000: 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 EFGHIJKLMNOPQRST 0010: 55 56 57 58 UVWX > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 29 00 01 00 .)... > ACL data: handle 0x0029 flags 0x02 dlen 28 L2CAP(s): Echo rsp: dlen 20 0000: 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 EFGHIJKLMNOPQRST 0010: 55 56 57 58 UVWX < HCI Command: Disconnect (0x01|0x0006) plen 3 0000: 29 00 13 > HCI Event: Command Status (0x0f) plen 4 0000: 00 01 06 04 > HCI Event: Disconn Complete (0x05) plen 4 0000: 00 29 00 16 ).. .... .)..
Conclusions
Specifics under NDA Security Expert Group mailing list bluetooth.org more open areas
trifinite.org
trifinite.group
Adam Laurie (the Bunker Secure Hosting) Marcel Holtmann (BlueZ) Collin Mulliner (mulliner.org) Tim Hurman (Pentest) Mark Rowe (Pentest) Martin Herfurt (trifinite.org) Spot (Sony)
Contact us via [email protected] (group alias for Adam, Marcel and Martin)