Buenas
Les traigo un complemento del tutorial de
@79137913 para que puedan agregar el teclado en su idioma y asi poder hacer tu script mas rapido y sin complicaciones
Si no saben de que estoy hablando aca esta el tutorial de como hacer un rubber ducky casero, desde 0 hasta tu primer script :
https://underc0de.org/foro/hacking/(rubber-ducky)-digiducky-desde-0-hasta-la-intrusion/El problema a resolver en este post es el siguiente:
CitarUsaremos la libreria DigiKeyboard.h que lamentablemente esta hecha para teclados con distribucion US y no para teclados españoles (que supongo que es el que mas usamos nosotros), para crear scripts para teclados españoles deberan ir probando hasta encontrar el caracter que buscan, igual en mi ejemplo pueden ver que ya estan la mayoria cambiados a los que corresponden, con esos ya van a tener de sobra para hacer un monton de scripts, igual si necesitan info de como hacer alguna tecla especifica diganme en este post y les voy diciendo.
De paso vamos a ver como adaptar un codigo en ducky script para nuestro badusb
Primero vamos a descargar las librerias de digispark compatibles con algunos layout de teclados. Entre la lista de soportados se encuentran
- tr_tr
- be_be
- cz_cz
- da_dk
- de_de
- en_us (default)
- es_es
- fi_fi
- fr_fr
- it_it
- pt_pt
esta libreria esta hecha por
ernesto-xload, vemos que en la lista de soportados está es_es, que es español españa.
Para instalarlo seguimos los pasos :
Descargamos el repositorio como zip (Los enlaces son solo para miembros.
Registrate o
iniciá sesión):
Descomprimimos y pegamos el contenido en C:\Users\%tUsuario%\AppData\Local\Arduino15\packages\digistump\hardware\avr\1.6.7\libraries\DigisparkKeyboard remplazamos todo

Listo ! ya tenemos instalado nuestros layout en multiples idiomas.
para usarlo debemos agregar a nuestro codigo estas lineas siempre, en este orden
#define kbd_es_es
#include <DigiKeyboard.h>
Ya tenemos nuestro digispark en español españa
Ahora si tenes teclado de latam(creo que la mayoria) no te va a servir mucho este ya que son diferentes mapeos

Para poder adaptar nuestro digispark a el teclado latam mapie las teclas faltantes
Los enlaces son solo para miembros.
Registrate o
iniciá sesión para instalarlo primero hacen la parte anterior y luego descargan los archivos que estan en el drive y los remplazan en la siguiente ubicacion
C:\Users\%tUsuario%\AppData\Local\Arduino15\packages\digistump\hardware\avr\1.6.7\libraries\DigisparkKeyboard\src
ambos en el mismo directorio
Consejos: Si no saben sobre C++
quizas tengan problemas al querer imprimir la barra invertida (\) o las comillas (") para eso se usan los codigo de escape
Secuencia
de Escape Descripción
\' comilla simple
\" doble comilla
\? interrogante
\\ barra invert.
\a campana sonora
\b borrar atrás
\f alimentación
formulario - nueva página
\n alimentación
de linea - nueva página
\r retorno de carro
\t tabulador
horizontal
\v tabulador
vertical
si queremos imprimir esto " HAIL "UNDERC0DE" \ "
debemos poner " HAIL \"UNDERC0DE\" \\ "
Algunos payloads
Les voy a enseñar a adaptar el codigo de ducky script
Aca hay varios payloads que pueden usar, solo hay que adaptarlos
Los enlaces son solo para miembros.
Registrate o
iniciá sesiónpor ejemplo ! yo voy a elegir el de "Windows 10 : Download and execute file with Powershell"
Esta pagina sirve para convertir duckyscript en codigo apto para digispark
Los enlaces son solo para miembros.
Registrate o
iniciá sesiónpego mi duckyscript sacado del repo de hak5 y le doy a submit....
Copiamos el codigo devuelto y lo pegamos en el IDE de arduino
Obvio agregando
#define kbd_es_es
#include <DigiKeyboard.h>
Queda cambiar un par de cosas, leyendo el codigo de c, hay una linea que hay que adaptar dependiendo el idioma del SO de nuestra victima (por lo general español )
DigiKeyboard.delay(1000);
DigiKeyboard.sendKeyStroke(KEY_Y, MOD_ALT_LEFT);
DigiKeyboard.delay(200);
Debemos cambiarlo a:
DigiKeyboard.delay(1000);
DigiKeyboard.sendKeyStroke(KEY_S, MOD_ALT_LEFT);
DigiKeyboard.delay(200);
Agregamos la url y el nombre del archivo que vamos a descargar

1) la url
2) el nombre que le queremos poner
yo voy a poner la url con la foto de un perrubi pero podria ser algo "no tan tierno " *GUIÑO**GUIÑO*


Cualquier duda me preguntan