DissPair

DissPair

Audit Bluetooth Classic and BLE devices: RFCOMM, GATT and advertisements

ThreadpoolX and Tapadyuti Baral Security System

Description

DissPair is an open-source Bluetooth security toolkit for auditing Bluetooth Classic (RFCOMM) and Bluetooth Low Energy (BLE) devices you own or are authorized to test. Instead of trusting what a device advertises, it actively probes how the device really behaves. Two CVEs have been found with it (CVE-2026-31280, CVE-2025-67133).

Discovery

  • Scan Classic (BR/EDR) and BLE devices, plus already-paired devices
  • Device class tags, RSSI and filters for unnamed and paired devices

Bluetooth Classic (RFCOMM)

  • Sweep RFCOMM channels 1-30 and see which accept unpaired (insecure) or paired connections
  • Send AT commands and OBEX payloads, with automatic HFP handshake handling
  • Flood test to stress a channel's buffer handling

BLE advertisement inspector (GAP)

  • Decodes every advertising field: flags, service UUIDs, names, TX power, appearance, service and manufacturer data
  • Vendor formats: Apple Continuity (iBeacon, AirDrop, Handoff, Nearby Info, Find My), Eddystone, Google Fast Pair
  • Privacy checks: public vs rotating addresses, identifiers in device names, tracker beacons (Find My, SmartTag, Tile)
  • Advertising interval estimate, RSSI graph, legacy/extended PDU, PHY and connectable flags

BLE GATT analysis

  • Full service and characteristic map with standard and vendor names
  • Read and write (with or without response), hex or text
  • Subscribe to notifications and indications with a live log
  • Automatic maximum MTU negotiation

GATT access audit

  • One tap tests what every characteristic allows without pairing: read, subscribe and write
  • Results marked OPEN, AUTH, ENC, AUTHZ, KEY or DENY
  • Optional write test: echo the value just read, or commit a chosen payload
  • Exportable text report for vendor disclosure

Follows the system light or dark theme. A companion Linux CLI is available in the source repository.

Warning: some features (flooding, payload injection, writes) can disrupt or reconfigure the target device. Use only on hardware you own or have explicit permission to test.

What’s new (2.2.0)

New in 2.2.0:
- Advertisement inspector (ADV): decodes advertising data, Apple Continuity, Eddystone, Fast Pair; privacy and tracker checks, interval and RSSI graph
- GATT: notifications, write-without-response, MTU, named services
- GATT access audit with optional write probes and exportable report
- System light/dark theme, new icon
- Back returns to the main screen

Versions

Version Date Size Requires Android Download
2.2.0 current
5bb6242b34e17ca2…
2026-10-15 12 MB API 24
2.1.2
87bece1869bbba57…
2026-06-18 12 MB API 24

Permissions

What the app asks the system for. Android only grants sensitive access after you confirm it.

  • BluetoothConnect to Bluetooth devices.
  • BLUETOOTH_ADMIN
  • Precise locationDetermine the location via GPS.
  • Approximate locationDetermine the location via the network.
  • Bluetooth scanSearch for nearby Bluetooth devices.
  • Bluetooth connectionConnect to paired Bluetooth devices.
  • disspair.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

Comments