Blue – TryHackMe Write-up

Blue – TryHackMe Write-up

Hoy vamos a resolver la máquina Blue de TryHackMe, en ella usaremos el exploit eternalblue para obtener acceso de administrador a la máquina y encontrar las banderas, lo haremos de dos maneras, con metasploit y sin metasploit.

 

Esta sala se divide en:

Así que vamos a ello.

Enumeración

He de decir que yo, en antiguos write-ups mostraba el uso directo nmap para hacer la enumeración en un principio, quiero decir que lo hacía ya que quería ir más al grano en el Write-Up y no alargarlo sin necesidad, así que obviaba la parte de enumeración de todos los puertos, que usualmente la hacía con furious (básicamente porque está en hecho en go y go funciona muy bien con sockets y va más rápido que nmap en este sentido), muchos de ustedes me han dicho que han empleado nmap la enumeración completa y no está mal, nmap es una herramienta realmente potente, lo que pasa es que si ejecutas por ejemplo “nmap <IP>” solo te analizará los 1000 puertos más comunes que considera nmap, es decir que si hay un servicio corriendo en un puerto que nmap no determina como “conocido”, si ejecutas el comando anterior, no te lo detectará. Por otro lado si haces un “nmap -p- <IP>” o, “nmap -p1-65535 <IP>” ahí sí que te analizaría todos los puertos, pero tardará en hacerlo y, aquí lo que se busca es eficiencia, por eso lo mejor es tener un escáner de puertos rápido que pueda identificar todos los puertos abiertos y una vez identificados, a esos puertos detectados, hacerles un escaneo más detallado con nmap aplicándole banderas como son -sC o -sV.

(ACTUALIZACIÓN: La herramienta que se menciona a continuación ya no se encuentra disponible)

Una vez dicho esto, unos colegas de la comunidad de Cybex han desarrollado una tool para esto y que hasta el momento de que esto está escrito, se trata de una combinación de las herramientas furious y nmap principalmente, primero analiza todos los puertos de la máquina con furious, luego los puertos que detecta abiertos los manda a nmap para que nmap haga un escaneo más detallado y además que nos detecta el sistema operativo a través del TTL.

Bueno, una vez instalada la herramienta, simplemente hay que lanzarla con:

scan <ip>

Los arroja estos resultados:

Escaneo de nmap y furious

Bueno, aquí ya empieza a llamar la atención ese puerto 445, además que la máquina se llama blue así que es obvio que debemos explotar.

De igual manera, hagamos un escaneo con nmap a el puerto 445 haciendo uso de uno de sus scripts para ver si es vulnerable a la querida ms17-010, para ello:

nmap –script=”smb-vuln*” <IP> 445

Y efectivamente, es vulnerable:

Explotación y obtención de banderas con metasploit.

Bien, iniciamos msfconsole, buscamos y seleccionamos el exploit en cuestión, al conseguirlo lo usamos con “use (número)” o “use (PATH exploit):

Hay que seleccionar el RHOST que es la ip de la víctima:

Escribimos “exploit” y enter:

Tras unos segundos, ya estamos dentro:

Ahora leamos las banderas:

La bandera 1 se encuentra en el directorio C:\ :

La bandera 2 se encuentra en C:\Windows\System32\config\:

Y la bandera 3 se encuentra en C:\Users\Jon\Documents\:

Bien, ahora hagamos la explotación sin metasploit.

Explotación y obtención de banderas con metasploit.

Para ello, usaremos autoblue, que se encuentra en github, para ello, lo primero es hacer un git clone del repo:

git clone https://github.com/3ndG4me/AutoBlue-MS17-010.git

Luego nos movemos al directorio shellcode:

cd AutoBlue-MS17-010/shellcode/

Y ejecutaremos el fichero “shell_prep.sh”:

Primero nos preguntará que, si queremos generar la shell reversa con msfvenom, decimos que si:

Nos pide el Local Host, ahí colocamos nuestra ip. Luego, nos pide que elijamos un puerto local para la conexión de la Shell reversa en sistema de 64 bits, usemos el 1234 por ejemplo:

Ahora nos pide lo mismo, pero para sistemas de 32 bits, como en teoría no conocemos que arquitectura tiene la máquina a explotar, pondremos 1 puerto distinto para cada arquitectura, aquí podemos usar el 4321:

Luego nos dice que escribamos 0 para una Shell de meterpreter o 1 para una Shell normal, ya que no usamos metasploit ahora, escribiremos 1:

Ahora nos dice que escribamos 0 para generar un payload staged o 1 para un payload stageless, un payload staged necesita del multi/hanlder de metasploit, ya que ahora no usamos metasploit, nuevamente escribimos 1:

Luego de esto, se generarán los binarios tanto la de 64 bits como la de 32 bits:

Puedes ver los binarios generados en el directorio /shellcode dentro de el directorio principal de AutoBlue:

En concreto nos centraremos en ese binario, “sc_all.bin” ya que este probará con la arquitectura de 32 y de 64 bits, partiendo de que no sabemos qué arquitectura tiene la máquina victima es nuestra mejor opción.

Ahora, pongamos a la escucha ambos puertos que seleccionamos para ambas arquitecturas, el 1234 para la arquitectura de 64 bits y el 4321 para la de 32 bits:

Ahora, para lanzar el exploit, retrocedamos un directorio y ejecutemos el eternalblue_exploit7.py seguido de la ip de la víctima a su vez seguida de el binario que sirve para ambas arquitecturas, para ello:

python eternalblue_exploit7.py <IP> <RUTA_BINARIO>

Debería quédate algo así:

Ahora ejecútalo, ten en cuenta que esto no siempre a la primera funciona, en mi caso tuve que ejecutarlo 2 veces para que me diese una shell:

En este caso, el sistema era de 64 bits y por eso obtuvimos una shell en el puerto 1234 que pusimos para el binario de 64 bits y no en el puerto 4321 que era del binario de 32 bits, ahora podemos leer tranquilamente las banderas:

Bandera 1:

Bandera 2:

Bandera 3:

Y ya estaría.

PD: Si al ejecutar el exploit te aparece el siguiente error:

rm -rf /usr/lib/pymodules/python2.7/impacket*

git clone https://github.com/CoreSecurity/impacket.git

cd impacket

python setup.py install

Espero que hayas aprendido algo nuevo ????.

Opinión personal:

  • Dificultad de acceso: 4% 4%
  • Dificultad de escalación de privilegios: 0% 0%

He hecho esta puntuación basándome en estos valores propios:

Fácil1% – 30%

Medio: 31% – 70%

Difícil: 71% – 100%

Anuncio

Sobre el Autor

Martin Frias

Founder of Coldd Security

Deja una respuesta

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

Información adicional sobre protección de datos:
Responsable: Martin Frias.
Finalidad: Moderar los comentarios de este sitio web.
Cesión: NO se cederán a nadie, salvo obligación legal.
Derechos: Acceso, rectificación, cancelación y borrado de tus datos.
Legitimación: Tu consentido expreso.

REDES SOCIALES

Newsletter

Estadísticas

  • 106.290
  • 51

TheHackerSnow

0

Share This