USB Rubber Ducky casero (DIY)
Introducción
Decidí realizar este proyecto por el precio abusivo de un usb rubber ducky. La mayoría de los USB comunes son explotables debido a la vulnerabilidad "BadUSB". Esto permite a los piratas informáticos re-programar el micro-controlador de estos para que actúe como un "dispositivo de interfaz humana" (HID)/Teclado y realizar las pulsaciones de teclado personalizados en nuestra máquina de destino. Este escenario es a menudo llamado "HID Payload Attack", ya que tienes que entregar el USB para la ejecución (hablaremos de esto mas adelante). A pesar de que casi todas las unidades flash/USB son explotables, sólo hay una manera y es reprogramar micro controladores "Phison" (Por ahora).
En este tutorial vamos a determinar el micro controlador de la unidad flash (USB), compilar el código fuente para las herramientas que necesitamos que esta publicado en Github, hacer un "custom firmware" con una carga útil de HID incorporada y convertir nuestra unidad flash usb inofensiva en un teclado malicioso diseñado para ayudarnos a lograr el compromiso del equipo de la víctima.
El proceso es parecido a compilar y flashear roms en un dispositivo Android.
Necesitamos:
- Usar Windows
- Una unidad flash USB 3.0 con Phison 2303 (2251-03) de micro controlador.
Voy a utilizar la "Toshiba TransMemory-MX USB 3.0 8GB" en este tutorial. - Poder abrir la caja de su dispositivo USB sin dañarlo.
*Notas:
Podemos encontrar una lista de dispositivos compatibles conocidos en GitHub.
https://github.com/adamcaudill/Psychson/wiki/Known-Supported-Devices
A veces, tener un dispositivo confirmado, no significa que se está utilizando el PS2251-03, ya que los fabricantes pueden utilizar diferentes controladores, incluso en los mismos modelos de dispositivos.
-Por Favor, continúe bajo su propio riesgo, no hay garantía de que el dispositivo seguirá funcionando.
¡A pesar de que no debería aparecer ningún problema!
Determinar el Micro controlador de nuestro USB
Antes de empezar queremos asegurarnos de que nuestro USB utiliza el controlador compatible. Podemos usar un programa llamado "Flash Drive Information Extractor" para recopilar la información necesaria de nuestro USB:
USB Drive Info
No requiere instalación, se puede usar directamente desde el archivo ZIP. Sólo tiene que abrir la herramienta y pulsa el botón "Obtener Información USB Flash Drive", mientras que tienemos el USB insertado en el PC. Si la unidad utiliza el Controlador Phison 2303 (2251-03) el resultado debe ser parecido a esto:
Sin embargo, si el dispositivo USB tiene un micro controlador diferente, lo más probable es que no se puede reprogramar para hacer un dispositivo HID con este exploit. Recomiendo comprobar los dispositivos compatibles conocidos en github y pedir uno de esos, en Ebay.es tienes gran cantidad y directamente te llega a tu puerta.
Configurar el entorno de trabajo
Descarga y compilación del código fuente
Para poder modificar el código antes debemos descargarlo, el código fuente se publico en github por adamcaudill:
https://github.com/adamcaudill/Psychson
En realidad Visual Studio viene con una característica interesante, vamos a clonar todo el repositorio. Incluso podemos interactuar con Visual Studio(VS) desde el sitio github:
Después de la clonación y la apertura del repositorio. Lo más probable es ver tres soluciones.
- DriveCom
- EmbedPayload
- Injector
Vamos a necesitar "DRIVECOM" y "EmbedPayload" solamente, si se abre se puede compilar con
o
Menu bar - Build - Build Solution
Obtener una "Burner Image"
Todas las "Burner Image" debe hacer el trabajo bien, pero se puede usar la versión más reciente que se indica por la parte "VYYY" del nombre.
Descargar Duck Encoder
El "Duck Encoder" es una herramienta multiplataforma basada en Java que convierte las secuencias de comandos en las cargas útiles de HID. Se basa en el exploit que nombrabamos antes: "BadUSD" también llamado "Rubber Ducky" creado por Hak5:
https://github.com/hak5darren/USB-Rubber-Ducky/wiki/Downloads
No se olvide de instalar Java:
Lo guardé en
E: Documents Bad_USB DuckEncoder
Crear un Firmware personalizado
Escribiendo un Script
https://github.com/hak5darren/USB-Rubber-Ducky/wiki/Duckyscript
Vamos a seguir y crearemos un archivo .txt en nuestro directorio preferido.
E: Documents Bad_USB DuckEncoder script.txt
Pensé en mostrarles algo más interesante que un script "Hello World" así que hice éste:
Como usted puede suponer, el BAD USB "pulsa" la tecla Windows + R y apagar de inmediato el ordenador. Además se puede ver claramente que escribí "/" en lugar de "-". Eso es porque nuestro "Teclado" (BAD USB) tiene un diseño de Estados Unidos y las ventanas se establece en Déu en mi país. Tenga en cuenta que tenemos que cambiar el diseño de las ventanas de los Estados Unidos y escribir el guión de la manera que haríamos normalmente, o la forma en su PC víctimas sería escribirlo. No sea confuso de la entrada.
Usted puede incluso utilizar scripts personalizados y hacer algo de ingeniería inversa:
https://github.com/hak5darren/USB-Rubber-Ducky/wiki/Payloads
Convirtiéndolo en un HID Payload
java -jar "PATH to duckencode.jar" -i "PATH to script.txt"-o "payload.bin Path"
Ejemplo:
java -jar E:DocumentsBadUSBDuckEncoderduckencode.jar -i E:DocumentsBad_USBDuckEncoderscript.txt -o E:DocumentsBad_USBDuckEncoderinject.bin
Insertar el Payload el firmware
E:DocumentsBadUSBPsychsontoolsEmbedPayload.exe E:DocumentsBad_USBDuckEncoderinject.bin E:DocumentsBad_USBPsychsonfirmwarebinfw.bin
Volcado del firmware actual de la unidad flash USB
Flashear el Firmware
Ajuste de nuestro dispositivo en "modo de arranque" Manualmente
@linuxFR Take a look at this picture:https://cloud.githubusercontent.com/assets/9080593/4591190/2a5e93da-5069-11e4-9daa-9e22539ec801.JPGYou can boot manually, if you unplug the device, put a needle (or some other very small/fine metalthing) between pin 2 and 3 at the side above the TOSHIBA label. According to the picture it would be left side of the chip and the second and third pin counting upside down. With the needle at the pins you have to replug the device and wait for ~1 second, remove the needle and the stick is in boot mode (lamp keeps glowing). Now you can flash, but to me it only worked for custom firmware and I couldn't get back to original firmware.Hope I could help.

Si no, su PC se apagará, esfuércese más la próxima vez.Notas:
- El BAD USB puede no funcionar en todos los PC con Windows, incluyendo la mía, ya que puede no tener los drivers necesarios
- Tenga en cuenta que usted no será capaz de acceder a la memoria, mientras que su unidad USB está fingiendo ser un dispositivo HID
Reflexiones finales
Visitor Rating: 5 Stars
Visitor Rating: 5 Stars
Como hacer un usb rubber ducky gratis ya que la mayoría de los USB comunes son explotables debido a la vulnerabilidad USB Bad
Visitor Rating: 5 Stars
Visitor Rating: 5 Stars
Visitor Rating: 5 Stars
El precio de un usb rubber ducky es muy caro y se usa para hackear allí
donde lo enchufes, ahora me ahorrare mas de 100 euros y lo podre hacer
diy
ola luis quiero comunicarme con vos porfavor mi mail [email protected]
Hola buenas me funcionaria con este controller?
es Phision tambien, gracias.
Volume: None
Controller: Phison 2251-67
Possible Memory Chip(s):
Toshiba TC58NVG6D2JTA00
Memory Type: MLC
Flash ID: 98DEA482 7657
Chip F/W: 06.05.30
Firmware Date: 2012-11-23
ID_BLK Ver.: 1.2.42.0
MP Ver.: MPALL v3.70.1B
VID: 0718
PID: 0619
Manufacturer: TDK LoR
Product: TF10
Query Vendor ID: TDK LoR
Query Product ID: TF10
Query Product Revision: PMAP
Physical Disk Capacity: 3997171712 Bytes
Windows Disk Capacity: 3987734528 Bytes
Internal Tags: 2N2P-SX5L
File System: FAT32
Relative Offset: 1024 KB
USB Version: 2.00
Declared Power: 200 mA
ContMeas ID: 87BE-06-00
Microsoft Windows 10 x64 Build 10586
————————————
http://www.antspec.com/usbflashinfo/
Program Version: 8.7.0.597
Hola, gracias por el tuto, que marca de USBs han probado, Gracias
hola una pregunta funcionara con el controlador Phison 2251-67 ?