Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
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.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Herramientas/GitHubGitHub/nccgroup/blesuite
Sniffing y Análisis de PaquetesSeguridad BluetoothAnálisis de VulnerabilidadesRecopilación de InformaciónFuzzingSeguridad InalámbricaPruebas de PenetraciónSeguridad de Hardware e IoT
GitHubnccgroup/blesuite

BLESuite

BLESuite es un paquete de Python que proporciona una forma más fácil de probar dispositivos Bluetooth Low Energy (BLE)

Ver Repositorio
19143hace 5 añosRevisado por Kitploit

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

README de BLESuite

Descripción general

BLESuite es un paquete de Python que hace que la comunicación con dispositivos Bluetooth Low Energy (BLE) sea más fácil de usar y permite pruebas rápidas de dispositivos BLE. La versión 2 de BLESuite elimina la dependencia de PyGattlib y BlueZ y, en su lugar, utiliza una versión modificada de PyBT (https://github.com/mikeryan/PyBT) para implementar y gestionar nuestra propia pila BLE. Esta versión aumenta la fiabilidad de la comunicación, incrementa la flexibilidad de la comunicación, mejora el escaneo de dispositivos y permite el fuzzing de dispositivos en las capas de host de la pila Bluetooth. La pila utilizada por BLESuite permite intencionadamente el envío de solicitudes/respuestas malformadas a los dispositivos con el fin de habilitar las pruebas de dispositivos.

Características:

  • Incluye 2 herramientas CLI para facilitar las operaciones básicas de BLESuite: blesuite y ble-replay
  • Soporte para los roles BLE Central y Periférico
  • Soporta múltiples dispositivos HCI (como un adaptador Bluetooth USB)
  • Con un dispositivo HCI usado en el rol central, soporte para numerosas conexiones simultáneas a periféricos (limitado por el número máximo de conexiones del controlador HCI)
  • Escaneo de dispositivos BLE
  • Escaneo de dispositivos BLE para todas las entidades GATT
  • Envío rápido y sencillo de solicitudes ATT a un dispositivo periférico remoto
  • Construcción y envío de paquetes L2CAP y ATT cuidadosamente construidos (o intencionadamente malformados) a los dispositivos objetivo
  • Soporte para el emparejamiento LE Legacy JustWorks. Métodos de emparejamiento adicionales estarán disponibles en una versión posterior
  • Puesta en marcha rápida de un servidor GATT mediante una definición de objeto abstracta y numerosas funciones auxiliares
  • Soporte para importación y exportación de servidores GATT
  • Soporte para importación y exportación de la base de datos de claves de largo plazo del Security Manager
  • Opcionalmente, instalación de una versión de la herramienta BDADDR de BlueZ apta para API de Python (https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/tools/bdaddr.c) que permite al usuario suplantar el BD_ADDR del adaptador Bluetooth de su equipo (solo soporta algunos chipsets. Esta es una versión modificada del bdaddr.c de BlueZ)

Nota para el lector:

Para acceder a la funcionalidad de Bluetooth Low Energy, debe tener acceso a un adaptador Bluetooth que lo soporte.

¿Por qué BLESuite?

El objetivo de BLESuite es proporcionar un método simplificado para scriptear rápidamente la comunicación con dispositivos BLE objetivo durante evaluaciones de seguridad. Combinado con la transición de PyGattlib y BlueZ a PyBT, ahora podemos tener más control sobre la pila BLE y usarla para probar varias capas de la pila BLE de un dispositivo objetivo.

Además, BLESuite ya no está restringido a usar únicamente el rol Central. BLESuite ahora soporta el rol Periférico y permite a los usuarios configurar y poner en marcha rápidamente un servidor GATT que puede usarse para probar dispositivos BLE con rol Central (o dispositivos de doble rol).

Instalación

Las siguientes son instrucciones de instalación para el paquete Python de BLESuite.

Requisitos previos

Sistemas operativos soportados:

BLESuite fue desarrollado y probado contra Debian 9.3. La librería puede ser compatible con otras distribuciones de Linux, sin embargo, el soporte no está garantizado actualmente.

Nota: Intentos recientes de usar BLESuite con Fedora 28 se lograron instalando los siguientes elementos:

  • dnf install bluez-libs-devel python2-devel python2-sphinx python2-gevent
  • siga el resto de las instrucciones de instalación para instalar la versión suministrada de Scapy y BLESuite

Con Fedora 28, ha habido un problema reportado no reproducible con BLESuite relacionado con un TypeError que no está presente en las instalaciones de Debian 9.3 al intentar manejar una solicitud ATT entrante.

¡Se aceptan contribuciones para la corrección!

Software requerido

Los siguientes son los requisitos para usar BLESuite:

  • libbluetooth-dev
  • libpython-dev
  • python-sphinx
  • gevent (https://pypi.org/project/gevent/)
  • Scapy (https://github.com/secdev/scapy/) (POR AHORA DEBE INSTALARSE DESDE LA COPIA EN ESTE REPOSITORIO)
    • Esta versión de Scapy incluye varias modificaciones en la capa bluetooth.py que soporta varios tipos de paquetes nuevos y cierra correctamente el BluetoothUserSocket. Estos cambios no están disponibles actualmente en la línea principal de 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 la documentación

Después de instalar libbluetooth-dev, libpython-dev y python-sphinx, ejecute lo siguiente para instalar las dependencias de Python restantes:

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

Documentación

Desde la carpeta docs, ejecute:

root@kitploit:~
make html

Luego, en docs/_build/html estará disponible un conjunto completo de documentación y guías de referencia.

Instalando todo

Ejecute el siguiente comando para instalar el paquete de Python:

root@kitploit:~
python setup.py install

Si no desea instalar la API de Python de BDADDR o tiene problemas para instalarla, comente la siguiente línea en setup.py y vuelva a ejecutar el comando anterior:

root@kitploit:~
ext_modules = [c_ext],

Planes futuros

Soporte completo de emparejamiento

Por ahora, BLESuite solo puede soportar el emparejamiento LE Legacy JustWorks. El Security Manager está mayormente delineado, pero la programación criptográfica restante para LESC y los modelos de asociación alternativos aún deben implementarse.

Soporte de escritura firmada

La operación de escritura firmada ATT actualmente no está soportada por BLESuite. Esta no es una operación de uso común, sin embargo, para soportar el modo de seguridad 2, debería estar soportada.

Soporte adicional para direcciones privadas

BLESuite actualmente solo soporta direcciones Públicas y Aleatorias (estáticas). Sin embargo, las direcciones Aleatorias pueden ser de dos subtipos: Estáticas o Privadas. Una dirección Privada Aleatoria también puede dividirse en dos subtipos no soportados actualmente por BLESuite: Dirección Privada No Resoluble y Dirección Privada Resoluble (resuelta usando IRK intercambiada durante el emparejamiento).

Como tal, la funcionalidad para establecer estos tipos de direcciones en el adaptador del equipo no está expuesta actualmente por BLESuite. Además, la capacidad de resolver direcciones Aleatorias resolubles de un dispositivo remoto basándose en una IRK intercambiada aún no está implementada.

Herramientas adicionales construidas usando BLESuite

Con la librería construida, el siguiente paso es crear herramientas de evaluación de seguridad que utilicen esta librería.

Un ejemplo de ello que hemos incluido con esta librería es ble-replay, que puede tomar una captura de paquetes BLE y reproducir el tráfico GATT hacia un dispositivo objetivo. ble-replay puede ayudar rápidamente a identificar fallos de seguridad a nivel de aplicación relacionados con ataques de repetición.

Este tipo de herramientas reducen el tiempo dedicado a analizar manualmente capturas de paquetes y a scriptear manualmente casos de prueba de comunicación BLE.

Descargar herramienta