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
BLEBoy — BLEBoy is a training tool to teach users about BLE security by providing a single BLE peripheral that can be used to experiment with each BLE pairing method and demonstrates GATT security concepts. | Kitploit
Herramientas/GitHubGitHub/nccgroup/bleboy
Embedded Systems SecurityBluetooth SecurityIoT SecurityWireless SecurityLearning & EducationLabs & Practice
GitHubnccgroup/bleboy

BLEBoy

BLEBoy is a training tool to teach users about BLE security by providing a single BLE peripheral that can be used to experiment with each BLE pairing method and demonstrates GATT security concepts.

Ver Repositorio
499hace 6 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

BLEBoy

Objetivo

Crear un periférico BLE compatible con todos los métodos de emparejamiento BLE que puedan utilizarse para formación y pruebas, incluido el emparejamiento fuera de banda (OOB). El periférico debe ser configurable y fácil de recrear con componentes comerciales.

Acerca de

BLEBoy es un periférico BLE implementado con la placa Adafruit nRF52 Feather, que se ha actualizado para admitir todos los métodos de emparejamiento BLE descritos en la especificación Bluetooth (https://www.bluetooth.com/specifications/bluetooth-core-specification). BLEBoy permite actualizar sobre la marcha los parámetros de seguridad GAP (LESC, OOB, MitM, capacidades de E/S, etc.) para que los usuarios puedan experimentar con los distintos métodos de emparejamiento (y el nivel de seguridad que ofrece cada uno). También admite el envío de datos OOB a través del puerto serie para permitir que otras herramientas construyan registros NFC BLE OOB para el emparejamiento OOB.

Esta herramienta se puede utilizar con los módulos de formación que se encuentran en la carpeta "Training" para aprender sobre seguridad BLE.

NOTA Este dispositivo está pensado para utilizarse en formación sobre seguridad BLE. No utilice el código en aplicaciones seguras. En el código se utilizan varios generadores de números aleatorios que no se consideran criptográficamente seguros. Las versiones posteriores del SDK NRF52 Nordic ofrecen API RNG seguras que pueden utilizarse para este fin si es necesario.

Requisitos

Hardware requerido

  • nRF52 Feather (https://www.adafruit.com/product/3406)
  • OLED Featherwing (https://www.adafruit.com/product/2900)
  • Joy Featherwing (https://www.adafruit.com/product/3632)
    • Asegúrese de puentear el pin 27 (la almohadilla de la parte inferior de la placa puede soldarse para lograrlo) para poder configurarlo como pin de interrupción. Si se desea otro pin de interrupción, será necesario modificar el código de BLEBoy.
  • Feather Tripler (https://www.adafruit.com/product/3417)
    • No es estrictamente necesario, pero simplifica la conexión de los componentes
  • Cable Micro-USB para la Feather (necesario para subir el código y gestionar el modelo de asociación Passkey Entry del periférico)
  • Acceso a un soldador para ensamblar los componentes (soldar los cabezales de pines)
  • Un teléfono Android compatible con Bluetooth 4.0 y con las Opciones de desarrollador habilitadas (https://developer.android.com/studio/debug/dev-options.html)
    • Esto también puede hacerse con un dispositivo iOS con jailbreak (versión <10) con BTCompanion instalado desde Cydia. Para simplificar, solo cubriremos Android.

Nota: Para gestionar los modelos de asociación de emparejamiento OOB y Passkey Entry (cuando la clave de acceso se introduce en el periférico), será necesario conectar un cable Micro-USB a la nRF52 Feather y escuchar las comunicaciones serie (9600 baudios). Esta misma conexión serie se utiliza para imprimir información de estado y depuración.

Hardware opcional

  • Para seguir el ejemplo OOB NFC
    • PN532 Breakout (https://www.adafruit.com/product/364)
    • Cable FTDI (BLEBoy se probó con un Adafruit FTDI Friend - https://www.adafruit.com/product/284)
    • Etiquetas NFC NTAG213
  • Una batería LIPO para eliminar la necesidad del cable Micro-USB para alimentar la Feather
  • Una funda rígida para la solución. El OLED es bastante frágil y puede agrietarse fácilmente con una presión fuerte.

Librerías Arduino requeridas

Todas las librerías pueden instalarse desde sus respectivas fuentes, excepto arduino-menusystem y Bluefruit52Lib, que han sido modificadas. Puede encontrar un registro de cambios de las librerías modificadas en 3rdPartyChanges.txt.

Como alternativa, los usuarios pueden utilizar las librerías contenidas en la carpeta "libraries" de este proyecto para asegurarse de que se utiliza la misma versión de las librerías empleada durante el desarrollo.

  • Adafruit GFX (https://github.com/adafruit/Adafruit-GFX-Library)
  • Adafruit SSD1306 (https://github.com/adafruit/Adafruit_SSD1306)
  • Adafruit nRF52
    • Primero, siga las instrucciones de instalación en https://learn.adafruit.com/bluefruit-nrf52-feather-learning-guide (las instrucciones para Debian se encuentran más abajo). NOTA: Asegúrese de instalar la versión 0.6.0 de la placa.
    • A continuación, siga las instrucciones de la sección "Instalación de Bluefruit52Lib personalizada" que aparece más abajo.
  • Micro-ecc (https://github.com/kmackay/micro-ecc)
  • Adafruit Seesaw (https://github.com/adafruit/Adafruit_Seesaw)
  • arduino-menusystem (https://github.com/jonblack/arduino-menusystem)
    • Utilice la versión modificada que se encuentra en la carpeta libraries.

Configuración del hardware

Las siguientes son instrucciones de configuración para construir BLEBoy con el hardware requerido enumerado en las secciones anteriores:

  1. Suelde cabezales de pines macho en cada una de las Feather y Featherwings.
  2. En la Joy Featherwing, mire la parte inferior de la placa y aplique soldadura en la almohadilla del pin de interrupción opcional (Option Interrupt Pin) situada delante del pin 27.
  3. Suelde cabezales de pines hembra en el Tripler.
  4. Conecte las 3 placas Feather al Tripler (se puede usar cualquier orden, pero, para simplificar, puse el OLED arriba, la nRF52 en el medio y la Joy abajo).

Instalación del software

Para programar la nRF52 Feather con el código de BLEBoy, siga estos pasos:

  • Instale el IDE de Arduino.
  • Instale los recursos de la placa Adafruit nRF52 Feather en el IDE de Arduino (consulte https://learn.adafruit.com/bluefruit-nrf52-feather-learning-guide/arduino-bsp-setup).
    • Desarrollado y probado con la versión 0.6.0 de la placa nRF52. Los resultados con otras versiones pueden variar.
  • Instale las librerías Arduino de terceros (enumeradas en la sección Librerías Arduino requeridas más arriba).
  • Reemplace Adafruit Bluetooth52Lib con la carpeta Bluetooth52Lib de este repositorio.
  • Instale la librería arduino-menusystem modificada que se encuentra en la carpeta libraries de este repositorio.
  • Cargue BLEBoy en la nRF52 Feather.
  • Configure la conexión serie con la nRF52 Feather (9600 baudios).
  • (Opcional) Configure la PN532 para el emparejamiento NFC OOB.

Instalación de Arduino con recursos Adafruit nRF52 en Debian

  • Descargue el último IDE de Arduino
  • Siga las instrucciones en https://learn.adafruit.com/bluefruit-nrf52-feather-learning-guide/arduino-bsp-setup
    • OSX y Linux: asegúrese de instalar el envoltorio Python de nrfutil (siga las instrucciones para instalarlo mediante la instalación BSP realizada por el IDE de Arduino)
    • Esta página también contiene algunos pasos para solucionar problemas si surge algún inconveniente
  • Siga las instrucciones en https://learn.adafruit.com/bluefruit-nrf52-feather-learning-guide/arduino-board-setup para instalar el controlador cp260x.
  • Si está en Linux, siga las instrucciones en http://playground.arduino.cc/linux/all#permission para configurar los permisos correctos para acceder al dispositivo serie.

Instalación de Bluefruit52Lib personalizada

  • Copie la carpeta Bluefruit52Lib personalizada a ( variará según la instalación):
    • OS X : ~/Library/Arduino15/packages/adafruit/hardware/nrf52/<version>/libraries
    • Linux : ~/.arduino15/packages/adafruit/hardware/nrf52/<version>/libraries
    • Windows: %APPDATA%\Local\Arduino15\packages\adafruit\hardware\nrf52\ <version> \libraries

Instalación de librerías de terceros

  • Instale las librerías de terceros enumeradas en Librerías Arduino requeridas
  • Copie arduino-menusystem de la carpeta libraries de BLEBoy a la carpeta de librerías de Arduino de su usuario.

O BIEN

  • Copie las carpetas de "libraries" a la carpeta de librerías de Arduino del usuario
    • Comúnmente se encuentra en ~/Arduino/libraries o C:\Users\ <user> \Documents\Arduino\libraries

(OPCIONAL) Instalación de PN352 para emparejamiento OOB mediante NFC

  • Instale nfcpy de Python (https://nfcpy.readthedocs.io/en/latest/) y PySerial (http://pyserial.readthedocs.io/en/latest/pyserial.html)
  • Conecte la PN532 a un cable FTDI (probado con un Adafruit FTDI Friend) y conéctelo a su host
  • Conecte el dispositivo BLEBoy al host
  • Anote el puerto serie de los dos pasos anteriores y actualice el script Python de análisis OOB para que utilice esos puertos.
Descargar herramienta