Skip to content
KitploitKITPLOIT
FerramentasBlog
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
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
1914345há 5 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:

    root@kitploit:~
    pip install -r requirements.txt
    

    Documentação

    A partir da pasta docs, execute:

    root@kitploit:~
    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:

    root@kitploit:~
    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:

    root@kitploit:~
    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