
Framework modular de testes de vulnerabilidade em Bluetooth Classic (BR/EDR) com reconhecimento, módulos de exploração para 43 ataques/CVEs públicos e relatórios estruturados em JSON.
Documentação • Instalação • Uso • Exploits • Hardware • TODOs • Avaliação Automotiva • Recursos Bluetooth • Licença
BlueToolkit é um framework modular de teste de segurança Bluetooth em caixa-preta para Bluetooth Classic (BR/EDR) e Bluetooth Low Energy (BLE). Ele suporta testes semiautomáticos e possui três módulos principais:
Avaliamos o BlueToolkit em 22 carros de diferentes fabricantes (Audi, BMW, Chevrolet, Honda, Hyundai, Mercedes-Benz, Mini, Opel, Polestar, Renault, Skoda, Toyota, VW, Tesla) e descobrimos 128 vulnerabilidades.
Além disso, mostramos como sequestrar contas online via MAP para conexões já estabelecidas ou com uma posição de MitM.
Este trabalho resultou em um artigo de pesquisa aceito na WOOT 25': adicionar link ausente quando o tivermos
BlueToolkit pode ser instalado em sistemas Ubuntu/Debian em bare metal (recomendado) ou usando uma Máquina Virtual. Em ambos os casos, o instalador solicitará a instalação dos módulos específicos para Braktooth e BluetoothAssistant, que exigem dispositivos de hardware específicos disponíveis e conectados. A instalação de módulos independentes também pode ser feita separadamente, executando o instalador novamente.
Pré-requisitos:
Após a Instalação:
* Você precisa permitir que a máquina virtual acesse o módulo Bluetooth ou hardware adicional através de USB, o que exige que você faça o seguinte:
* O suporte a USB já está ativado, por isso abra o VirtualBox
* Encontre uma máquina virtual em execução e clique em "Exibir"
* Clique em "Dispositivos" -> "USB"
* Você verá vários dispositivos que podem ser ativados para a máquina virtual
* Marque qualquer dispositivo que precisar (módulo Bluetooth, hardware, telefone) ou marque todos os dispositivos para garantir.
</details>
### Uso
Execute `bluekit -h` para exibir as informações de uso do BlueToolkit:```console
usage: bluekit [-h] [-t TARGET] [-l] [-c] [-ct] [-ch] [-v VERBOSITY] [-ex EXCLUDEEXPLOITS [EXCLUDEEXPLOITS ...]] [-e EXPLOITS [EXPLOITS ...]] [-r] [-re] [-rej] [-hh HARDWARE [HARDWARE ...]] ...
positional arguments:
rest
options:
-h, --help show this help message and exit
-t TARGET, --target TARGET
target MAC address
-l, --listexploits List exploits or not
-c, --checksetup Check whether Braktooth is available and setup
-ct, --checktarget Check connectivity and availability of the target
-ch, --checkpoint Start from a checkpoint
-v VERBOSITY, --verbosity VERBOSITY
Verbosity level
-ex EXCLUDEEXPLOITS [EXCLUDEEXPLOITS ...], --excludeexploits EXCLUDEEXPLOITS [EXCLUDEEXPLOITS ...]
Exclude exploits, example --exclude exploit1, exploit2
-e EXPLOITS [EXPLOITS ...], --exploits EXPLOITS [EXPLOITS ...]
Scan only for provided --exploits exploit1, exploit2; --exclude is not taken into account
-r, --recon Run a recon script
-re, --report Create a report for a target device
-rej, --reportjson Create a report for a target device
-hh HARDWARE [HARDWARE ...], --hardware HARDWARE [HARDWARE ...]
Scan only for provided exploits based on hardware --hardware hardware1 hardware2; --exclude and --exploit are not taken into account
Alguns exemplos de uso são:
Listar todos os exploits disponíveis (não requer root):
bluekit -l
Executar reconhecimento:
sudo bluekit -t AA:BB:CC:DD:EE:FF -r
Testar conectividade:
sudo bluekit -t AA:BB:CC:DD:EE:FF -ct
Testar um ou mais exploits (separados por espaço):
sudo bluekit -t AA:BB:CC:DD:EE:FF -e invalid_max_slot au_rand_flooding internalblue_knob
Mais documentação está disponível em nossa wiki
Alguns ataques requerem hardware específico:
O BlueToolkit baixa automaticamente todos os modelos de vulnerabilidades e hardware. O repositório BlueToolkit templates fornece uma lista completa de modelos prontos para uso. Além disso, você pode criar seus próprios modelos e verificações, bem como adicionar novo hardware seguindo o guia de modelos do BlueToolkit. A sintaxe de referência YAML está disponível aqui
Coletamos e classificamos vulnerabilidades Bluetooth no estilo "Awesome Bluetooth Security". Usamos as seguintes fontes - ACM, IEEE SP, Blackhat, DEFCON, Car Hacking Village, NDSS e Google Scholars. Procuramos as seguintes palavras-chave em mecanismos de busca como Google, Baidu, Yandex, Bing - Bluetooth security toolkit, Bluetooth exploits github, Bluetooth security framework, bluetooth pentesting toolkit. Também analisamos todos os repositórios do Github com base nos seguintes parâmetros - topic:bluetooth topic:exploit, topic:bluetooth topic:security.
Para ataques manuais, consulte a documentação.