Hacking Bluetooth
Hacking Bluetooth
Hacking Bluetooth
https://www.mypublicinbox.com/PabloGonzalez
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 2
whoami $>
Álvaro Núñez
Graduado en Imagen y Sonido
Master Seguridad Informática
https://www.mypublicinbox.com/AlvaroNunezRomero
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 3
¿De qué va esto?
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 4
Introducción BLE
(Bluetooth Low Energy)
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 5
Introducción BLE (Bluetooth Low Energy)
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 6
BLE vs BT Classic
https://www.everythingrf.com/community/what-is-the-difference-between-bluetooth-5-0-
bluetooth-low-energy-bluetooth-v4-2-and-classic-bluetooth
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 7
BLE Stack
https://www.mathworks.com/help/comm/ug/bluetooth-protocol-stack.html
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 8
El ámbito de juego de BLE
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 9
El ámbito de juego de BLE
https://nis-summer-school.enisa.europa.eu/2018/cources/
IOT/nis-summer-school-damien-cauquil-BLE-workshop.pdf
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 10
Access Address
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 11
¿Cómo se realiza el salto entre canales?
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 12
Salta conmigo: Algoritmos de salto
• Algoritmo 2 (versión 5)
• Basado en un pseudogenerador de número
aleatorios
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 13
Channel Map
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 14
BLE Packet
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 15
ADV PDU
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 16
PDU Type
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 17
CONNECT_REQ
Interval * 1.25 ms
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 18
Precedentes
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 19
La información al alcance de la mano
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 21
La información al alcance de la mano
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 22
La información al alcance de la mano
https://github.com/satcar77/miband4
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 23
Trackers
• Vulnerabilidades en dispositivos
• TrackR Bravo
• iTrack Easy
• Zizai Tech Nut
• Transmisión de contraseña en plano
• Exposición del ID del tracker
• Acceso no autenticado al servicio basado en la nube
• Pareo no autenticado
• …
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 24
Trackers
https://blog.rapid7.com/2016/10/25/multiple-bluetooth-low-energy-ble-tracker-vulnerabilities/
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 25
BluedIoT
• Cámaras 360fly 4k
• Gerard Fuguet
• La contraseña de configuración del AP viajaba en
texto plano (se configuraba por BLE)
• CVE-2017-8403
• Ver REST API para conocer los comandos
https://www.elladodelmal.com/2017/05/bluediot-como-hackear-360fly-action.html
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 26
Entre ruedas anda el juego
CVE-2019-12500
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 27
Entre ruedas anda el juego
https://github.com/CamiAlfa/M365-BLE-PROTOCOL
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 29
Entre ruedas anda el juego
https://github.com/CamiAlfa/M365-BLE-PROTOCOL
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 30
Sweyntooth
• Familia de 12 vulnerabilidades
• Se encuentra en la implementación de BLE en el SDK
• Vendedores afectados
• Texas Instruments
• NXP
• Cypress
• Dialog Semiconductors
• Microchip
• STMicroelectronics
• Telink Semiconductor
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 32
Sweyntooth
• Crash
• Para la comunicación o deja de funcionar
• Deadlock
• El dispositivo puede congelarse y dejar de
funcionar correctamente
• Bypass security
• Acceso a funciones del dispositivo accesibles solo
a través de un usuario autorizado
https://www.zdnet.com/article/unknown-number-of-bluetooth-le-devices-impacted-by-sweyntooth-vulnerabilities/
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 33
Sweyntooth
https://asset-group.github.io/disclosures/sweyntooth/
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 34
Sweyntooth
https://asset-group.github.io/disclosures/sweyntooth/
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 35
Sweyntooth
https://asset-group.github.io/disclosures/sweyntooth/
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 36
Evaluación
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 38
Ataques
• Sniffing
• Replay
• Hijacking
• Jamming
• MITM
• Cifrado
• Contraseñas en texto plano
• Apps no ofuscadas/hardcodeadas
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 39
Sniffing
• Escuchas pasivas
• Conocer lo que viaja por el aire
• btlejack
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 40
Replay
https://gattack.io/
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 41
Replay
• Ataque de reproducción
• Se captura una señal y se vuelve a mandar la
misma información
• Cualquier herramienta que pueda leer y escribir
en características BLE sirve: Bettercap, gatttool, nRF
Connect (móvil)…
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 42
Hijacking
• Secuestro de una conexión existente
• btlejack
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 43
Jamming
https://gattack.io/
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 45
Jamming
• Interferencias en la señal
• Impide que la señal pueda llegar a su destino
• btlejack
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 46
MITM
https://gattack.io/
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 47
MITM
• Descubrimiento del dispositivo víctima (servicios,
características y advertisement)
• Conexión con el dispositivo víctima para que no se
anuncie más
• Anunciar el mismo dispositivo y redirigir los datos
cuando se tenga una nueva conexión
• gattack
• btlejuice
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 48
Cifrado
• Si tenemos una captura con un evento de pareo
BLE se puede hacer fuerza bruta para obtener el
TK (Temporary Key)
• Posteriormente, se pueden obtener el STK (Short
Term Key) y el LTK (Long Term Key)
• Con las claves STK y LTK, todas las
comunicaciones entre el maestro y el esclavo
pueden ser descifradas
• crackle
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 49
Cifrado
• Trama de paquetes
• Pairing Request
• Pairing Response
• Pairing Confirm (x2)
• Pairing Random (x2)
• LL_ENC_REQ
• LL_ENC_RSP
• LL_START_ENC_REQ
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 50
Contraseñas en texto plano
https://blog.rapid7.com/2016/10/25/multiple-bluetooth-low-energy-ble-tracker-vulnerabilities/
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 51
Apps no ofuscadas
https://pickeroflocks.com/how-to-hack-smart-lock/
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 52
CrackLE
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 53
Fortificación
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 55
Fortificación
• Utilización de canales seguros (cifrados)
• Firma de paquetes
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 56
Conclusiones
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 57
Conclusiones
Hackeando el mundo exterior a través de Bluetooth Low-Energy (BLE) Rooted CON 2020 58
Muchas gracias
@pablogonzalezpe
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
@toolsprods 59