Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
btlejack — Navaja suiza de Bluetooth Low Energy | Kitploit
Herramientas/GitHubGitHub/virtualabs/btlejack
Seguridad BluetoothExplotaciónSeguridad InalámbricaHacking de HardwarePruebas de PenetraciónSeguridad de HardwareSeguridad de Hardware e IoTTop en Seguridad Bluetooth #2Top en Hacking de Hardware #15Top en Seguridad de Hardware e IoT #14
2.1k20922hace 2 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
Top en Seguridad de Hardware #17
GitHubvirtualabs/btlejack

btlejack

Navaja suiza de Bluetooth Low Energy

Ver Repositorio

BtleJack: una navaja suiza de Bluetooth Low Energy #####################################################

Btlejack proporciona todo lo que necesitas para esnifar, interferir y secuestrar dispositivos Bluetooth Low Energy. Se basa en uno o más dispositivos BBC Micro:Bit <http://microbit.org/>_ que ejecutan un firmware dedicado. También es posible que quieras usar un sniffer Bluefruit LE de Adafruit <https://www.adafruit.com/product/2269>_ o un Kit de evaluación nRF51822 <https://www.waveshare.com/wiki/BLE400>_, ya que hemos añadido soporte para estos dispositivos.

La versión actual de esta herramienta (2.0) es compatible con BLE 4.x y 5.x. El soporte para BLE 5.x es limitado, ya que solo admite el PHY sin codificar de 1 Mbps y no admite actualizaciones del mapa de canales.

Requisitos

Necesitas un sistema basado en UNIX (por ejemplo, una Raspberry Pi). Si usas el BBC Micro:Bit, necesitarás de uno a tres dispositivos Micro:Bit (se recomiendan tres dispositivos) y para cada dispositivo un puerto USB libre. El consumo de energía de un Micro:Bit es bastante bajo, por lo que puedes usar un solo puerto USB y un hub pasivo para alimentar las tres unidades recomendadas.

Si conectas 3 microbits al mismo tiempo en tu computadora, Btlejack podrá esnifar en todos los canales de publicidad y tendrá muchas más posibilidades de capturar la solicitud de conexión.

Cómo instalar

Primero, instala el software cliente de Python3 btlejack con Pip:

::

$ sudo pip3 install btlejack

Luego, conecta tu dispositivo Micro:Bit a tu computadora con un cable USB, monta el dispositivo de almacenamiento masivo asociado (el punto de montaje debe contener MICROBIT), y ejecuta el siguiente comando:

::

$ btlejack -i

Esto programará cada dispositivo Micro:Bit conectado a tu computadora y los dejará listos para usar con Btlejack. Usará la versión de firmware correcta para el software cliente actual, por lo que se recomienda encarecidamente realizar este procedimiento de instalación de firmware cada vez que actualices Btlejack.

Si estás usando un sniffer Bluefruit LE o un Kit de evaluación nRF51822, entonces usa un programador SWD externo para flashear tu dispositivo con este firmware <https://github.com/virtualabs/btlejack-firmware/raw/master/dist/btlejack-firmware-ble400.hex>_.

Mantén tus dispositivos conectados y ¡listo!

NOTA Esto solo funciona con sistemas compatibles con POSIX.

Cómo usar Btlejack

Usar Btlejack es bastante fácil. Btlejack puede:

  • usar varios dispositivos
  • esnifar una conexión BLE existente
  • esnifar nuevas conexiones BLE
  • interferir una conexión BLE existente
  • secuestrar una conexión BLE existente
  • exportar paquetes capturados a varios formatos PCAP

Especificar dispositivos a usar

Btlejack normalmente intenta autodetectar y usar dispositivos compatibles conectados (solo Micro:Bit por el momento), pero dado que el firmware puede ser hackeado o modificado para funcionar con otras placas basadas en nRF51822, proporciona una opción específica para permitir la compatibilidad con estos dispositivos.

La opción -d te permite especificar uno o más dispositivos con Btlejack. Ten en cuenta que esta opción deshabilitará la detección automática de dispositivos, y deberías agregar tantos dispositivos como necesites:

::

$ btlejack -d /dev/ttyACM0 -d /dev/ttyACM2 -s

Esnifar una conexión existente

Primero, encuentra una conexión existente para atacar con btlejack:

::

$ btlejack -s BtleJack version 1.1

[i] Enumerating existing connections ... [ - 54 dBm] 0xcd91d517 | pkts: 1 [ - 46 dBm] 0xcd91d517 | pkts: 2

El primer valor (en dBm) muestra la potencia de la señal, cuanto mayor sea este valor, mejor será la conexión esnifada.

El segundo valor (hex) es la dirección de acceso asociada, un valor de 32 bits que identifica un enlace entre dos dispositivos compatibles con Bluetooth Low Energy.

El último valor es el número de paquetes vistos con esta dirección de acceso. Cuanto mayor sea este valor, más probable será que la dirección de acceso correspondiente esté en uso.

Luego, usa la opción -f para seguir una conexión específica:

::

$ btlejack -f 0xdda4845e BtleJack version 1.1

[i] Detected sniffers:

Sniffer #0: fw version 1.1

[i] Synchronizing with connection 0xdda4845e ... ✓ CRCInit: 0x2a035e ✓ Channel Map = 0x1fffffffff ✓ Hop interval = 39 ✓ Hop increment = 15 [i] Synchronized, packet capture in progress ... LL Data: 02 07 03 00 04 00 0a 03 00 LL Data: 0a 08 04 00 04 00 0b 5a 69 70 LL Data: 02 07 03 00 04 00 0a 03 00 LL Data: 0a 08 04 00 04 00 0b 5a 69 70

Si estás usando más de 1 microbit, Btlejack paralelizará algunas de las operaciones de esnifado para acelerar la recuperación de los parámetros de conexión.

Esnifar nuevas conexiones

La opción -c soportada por btlejack te permite especificar la dirección BD objetivo, o puedes usar any para capturar cualquier nueva conexión creada.

::

$ btlejack -c any BtleJack version 1.1

[i] Detected sniffers:

Sniffer #0: version 1.1 Sniffer #1: version 1.1 LL Data: 05 22 df b4 6f 95 c5 55 c0 0a f6 99 23 40 1d 7b 2f 0a 9a f4 93 01 12 00 27 00 00 00 d0 07 ff ff ff ff 1f 0b [i] Got CONNECT_REQ packet from 55:c5:95:6f:b4:df to 40:23:99:f6:0a:c0 |-- Access Address: 0x0a2f7b1d |-- CRC Init value: 0x93f49a |-- Hop interval: 39 |-- Hop increment: 11 |-- Channel Map: 1fffffffff |-- Timeout: 20000 ms

LL Data: 03 09 08 0f 00 00 00 00 00 00 00 LL Data: 03 09 08 0f 00 00 00 00 00 00 00 LL Data: 0b 06 0c 08 0f 00 09 41 LL Data: 03 06 0c 07 1d 00 d3 07

o también puedes especificar la dirección BD objetivo:

::

$ btlejack -c 03:e1:f0:00:11:22

Interferir una conexión

Una vez que una conexión es identificada por su dirección de acceso, puedes interferirla usando la opción -j:

::

$ btlejack -f 0x129f3244 -j̀

Secuestrar una conexión BLE

Btlejack también puede secuestrar una conexión existente, usa la opción -t para hacerlo. Una vez secuestrada, Btlejack te dará un prompt que te permitirá interactuar con el dispositivo secuestrado.

Primero, secuestra una conexión existente:

::

$ btlejack -f 0x9c68fd30 -t -m 0x1fffffffff BtleJack version 1.1

[i] Using cached parameters (created on 2018-08-11 01:48:24) [i] Detected sniffers:

Sniffer #0: fw version 1.1

[i] Synchronizing with connection 0x9c68fd30 ... ✓ CRCInit: 0x81f733 ✓ Channel map is provided: 0x1fffffffff ✓ Hop interval = 39 ✓ Hop increment = 9 [i] Synchronized, hijacking in progress ... [i] Connection successfully hijacked, it is all yours \o/ btlejack>

Luego usa los siguientes comandos para interactuar con el dispositivo:

  • discover: realiza la enumeración de servicios y características, te dará toda la información sobre servicios y características.
  • write: escribe datos en un manejador de valor específico.
  • read: lee datos de un manejador de valor específico.
  • ll: envía un paquete sin procesar de la capa de enlace (para ninjas).

Comando discover ^^^^^^^^^^^^^^^^^^

El comando discover enviará y recibirá paquetes Bluetooth LE y recuperará todos los UUID de servicios y parámetros, así como los UUID de características y parámetros:

::

btlejack> discover start: 0001 end: 0005 start: 0014 end: 001a start: 0028 end: ffff Discovered services: Service UUID: 1801 Characteristic UUID: 2a05 | handle: 0002 | properties: indicate (20) \ value handle: 0003

Service UUID: 1800 Characteristic UUID: 2a04 | handle: 0019 | properties: read (02) \ value handle: 001a

Characteristic UUID: 2a00 | handle: 0015 | properties: read (02) \ value handle: 0016

Descargar herramienta