En el mundo de la seguridad informática hay todavía empresas, administradores y usuarios comunes que no han tomado conciencia de la importancia que tiene la seguridad física, un punto clave a tener muy en cuenta. Siempre hay gente que quiere robarle la contraseña a su pareja, a su jefe, a su empleado, espiar tu historial de sitios que visitas en 
Internet, las 
cookies del 
Facebook, robarte los 
passwords de la red 
WiFi, o robar documentos como hizo 
Edward Snowden con los documentos de la 
NSA. Supongo que las listas de correos que recibo con esas peticiones os deberían servir de muestra más que suficiente de con quién os jugáis los cuartos.
Existen técnicas y maneras de conseguir acceso físico a un equipo y explotar las vulnerabilidades, y lo único que hay que hacer es forzar los condicionantes adecuados para poder llevarlo a cabo. Perder de vista el equipo o prestarlo a un amigo un momento para revisar las novedades de algún blog, o separarte de tu escritorio por unos momentos para ir al lavabo, es tiempo suficiente para que un atacante pueda llegar y enchufar un dispositivo como el 
“USB Rubber Ducky”.
Este dispositivo es un teclado programado con forma de 
USB que nada más conectarse comienza a escribir en el equipo de forma automatizada, para lanzar programas y herramientas que bien pueden estar en el equipo víctima o cargados en la memoria 
Micro SD que lleva incluida.
|  | 
| Figura 1: Estructura de USB Rubber Ducky | 
En cuestión de segundos tendría acceso a información que se podría subir automáticamente a un servidor 
FTP u otro sitio. Algo parecido a lo que se explicaba con 
USB Dumper, pero al revés, es decir, en lugar de ser el servidor el malicioso que roba los datos del 
USB, sería 
USB Rubber Ducky el que robaría los datos al equipo.
En este vídeo de ejemplo que hizo 
TorresCrack248  se puede ver como en cuatro segundos se puede robar la contraseña del administrador de la computadora, lanzando con 
USB Rubber Ducky un 
script basado en 
Mimikatz que acceda a los datos.
Figura 2: Vídeo demostrativo del uso de USB Rubber Ducky
¿Qué es USB Rubber Ducky?
Casi todos los sistemas operativos de computadoras portátiles, tablets o smartphones permiten la comunicación con el usuario a través de los teclados 
USB. Es por eso que hay una especificación en el estándar 
USB  ubicua conocida como 
HID (Human Interface Device) – o dispositivo de interfaz humana. En pocas palabras, cualquier sistema operativo al que conectemos el
 USB Rubber Ducky lo detectara y será bien aceptado automáticamente como si se hubiera conectado un teclado, ya sea en 
Windows, 
OS X, 
Linux o 
Android.
Al final, el teclado sigue siendo un interfaz fundamental y lo que hará 
USB Rubber Ducky es 
"teclear comandos" en el sistema como si lo estuviera haciendo el usuario que se ha conectado a la sesión. Usando un sencillo lenguaje de programación y un editor de texto podríamos compilar un binario que automatice diversos “
payloads” con lo cual podríamos realizar ataques en cuestión de segundos.
|  | 
| Figura 3: Estructura interna de USB Rubber Ducky | 
Con una idea similar, el 
libro de Hacking iOS se explica cómo usando un 
Teensy 3.0, en lo que se basa 
USB Rubber Key, se simula un teclado por 
USB para 
iPad para lanzar un ataque de fuerza bruta porque no hay protección de número de intentos para el teclado y 
se rompe el passcode de un iPad - uno de los muchos 
trucos de saltarse el passcode de iPhone & iPad.
Figura 4: Ataque de fuerza bruta al passcode de un iPad con Teensy 3.0
Debido a su estructura, los sistemas operativos ofrecen una confianza inherente a las pulsaciones del teclado, por lo tanto los dispositivos que abusan de la interfaz 
HID no pueden ser detectados por las contramedidas tradicionales de forma sencilla ya que iría contra la filosofía 
Plug&Play de los sistemas.
Esto hace que sea una herramienta muy útil en procesos de 
pentesting internos, ataques de ingeniería social del tipo "
¿me puedes imprimir un documento?" o de auténticos atacantes de dentro de la organización.
¿Qué ataques se pueden realizar?
Al final, cuando un usuario pincha un 
USB Rubber Ducky en su sesión de usuario es como si le hubiera dejado el teclado al atacante para que este ejecutase lo que quisiera. Es decir, este ataque se aprovecha de la confianza del usuario, que al final siempre es “
el eslabón mas débil” o de la seguridad física de muchos equipos expuestos.
¿Cuántos de ustedes han llegado a alguna oficina gubernamental, banco y tienen a simple vista y acceso a los puertos 
USB de los equipos? ¿A cuántos de ustedes les han prestado algún equipo para revisar el correo, las redes sociales, etcétera? ¿Cuántos no tienen en la oficina un equipo de un compañero con cuentas de diferentes administradores o que tenga más permisos que el resto? ¿Cuántas veces no has visto un 
puerto USB en un Kiosco de Internet o un Punto de Información? Si ninguno de esos puertos bloquea el interfaz 
HID, puedes hacer el ataque. Al final quizás agregar, subirlas a un servidor 
FTP en cuestión de segundos.
Seguro que os ha tocado llegar a una oficina a resolver tramites y la persona que te atendió tuvo que salir un par de minutos, y esto es tiempo suficiente para un atacante enchufar el 
USB Rubber Ducky y lanzar el 
payload - en lugar de hacer un 
David Hasselhoff para robar las passwords -. Por mencionar algunos ataques brevemente:
* Recolección de información del sistema operativo.
* Robar información importante de los navegadores de Internet.
* Robar y usar las cookies de las sesiones abiertas.
* Hacer capturas de pantalla del escritorio y carpetas importantes del sistema.
* Robar y utilizar las contraseñas de las conexiones WiFi de la víctima.
* Subir la información a traves un servidor FTP.
 Ataques dirigidos al sistema:
* Agregar usuarios con permisos administrativos al equipo de la víctima.
* Borrar usuarios del sistema.
* Hacer Pharming de DNS.
* Infección del sistema descargando y ejecutando un binario de Internet.
* Crackear passwords del administrador en el sistema.
* Crear un Backdoor WiFi.
* Bloquear programas en el sistema operativo de forma sigilosa.
¿Cómo podemos protegernos de estos ataques?
Desde que el grupo de 
hackers de 
Hack5  hizo pública la herramienta, algunos siguen pensando que desactivando el “
autoplay” de los discos 
USB podrían detenerlo, pero esto no es posible hacerlo de esa manera ya que el ataque no sea hace vía un 
USB de almacenamiento sino como si alguien estuviera tecleando en un teclado 
USB.
Las formas que se puede utilizar para detectar que un 
USB es realmente un 
HID USB, se puede hacer un 
script en PowerShell que enumere la lista de dispositivos 
HID que alerte cuando uno nuevo se haya conectado y se bloquee. Aquí hay información sobre 
cómo acceder a la lista de los dispositivos desde PowerShell. A partir de ese punto, la forma en la que quieres estar protegido depende de ti.
En el trabajo de 
Adrian Crenshaw, titulado 
"Plug & Prey: Malicious USB devices" que fue presentado en la 
ShmooCON 2011 se explica en detalle la lista de posibles ataques que se pueden hacer por 
USB. Entre ellos, por supuesto, los teclados 
USB que abusan de la interfaz 
HID. Aquí tenéis 
el vídeo para ver la conferencia.
En el trabajo se presta especial atención a los 
PHUKD (Programmable HID USB Keyboard/Mouse Dongle) ya que no solo simulando un teclado malicioso es el problema, y la simulación de un ratón malicioso que hiciera clics en zonas concretas sería igual de peligroso. Para proteger los 
USB utilizando las políticas 
GPO de 
Windows hay que tener en cuenta que si el usuario que pincha el
 USB Rubber Ducky es una administrador, siempre podrá cambiar la política, pero lo dificultaría. Esto hace que fuera factible, dentro de una política de 
Maximizar la seguridad de un Windows, usar listas blancas de los dispositivos 
USB que se pueden conectar a un equipo.
|  | 
| Figura 6: GPO para prevenir la instalación de dispositivos USB no autorizados | 
De todas formas, como utilidad de monitorización, 
Adrian Crenshaw recomienda usar 
USBDeview, que muestra en tiempo real toda la información de todos los dispositivos 
USB que se conectan, detectando aquellos que son 
PHUKD en la lista.
|  | 
| Figura 7: USBDeview | 
Alex TorreCrack ha hecho una herramienta de protección ante estos ataques que liberará en breve llamada 
Shielducky que hace fácil controlar estos ataques monitorizando los dispositivos 
HID sin tener que desactivar los puertos 
USB desde la 
BIOS/UEFI, etcétera. La interfaz es bastante amigable y fácil de usar ya que basta como presionar un simple botón para detectar cualquier 
HID que se conecte y bloquearlo.
|  | 
| Figura 8: Shielducky - una herramienta para bloquear dispositivos USB HID | 
Así que te recomiendo tener cuidado porque en cualquier momento sin que te des cuenta te pueden intentar  “
enchufar” un 
USB Rubber Ducky en lugar de un pendrive cuando te descuides. Ten cuidado.
Saludos Malignos!