Mostrando entradas con la etiqueta Redes. Mostrar todas las entradas
Mostrando entradas con la etiqueta Redes. Mostrar todas las entradas

sábado, 18 de mayo de 2019

Write-up - Reto "Desactiva la bomba" SHSkdi19



Los chic@s de @IESAlbertiCadiz nos traen un reto la mar de divertido! Antes de comenzar, por favor lean las recomendaciones:

Recomendaciones:

- Kali o Parrot "a punto".
- Café bien cargadito en vaso gigante.
- Tenga la caja de Paracetamol bien cerca.


Manos a la obra!

Nos descargamos el .pcap del enlace, si lo abrimos con Wireshark y filtramos por HTTP y método POST encontraremos un login y password interesante. Aunque de manera “sucia” puedes hacerlo a así:

Utilizando el comando strings


Evidencia desde Wireshark

Si lo decodeamos a ASCII, vemos que es una URL que nos lleva a una sistema de desactivación de una bomba
 

Revisamos el código fuente, encontramos una pista:


Tras mucho mirar sin tener clara la solución... Lanzan una pista por el canal de Telegram:
K0n3st, [15.05.19 22:09]
Pista: En la página web hay un comentario que dice que la flag se encuentra en la web, habéis comprobado algún parámetro?
Si le pasamos “https://iesrafaelalberti.es/Reto_shskdi19/index.php?flag=1” nos aparece un “gatete”.

Después de tirarle todas las tools de stego que conozco (que no son pocas xD) me da por probar flag=2 y veo que me abre un 2.html con una imagen de otro gato (gracioso, verdad? No.... No me refiero al gatito....xD)

Visto que si sigo la secuencia cada vez aparece otro gato, voy a ejecutar un script (yo no me compliqué y lo hice con ZAP, pero puedes hacerlo con Bash o Python) con varias peticiones para ver si cazo algo que no sea un gato.

Script Payload con ZAP

Pues si, en el 999.html me encuentro con una evidencia, parecen urls ofuscada en algún tipo de cifrado.

Tiramos de Multisolver y sacamos las evidencias:


En cada .html encontramos una foto (no, no son gatitos xD), vamos haciendo strings a cada una de ellas y nos topamos con algo curioso con la foto "cornear.jpg".


Vemos que la foto esconde un archivo comprimido (.rar) y que dentro de este hay al menos dos archivos mas, una hoja de cálculo y otro rar que contiene una pista.

Utilizamos Binwalk para extraer el archivo .rar de la imagen, lo descomprimimos y nos pide que insertemos la contraseña. (Tranquilos, aún nos queda medio café, frío, pero medio café...)

Extraemos sus hash con la ayuda de rar2john y lo pasamos por John The Ripper con el diccionario Rockyou.


La contraseña del archivo es "qwerty", la utilizamos y conseguimos los dos ficheros que mencionamos anteriormente.

Vemos un listado de proveedores con nombres, apellidos y teléfono, por lo que no hay duda que se trata de un reto de OSINT, de todas formas, ya que nos dan una pista "gratis" vamos a utilizarla.

Pero claro.... "Si algo es gratis, es que....." La pista tiene password!!! Estaba claro que no nos lo iban a poner fácil. 
Utilizaremos el mismo método que anteriormente (rar2crack, JTR con Rockyou):
Una vez con la clave (monkey) descomprimimos el archivo y leemos la pista.
Pues a "stalkear"! Tras buscar por varias redes y entre muchos perfiles (algunos muy curiosos xD) damos con el perfil del cibercriminal en Instagram y con el código de desactivación.
Bien!!! hemos encontrado el código de desactivación....Probamos y....Plaf!! En toda la frente!!! No funciona!!!! Si lo decodeamos en b64, tampoco...... 
Tras mucho pensar y probar, y probar, y probar.... Pruebo el código de la cuenta de ”bitcoins” aunque está cifrada o codificada, tras las horas que son y sin Paracetamol para mi pobre cabeza, le paso el trabajo a “CyberChef” y nos ayuda a resolverlo, bueno... Solo tenemos que ir probando código a muerte!! :D

 
Está en base58, introducimos el código y ahora si!!!! Reto finalizado!!!

Me he divertido muchísimo con el reto, gracias por complicarnos tanto la vida (va con cariño xD). Enhorabuena por el evento SHSdki19 y a los creadores del reto!

jueves, 27 de diciembre de 2018

Writeup - UAM - UNIVERSO MARVEL - EPISODIO 1 - 1ª PARTE

Los de UAM (Una al mes) nos traen un nuevo reto, esta vez nos adentramos en el Universo Marvel, donde tendremos que analizar una comunicación (una captura de red) para descubrir la ubicación exacta de la base secreta de Hydra.


Manos a la obra

Pulsamos el enlace y nos descargamos el archivo "capture-01.cap" y lo ejecutamos con Wireshark.



Como podemos ver, los datos están cifrados por el protocolo "IEEE 802.11" y la comunicación ha sido a través de una red inalámbrica (WiFi).

Por lo tanto, nos haría falta conocer la contraseña para poder desencriptar los paquetes y hacerlos legibles.

Para ello utilizaremos wpaclean, para dejar sólo las tramas del WPA y sacar la password posteriormente con fuerza bruta.



Procedemos a sacar la password por fuerza bruta con aircrack-ng y el diccionario "rockyou.txt".



Tras algo mas de una hora (en mi modesto portátil) obtendremos la password "hydra54321".

La colocamos en Wireshark y ahora estarán los paquetes legibles y encontramos esto:



Abrimos la URL y nos encontraremos en un sitio web, con las credenciales de "Grant Ward" y por lo que podemos ver, existe un apartado en el sitio llamado "Ubicación de la base".

Hacemos clic en el apartado y......Plaffff, en toda la frente! 




El juego continua, por lo que si visitamos el apartado "Misiones" nos muestra:



Aquí hay tomate! Bueno en este punto, revisé el código y encontré el enlace que abría el apartado de cual no tenía los permisos necesarios para poder entrar.




Tras unas pruebas y beberme una lata de "Monster", comprobé que el servidor no estaba bien protegido y me permitía descargar archivos. Por lo que hice "magia" con "Wget":



Hacemos un "cat" para leer el archivo y nos muestra el contenido codificado en "Base64".



Vamos a descodificarlo:



Por lo que se aprecia en el código, vemos que aunque esté cifrado, se entiende las coordenadas "37' 21' A 23" 28' R" y el formato de la flag "HNZ{.........} por lo que estamos muy cerca de terminar el reto.

Por la estructura, diría que es ROT:



Habemus flag! UAM{46863d92858b486c29f759767e53e92f}

Agradecer y dar la enhorabuena a los chicos de UAM (@hispasec) por los retos tan currados, espero impaciente otro reto. GRACIAS!

jueves, 26 de marzo de 2015

Haciendo DoS SLAAC mediante mensajes RA

Si piensas que IPv6 no tiene ningún funcionamiento en Windows estás muy equivocado y si encima la configuración la tienes por defecto te diré que IPv6 tiene prioridad sobre IPv4. En muchas redes locales IPv6 trabaja más que IPv4 en protocolos como podría ser SMB. Con solo hacer un ipconfig y ver que tenemos una dirección de vinculo local IPv6 que empiece con el famoso fe80:: posiblemente seas vulnerable a diferentes ataques que pueden realizarse sobre este tipo de red.

Hoy os vengo a contar un curioso ataque que probé y dejó mi PC colgado e incluso me tiró de la red local teniendo que volverme a conectar. Es un ataque que hace DoS a través de mensajes RA (Router Advertisement), pero antes de explicaros como es el ataque, os diré para que sirven estos mensajes y como funcionan..

Si queremos configurar el protocolo IPv6 en una red, podemos hacerlo de diferentes formas. Una de ellas es mediante el protocolo NDP (Neighbor Discovery Protocol) que vendría a ser lo mismo que ARP (Address Resolution Protocol) en IPv4 y mensajes RS (Router Solicitation), RA (Router Advertisiment) acompañado del funcionamiento SLAAC (Stateless Address Auto Configurator).

Imaginemos en una red local un equipo que está configurado para obtener el direccionamiento IPv6 de manera automática. Cuando encendemos el PC, este enviará un mensaje RS multidifusión a todos los routers que soporten IPv6 de la red para que le envien un mensaje RA al PC que acabamos de conectar.

Mensaje RS del PC pidiendo mensaje RA del router

Cuando el Router recibe el mensaje RS del PC, este responde con el mensaje RA solicitado anteriormente en el que van el prefijo y la longitud del prefijo de la red. Este mensaje se envía a todos los nodos de la red que sería la dirección IPv6 FF02::1 siendo la dirección link-local del router como la dirección IPv6 de origen.

Mensaje RA del router enviado a todos los nodos con los datos


El PC recibe el mensaje RA con los datos del prefijo y longitud del prefijo para la red local. Con esta información, el PC crea su propia dirección IPv6 a partir del prefijo de red (64 bits) y de una ID de interfaz que podría ser creada con su dirección MAC normalmente, aunque también podría hacerlo números aleatorios creados por el sistema operativo.


Como SLAAC es un proceso sin estado el PC debe verificar que su dirección IPv6 sea única en la red, por lo que envía un mensaje ICMPv6 con su propia dirección como la dirección de destino del mensaje para ver si algún nodo contesta. En caso de no contestarle nadie, la dirección podría utilizarla sin problema, pero si por el contrario alguien contestase, el sistema operativo debería determinar una nueva ID de interfaz para utilizar.


Una vez que ya hemos visto para que sirven los mensajes RS, RA y su funcionamiento vamos hacer DoS a las máquinas que están en la red, en concreto lo que vamos a intentar es envíar miles de paquetes RA a todos los nodos de la red (FF02::1) haciéndonos pasar por un router para que se fabriquen su propia dirección IPv6 y el PC quede colgado finalmente al no poder procesar tanta información consiguiendo así hacer flood de mensajes. Para ello necesitamos una máquina con Kali para poder utilizar la herramienta flood_router6 la cual es muy sencilla de utilizar.

Con kali arrancado lanzaremos el ataque simplemente escribiendo en la terminal
flood_router6 eth0

(Aunque nos diga que la aplicación está en desuso y utilicemos flood_router26 funciona perfectamente. Yo utilicé las dos y conseguí hacer DoS a la máquina).

Lanzando el ataque con la herramienta flood_router6

En el momento que le demos al enter para lanzar el ataque, empezará a enviar tramas a los equipos de la red para que se construyan su propia dirección IPv6 y estos empezarán a consumir recursos del PC quedando así totalmente inaccesibles, por ejemplo sin poder mover prácticamente el ratón, visitar cualquier página y en algunos casos echándonos de la red y por qué no, una vez esté la máquina fuera de la red y vaya a conectarse, realizar un ataque ROGUE DHCP ;-) . Los recursos del PC ascenderían al 100% incluso en algún momento sin poder hacer nada en la máquina como podemos ver en la siguiente imagen.

Consumo de CPU habiendo llegado al 100% imposible de usar

Y si analizamos el tráfico en ese momento podemos ver todas las tramas y el ruido que genera la aplicación a la hora de lanzarse. Como bien dijimos, estos mensajes RA se enviarán en modo multidifusión.

Tráfico capturado a la hora de realizar el ataque

Y por último, os dejaré dos capturas de pantalla de como quedaría nuestro equipo Windows al hacer un ipconfig para consultar las direcciones IPv6 que se llegaron a crear.

Comando ipconfig para consultar las direcciones IPv6

Comando ipconfig para consultar las direcciones IPv6

Este es simplemente uno de los muchos ataques que podríamos realizar al protocolo IPv6, por lo que debemos de concienciarnos de que aunque nosotros no veamos trabajar IPv6 y no hayamos configurado nada, IPv6 posiblemente esté presente en todos los equipos de nuestra casa y muchísimas empresas por defecto lo que lo hace aun más vulnerable.


Un saludo @Joseliyo_Jstnk