Skip to content
KitploitKITPLOIT
FerramentasBlog
Log in
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
btlejack — Canivete suíço para Bluetooth Low Energy | Kitploit
Ferramentas/GitHubGitHub/virtualabs/btlejack
Segurança BluetoothExploraçãoSegurança Sem FioHacking de HardwareTestes de PenetraçãoSegurança de HardwareSegurança de Hardware e IoTTop em Segurança Bluetooth nº2Top em Hacking de Hardware nº15Top em Segurança de Hardware e IoT nº14
2.1k20923há 2 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
Top em Segurança de Hardware nº17
GitHubvirtualabs/btlejack

btlejack

Canivete suíço para Bluetooth Low Energy

Ver Repositório

Btlejack: um novo canivete suíço para Bluetooth Low Energy ###########################################################

Btlejack fornece tudo que você precisa para farejar, atrapalhar e sequestrar dispositivos Bluetooth Low Energy. Ele depende de um ou mais dispositivos BBC Micro:Bit <http://microbit.org/>_ executando um firmware dedicado. Você também pode querer usar um Bluefruit LE sniffer da Adafruit <https://www.adafruit.com/product/2269>_ ou um Kit de Avaliação nRF51822 <https://www.waveshare.com/wiki/BLE400>_, pois adicionamos suporte para esses dispositivos.

A versão atual desta ferramenta (2.0) suporta BLE 4.x e 5.x. O suporte para BLE 5.x é limitado, pois suporta apenas a PHY não codificada de 1 Mbps e não suporta atualizações de mapa de canal.

Requisitos

Você precisa de um sistema baseado em UNIX (por exemplo, um Raspberry Pi). Se você usar o BBC Micro:Bit, precisará de um a três dispositivos Micro:Bit (três dispositivos recomendados) e, para cada dispositivo, uma porta USB livre. O consumo de energia de um Micro:Bit é bastante baixo, então você pode usar uma única porta USB e um hub passivo para alimentar as três unidades recomendadas.

Se você conectar 3 microbits ao mesmo tempo no seu computador, o Btlejack conseguirá farejar em todos os canais de anúncio e terá muito mais chance de capturar a solicitação de conexão.

Como instalar

Primeiro, instale o software cliente btlejack Python3 com o Pip:

::

$ sudo pip3 install btlejack

Em seguida, conecte seu dispositivo Micro:Bit ao computador com um cabo USB, monte o dispositivo de armazenamento em massa associado (o ponto de montagem deve conter MICROBIT) e execute o seguinte comando:

::

$ btlejack -i

Isso programará todos os dispositivos Micro:Bit conectados ao seu computador e os deixará prontos para uso com o Btlejack. Ele usará a versão correta do firmware para o software cliente atual, portanto, é altamente recomendável realizar este procedimento de instalação do firmware sempre que você atualizar o Btlejack.

Se você estiver usando um Bluefruit LE sniffer ou um Kit de Avaliação nRF51822, use um programador SWD externo para gravar seu dispositivo com este firmware <https://github.com/virtualabs/btlejack-firmware/raw/master/dist/btlejack-firmware-ble400.hex>_.

Mantenha seus dispositivos conectados e pronto!

NOTA Isso só funciona em sistemas compatíveis com posix.

Como usar o Btlejack

Usar o Btlejack é bastante fácil. O Btlejack pode:

  • usar vários dispositivos
  • farejar uma conexão BLE existente
  • farejar novas conexões BLE
  • atrapalhar uma conexão BLE existente
  • sequestrar uma conexão BLE existente
  • exportar pacotes capturados para vários formatos PCAP

Especificar dispositivos a usar

O Btlejack normalmente tenta detectar e usar automaticamente dispositivos compatíveis conectados (apenas Micro:Bit por enquanto), mas como o firmware pode ser hackeado ou modificado para funcionar com outras placas baseadas em nRF51822, ele fornece uma opção específica para permitir compatibilidade com esses dispositivos.

A opção -d permite que você especifique um ou mais dispositivos com o Btlejack. Observe que esta opção desabilitará a detecção automática de dispositivos, e você deve adicionar quantos dispositivos forem necessários:

::

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

Farejando uma conexão existente

Primeiro, encontre uma conexão existente para segmentar com btlejack:

::

$ btlejack -s BtleJack version 1.1

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

O primeiro valor (em dBm) mostra a potência do sinal; quanto maior for esse valor, melhor será a conexão farejada.

O segundo valor (hex) é o endereço de acesso associado, um valor de 32 bits que identifica um link entre dois dispositivos compatíveis com Bluetooth Low Energy.

O último valor é o número de pacotes vistos com este endereço de acesso. Quanto maior for esse valor, mais provável é que o endereço de acesso correspondente esteja em uso.

Em seguida, use a opção -f para seguir uma conexão 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

Se você estiver usando mais de 1 microbit, o Btlejack paralelizará algumas das operações de farejamento para acelerar a recuperação dos parâmetros de conexão!

Farejando novas conexões

A opção -c suportada por btlejack permite que você especifique o endereço BD alvo, ou você pode querer usar any para capturar qualquer nova conexão criada.

::

$ 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

ou você também pode querer especificar o endereço BD alvo:

::

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

Atrapalhando uma conexão

Uma vez que uma conexão é identificada por seu endereço de acesso, você pode atrapalhá-la usando a opção -j:

::

$ btlejack -f 0x129f3244 -j̀

Sequestrando uma conexão BLE

O Btlejack também é capaz de sequestrar uma conexão existente; use a opção -t para isso. Uma vez sequestrada, o Btlejack fornecerá um prompt permitindo que você interaja com o dispositivo sequestrado.

Primeiro, sequestre uma conexão 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>

Em seguida, use os seguintes comandos para interagir com o dispositivo:

  • discover: realiza a enumeração de serviços e características, fornecerá todas as informações sobre serviços e características
  • write: escreve dados em um handle de valor específico
  • read: lê dados de um handle de valor específico
  • ll: envia um pacote de camada de link bruto (para ninjas)

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

O comando discover enviará e receberá pacotes Bluetooth LE e recuperará todos os UUIDs e parâmetros de serviços, bem como UUIDs e parâmetros de características:

::

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

Baixar ferramenta