Introduction to BLE hacking
2023-10-14 , Hochschule München - R0.009

Bluetooth is an ubiquitous protocol nowadays, embedded in almost every modern cell phone and generally used for low consumption embedded devices and IOT. In this workshop we will learn the basics about the protocol and how to automate reconnaissance of devices, services and characteristics. The workshop is based on an open source CTF.


Pre-requisites:

  • Laptop, ideally running linux, with support for BLE and/or external BLE dongle. (We have a couple Raspberry PI you can borrow for the duration of the workshop. Subject to availability)
  • VsCode or any modern text editor (to code C and python)
  • Basic python understanding (Any general programming understanding is enough)
  • [OPTIONAL] ESP32 to flash your own target device (This is not required as we will provide targets)

Contents

Introduction to BLE protocol

What is BLE?
Short differentiation between bluetooth classic and BLE
GAP, GATT, ATT, SMP
Explain protocols on actual wireshark traces (?)

Using BLEAK - https://github.com/hbldh/bleak

  • What is bleak?
  • What is a GATT client?
  • Installation
  • Flashing the target device - ESP32 + esptool.py
  • Exercise 0x01: Using Bleak to identify BLE devices
  • Exercise 0x02: Listing BLE services
  • Exercise 0x03: Walking the BLE service tree. GATT

Bluetooth Attacks / Sniffing

  • Sniffing on your device: Android HCI Snoop logs Wireshark)
  • Sniffing without access to any of the devices: Sniffle (Demo works, but probably no hands-on activity for the participants?)
  • (Maybe MITM attacks with active injection such as with mirage. But there was Bsides talk last year already)
  • BLE Encryption https://github.com/mikeryan/crackle

Using Bless - https://github.com/kevincar/bless

  • Recap: What is a GATT server?
  • Implementing advertising
  • Emulating iBeacon:
    • Airtags

Optional section: Creating firmware


Which keywords describe your submission?:

BLE, wireless, IOT

N00b learning to hack.

Daniel Schwendner is a DevOps Engineer with a strong passion for Cyber Security. With a background in mobile application security and hardware security, he participates in bug bounty hunting and shares his security knowledge online.