Pentesting con USB Teensy 3.2
El microcontrolador USB Teensy 3.2 es una sorprendente y muy útil herramienta en el mundo del pentesting en escenarios donde tengamos acceso físico a la maquina objetivo aunque sea solo por unos segundos.Al igual que la muy conocida USB Rubber Ducky nos permite emular un teclado, pero además nos permite emular un mouse (lo cual puede ser estrictamente necesario en algunos casos)
Características
En este vídeo puedes encontrar una breve introducción con la descripción de sus características y una comparación con las características del patito.
Algunas caracteristícas destacables respecto a la USB Rubber Ducky son:
- Precio $19.8 que vendría siendo menos de la mitad que el de la USB Rubber Ducky ($44.99).
- Procesador Cortex-M4 de 32 bit con una velocidad estándar de 72 MHz overclockable a 96 MHz, mientras que el patito tiene un procesador de 32 bit con una velocidad de 60 MHz.
- La posibilidad de 'comunicarnos' mediante la alternación de algunas teclas por parte del sistema y la lectura de las mismas por parte de la Teensy; permitiéndonos realizar sentencias para poder ejecutar diferentes funciones. Por ejm: Saber la arquitectura del Sistema, Saber la edición/versión del Sistema, etc.
Configuración
Para programar y cargar payloads a la Teensy debemos instalar en nuestro sistema el software específico.
En este vídeo se realiza dicha instalación detalladamente, ademas de la configuración, adicionalmente se instala una plantilla base que nos facilitará la tarea de programación.
Programación
Originalmente el lenguaje de programación para (valga la redundancia) programar la Teensy es C, pero podemos emplear Arduino que también esta basado en C, pero es un poco mas 'amigable al usuario'.
Codigo de una "Hola Mundo" usando Arduino
Adicionalmente si hemos instalado la plantilla base; podremos programar con una facilidad comparable a la del lenguaje empleado para programar la USB Rubber Ducky.
Codigo de un "Hola Mundo" usando Arduino & La plantilla base
Aunque no es nada complicado y en el proyecto de github esta explicado su uso de manera detallada, también he creado este vídeo donde además de explicar parte por parte el uso de dicha plantilla; se comenta sobre la solución a algunos posibles y comunes inconvenientes, entre otras cosas.
Para finalizar...
Les invito a visitar la wiki del proyecto; allí podrán encontrar mas información, payloads, etc. De ser posible espero su aporte.
Finalmente en esta lista de reproducción de YT intentaré poner además de los vídeos anteriormente mencionados, algunas demostraciones (puede que actualmente no haya ninguna )...
Como nota final, la información, características usadas en el post las he escrito basándome en la información proveída en las páginas oficiales.
USB Teensy 3.1/3.2
USB Rubber Ducky
Saludos!!