HackMyVM - Superhuman
17 septiembre 2021
Esta máquina se encuentra en la plataforma HackMyVM y ha sido creada por el usuario cromiphi.
Una máquina centrada en la encriptación y ocultación. Para resolverla será necesario la utilización de varias técnicas de crackeo de contraseñas y de descifrado.
# | Dificultad |
---|---|
Acceso | Fácil |
Escalada de privilegios | Fácil |
Enumeración
La resolución comienza identificando la dirección IP de la máquina objetivo. Como el despliegue de la máquina se realiza en una red distinta a la red de la máquina atacante un descubrimiento mediante ARP no es posible, será necesario un barrido de ping. El barrido de ping se realiza mediante la herramienta ping-sweep con el modo de descubrimiento de sistema operativo para poder avanzar más rápido en la enumeración.
La herramienta ha detectado 3 IP:
- 10.10.10.1 - linux → Gateway
- 10.10.10.101 - windows → Sistema anfitrión
- 10.10.10.102 - linux → Máquina objetivo
Una vez identificada la máquina objetivo se comienza con el escaneo de puertos. Como es habitual para el escaneo se utiliza nmap y se divide en dos fases: la primera de un escaneo rápido de los 65535 puertos para detectar aquellos abiertos y la segunda para realizar una enumeración más exahustiva usando scripts básicos de los puertos abiertos.
El escaneo ha detectado los servicios SSH y HTTP ejecutándose en los puertos 22 y 80.
Se realizan varios fuzzing en la web utilizando distintas extensiones. Hasta que se encuentra con el archivo notes-tips.txt.
El archivo encontrado contiene el siguiente texto codificado. A primera vista el texto parece estar codificado en base64 pero mirando con detenimiento se observan caracteres distintos a los de base64. Para desencriptar el contenido se prueban con distintos algoritmos hasta dar con ascii85.
El texto desencriptado cuenta la historia de un individuo al cual salome no le ama y que le ha escrito un poema titulado salome_and_?? con una extensión para que no ocupe mucho espacio.
No hay que pensar demasiado para descubrir que el nombre del archivo es salome_and_me, la extensión será de algún tipo de compresión como rar, zip, 7z, tar, etc.
Tras pocos intentos se descarga el archivo salome_and_me.zip.
El comprimido está cifrado para descifrarlo se utilizará john the ripper. Pero antes será necesario obtener el hash en formato john. Para ello se utilizará la herramienta zip2john.
A continuación, se ejecuta john para crackear la contraseña.
John encuentra rápidamente la contraseña: turtle.
Se descomprime el archivo y se encuentra el siguiente "poema". El poema desvela un usuario potencial "fred" y la contraseña podrá ser alguna de las palabras del poema. Mi intuición me dice que la palabra será schopenhauer.
Ganar acceso
Una vez con las credenciales puede conectarse mediante ssh y ganar acceso al sistema.
La máquina es un poco trol y al ejecutar el comando ls cierra la conexión.
Puede obtenerse la flag de user.
Escalada de privilegios
Se consultan los permisos sudo y ssuid pero no se encuentra nada destacable.
A continuación, se consultan las capabilites y se encuentran algunas posibles vías de escalada.
Se consulta en https://gtfobins.github.io/ una vía utilizando las capabilites y se encuentra una para el binario node.
Se ejecuta el vector de ataque y se consigue el root al sistema.
Finalmente, se obtiene la flag de root y se concluye la resolución de la máquina.