Captura de una conexión Bluetooth

Esta técnica consiste en la captura de una conexión con el mismo dispositivo con el que se realiza la conexión Bluetooth. En resumen, el proceso consiste en capturar los paquetes intercambiados entre el “Host” y el “Controller” de un dispositivo mientras este se conecta a otro. El protocolo usado para intercambiar mensajes entre el controlador y el “Host” es HCI (Host Controller Interface). Todas las herramientas listadas a continuación sirven para capturar y/o almacenar paquetes del protocolo HCI en uno u otro formato.

Dado que esta técnica solo captura el protocolo HCI, muchos de los paquetes de la capa “Link Layer” intercambiados entre controladores no estarán presentes en la captura. Existen mecanismos de depuración mediante los cuales es posible capturar estos paquetes, pero solo están disponibles en hardware específico. Consulte BSAM-RES-06 (Modo depuración en controladores Bluetooth) para más información.

Esta técnica requiere herramientas y procedimientos que dependen del sistema operativo en uso. A continuación, se listan algunas alternativas para los sistemas operativos más comunes.

Captura Bluetooth en Linux

En Linux existen distintas alternativas para capturar paquetes de conexiones establecidas con nuestra máquina. Casi todas las máquinas Linux con soporte para Bluetooth tienen la pila BlueZ instalada por lo que la herramienta btmon es una buena alternativa para hacer capturas sin necesidad de instalar muchas dependencias. Wireshark es una de las alternativas más atractivas ya que cuenta con la posibilidad de diseccionar paquetes gráficamente. Para los casos en los que es necesario interactuar de manera programática con los paquetes o realizar capturas automatizadas, Scapy es una buena alternativa.

Referencias:

Captura Bluetooth en Windows

Windows también ofrece una herramienta nativa para el volcado de paquetes de Bluetooth conocida como BTVS o Bluetooth Virtual Sniffer con capacidad para volcar en formato Wireshark para su posterior análisis. Wireshark también soporta hacer un volcado de paquetes Bluetooth directamente en Windows.

Referencias:

Captura Bluetooth en MacOS, iOS, tvOS & watchOS

En las plataformas de Apple, el único método soportado para el volcado de paquetes Bluetooth es la herramienta de depuración PacketLogger. Es compatible con todas las plataformas de Apple y permite exportar las capturas posteriormente a un formato compatible con Wireshark.

Referencias:

Captura Bluetooth en Android

Android soporta de manera nativa la exportación de logs de comunicaciones mediante un mecanismo conocido como btsnoop. Existen scripts de Frida como Frida BLEMon que permiten instrumentar llamadas del API de Bluetooth para generar volcados de comunicaciones Bluetooth.

Referencias: