Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
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
BLESuite — BLESuite é um pacote Python que fornece uma maneira mais fácil de testar dispositivos Bluetooth Low Energy (BLE) | Kitploit
Ferramentas/GitHubGitHub/nccgroup/blesuite
Sniffing e Análise de PacotesSegurança BluetoothAnálise de VulnerabilidadesColeta de InformaçõesFuzzingSegurança Sem FioTestes de PenetraçãoSegurança de Hardware e IoTTop em Segurança Bluetooth nº5
1914359há 7 anosRevisado pelo Kitploit
GitHub
nccgroup/blesuite

BLESuite

BLESuite é um pacote Python que fornece uma maneira mais fácil de testar dispositivos Bluetooth Low Energy (BLE)

Ver Repositório

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

BLESuite README

Visão Geral

BLESuite é um pacote Python que torna a comunicação com dispositivos Bluetooth Low Energy (BLE) mais amigável e permite testes rápidos de dispositivos BLE. A versão 2 do BLESuite remove a dependência de PyGattlib e BlueZ e, em vez disso, usa uma versão modificada do PyBT (https://github.com/mikeryan/PyBT) para implementar e gerenciar nossa própria pilha BLE. Esta versão aumenta a confiabilidade da comunicação, aumenta a flexibilidade da comunicação, melhora a varredura de dispositivos e permite fuzzing de dispositivos nas camadas de host da pilha Bluetooth. A pilha utilizada pelo BLESuite permite intencionalmente que requisições/respostas malformadas sejam enviadas aos dispositivos a fim de permitir testes de dispositivos.

Recursos:

  • Inclui 2 ferramentas CLI para facilitar as operações básicas do BLESuite: blesuite e ble-replay
  • Suporte para os papéis Central e Periférico do BLE
  • Suporta múltiplos dispositivos HCI (como um adaptador Bluetooth USB)
  • Com um dispositivo HCI usado no papel central, suporte a inúmeras conexões simultâneas com periféricos (limitado pelo número máximo de conexões do controlador HCI)
  • Varredura de dispositivos BLE
  • Varredura de dispositivos BLE para todas as entidades GATT
  • Envia requisições ATT a um dispositivo periférico peer de forma rápida e fácil
  • Constrói e envia pacotes L2CAP e ATT cuidadosamente construídos (ou intencionalmente malformados) para dispositivos alvo
  • Suporta emparelhamento LE Legacy JustWorks. Métodos de emparelhamento adicionais estarão disponíveis em uma versão posterior
  • Levante rapidamente um servidor GATT usando uma definição de objeto abstrata e inúmeras funções auxiliares
  • Suporte para importação e exportação de servidor GATT
  • Suporte para importação e exportação do banco de dados de chaves de longo prazo do Security Manager
  • Opcionalmente, instale uma versão amigável à API Python da ferramenta BDADDR do BlueZ (https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/tools/bdaddr.c) que permite ao usuário falsificar o BD_ADDR do adaptador Bluetooth do host (suporta apenas alguns chipsets. Esta é uma versão modificada do bdaddr.c do BlueZ)

Nota ao leitor:

Para acessar a funcionalidade Bluetooth Low Energy, você deve ter acesso a um adaptador Bluetooth que a suporte.

Por que BLESuite?

O objetivo do BLESuite é fornecer um método simplificado para scriptar rapidamente a comunicação com dispositivos BLE alvo para avaliações de segurança. Com a mudança do PyGattlib e BlueZ para o PyBT, agora podemos ter mais controle sobre a pilha BLE e usá-la para testar várias camadas da pilha BLE de um dispositivo alvo.

Além disso, o BLESuite não está mais restrito apenas ao papel Central. O BLESuite agora suporta o papel Periférico e permite que os usuários configurem e levantem rapidamente um servidor GATT que pode ser usado para testar dispositivos BLE no papel Central (ou dispositivos de papel duplo).

Instalação

A seguir, as instruções de instalação para o pacote Python BLESuite.

Pré-requisitos

Sistemas operacionais suportados:

O BLESuite foi desenvolvido e testado com Debian 9.3. A biblioteca pode ser suportada por outras distribuições Linux, no entanto, o suporte não é garantido atualmente.

Nota: Tentativas recentes de usar o BLESuite com Fedora 28 foram alcançadas instalando os seguintes itens:

  • dnf install bluez-libs-devel python2-devel python2-sphinx python2-gevent
  • siga o restante das instruções de instalação para instalar a versão fornecida do Scapy e do BLESuite

Com o Fedora 28, houve um problema relatado não reproduzível com o BLESuite relacionado a um TypeError que não está presente nas instalações do Debian 9.3 ao tentar lidar com uma requisição ATT recebida.

Contribuições para correção são bem-vindas!

Software necessário

Os seguintes são requisitos para usar o BLESuite:

  • libbluetooth-dev
  • libpython-dev
  • python-sphinx
  • gevent (https://pypi.org/project/gevent/)
  • Scapy (https://github.com/secdev/scapy/) (DEVE SER INSTALADO A PARTIR DA CÓPIA NESTE REPOSITÓRIO POR ENQUANTO)
    • Esta versão do Scapy inclui várias modificações na camada bluetooth.py que suporta vários novos tipos de pacotes e fecha graciosamente o BluetoothUserSocket. Essas alterações não estão disponíveis atualmente na versão principal do Scapy.
  • pycrypto (https://pypi.org/project/pycrypto/)
  • pyshark (https://github.com/KimiNewt/pyshark/)
  • prettytable (https://pypi.org/project/PrettyTable/)
  • sphinx_rtd_theme (https://pypi.org/project/sphinx_rtd_theme/) - Para compilar a documentação

Após instalar libbluetooth-dev, libpython-dev e python-sphinx, execute o seguinte para instalar as dependências Python restantes:

pip install -r requirements.txt

Documentação

A partir da pasta docs, execute:

make html

Em seguida, em docs/_build/html, um conjunto completo de documentação e guias de referência estará disponível.

Instalando Tudo

Execute o seguinte comando para instalar o pacote Python:

python setup.py install

Se você não quiser instalar a API Python BDADDR ou estiver tendo problemas para instalá-la, comente a seguinte linha no setup.py e execute novamente o comando acima:

ext_modules = [c_ext],

Planos Futuros

Suporte completo a emparelhamento

Até agora, o BLESuite só pode suportar emparelhamento LE Legacy JustWorks. O Security Manager está em grande parte delineado, mas a programação criptográfica restante para LESC e os modelos de associação alternativos ainda precisam ser implementados.

Suporte a escrita assinada

A operação de escrita assinada (signed write) do ATT atualmente não é suportada pelo BLESuite. Esta não é uma operação comumente usada, no entanto, para suportar o modo de segurança 2, ela deve ser suportada.

Suporte adicional para endereços privados

O BLESuite atualmente só suporta endereços Públicos e Aleatórios (estáticos). No entanto, endereços aleatórios podem ser de dois subtipos: Estático ou Privado. Um endereço privado aleatório também pode ser dividido em dois subtipos não suportados atualmente pelo BLESuite: Endereço privado não resolvível e Endereço privado resolvível (resolvido usando IRK trocado durante o emparelhamento).

Como tal, a funcionalidade para definir esses tipos de endereços no adaptador do host não é exposta atualmente pelo BLESuite. Além disso, a capacidade de resolver endereços aleatórios resolvíveis de um peer com base em um IRK trocado ainda não está implementada.

Ferramentas Adicionais Construídas com BLESuite

Com a biblioteca construída, o próximo passo é construir ferramentas de avaliação de segurança que utilizem esta biblioteca.

Um exemplo que incluímos com esta biblioteca é o ble-replay, que pode receber uma captura de pacotes BLE e reproduzir o tráfego GATT para um dispositivo alvo. O ble-replay pode ajudar rapidamente a identificar falhas de segurança na camada de aplicação relacionadas a ataques de replay.

Esses tipos de ferramentas diminuem o tempo gasto analisando manualmente capturas de pacotes e scriptando manualmente casos de teste de comunicação BLE.

Baixar ferramenta