Buenas :D
Les traigo un complemento del tutorial de
@79137913 (https://underc0de.org/foro/index.php?action=profile;u=21192) para que puedan agregar el teclado en su idioma y asi poder hacer tu script mas rapido y sin complicaciones :D
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/ (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 (https://github.com/ernesto-xload/DigisparkKeyboard (https://github.com/ernesto-xload/DigisparkKeyboard)):
(https://i.ibb.co/pR4zZ2s/image.png)
Descomprimimos y pegamos el contenido en C:\Users\%tUsuario%\AppData\Local\Arduino15\packages\digistump\hardware\avr\1.6.7\libraries\DigisparkKeyboard remplazamos todo (https://i.ibb.co/9hhWBFr/image.png)
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 :D
Ahora si tenes teclado de latam(creo que la mayoria) no te va a servir mucho este ya que son diferentes mapeos
(https://tecnovortex.com/wp-content/uploads/2010/05/kb-latinoamericano.png)
Para poder adaptar nuestro digispark a el teclado latam mapie las teclas faltantes
http://bit.ly/digisparkUndercodeLatam (http://bit.ly/digisparkUndercodeLatam)
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
(https://i.ibb.co/g6TMyH4/image.png)
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
https://github.com/hak5darren/USB-Rubber-Ducky/wiki/Payloads (https://github.com/hak5darren/USB-Rubber-Ducky/wiki/Payloads)
por 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
https://samvella.co.uk/Digiducky/ (https://samvella.co.uk/Digiducky/)
pego 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
(https://i.ibb.co/JyKdzck/image.png)
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* ;) ;)
(https://i.ibb.co/fF8Mbkb/payload.gif)
Cualquier duda me preguntan :D
Hola! tengo un badusb que para hacer pruebas le cargue un script basico de "Hello world" pero ahora al momento de intentar cargarle otro cuando conecto se ejecuta el script pero el digispark no reconoce el usb y no me carga el nuevo scrip, alguien sabe como borrar el scrip que tiene instalado el badusb?