martes, 17 de marzo de 2020

HTB - Postman

Hola a todos y bienvenidos de nuevo a Who is secure. Hoy vamos a resolver una máquina de Hack The Box, Postman, la máquina que han retirado esta semana.


Lo primero que quiero decir es que espero que estéis todos bien con la situación que tenemos con el COVID-19. Cuidaros mucho y ánimo.

Para empezar con la máquina haremos un escaneo de puertos con nmap.


Vemos que tenemos 4 puertos abiertos. Uno con ssh y otro con apache que suelen estar en todas las máquinas, pero vemos dos que no conozco muy bien, redis en el puerto 6379 y un http con webmin.

Lo primero que hice fue buscar sobre redis ya que no conocía el servicio (es un motor de bases de datos en memoria) y una vez que vi cómo funcionaba más o menos, usé searchsploit para ver si encontraba algo y descubrí que podía entrar sin credenciales. También revisé la versión de webmin para ver si podía conseguir algo pero el rce (ejecución remota de código) necesitaba de un usuario para ser ejecutado, así que por ahora descarto ese puerto por ahora.

Siguiendo con redis, con la información de hacktricks para conseguir acceso por ssh podemos obtener acceso como redis para buscar la escalada de privilegios. Lo primero será generar las claves rsa para poder colocarlas en el servidor.


Ese sería nuestro identificativo para entrar al servidor, ahora hay que subirlo.


Aquí lo que hemos hecho es acceder al servidor y en el path donde se encuentran las authorized keys de redis, colocamos las que hemos generado y accedemos por ssh usando el id_rsa.


Ahora vemos la carpeta home y tenemos que el usuario se llama Matt. Por ahora no podemos acceder a su carpeta personal así que hay que seguir buscando. Iremos a /opt.


Aquí hemos encontrado un id_rsa que mandaremos a nuestra máquina para hacerle fuerza bruta. Usaré john para sacar la contraseña pero para que funcione tengo que usar ssh2john para que reconozca el archivo.


Como veis, hemos obtenido la contraseña, "computer2008". Ahora desde el acceso que teníamos como redis usamos "su Matt" e introducimos la contraseña. Obtenemos acceso como Matt y en su carpeta personal podemos conseguir la flag de usuario.



Ahora que tenemos un usuario y su contraseña podemos volver al puerto 10000, que tenía un http con Webmin. Revisando las vulnerabilidades de esa versión vimos que había un rce que ahora sí nos sirve. Tenemos dos opciones para hacer el rce, usar el módulo de metasploit que hay para esta versión o hacerlo a mano. La primera vez que hice la máquina lo hice de forma manual en la sección de actualización de paquetes pero cuando la hice por segunda vez no tuve tiempo de hacer la escalada de privilegios y no tengo capturas. Por suerte, me han compartido las capturas del acceso a root con metasploit. Muchas gracias a 4lexH4ck! por este aporte extraído de su writeup.


Aquí tenemos que declarar las direcciones IP para obtener la shell, la del atacante y la víctima. Además, como había dicho anteriormente, tenemos que iniciar sesión, así que hay que introducir el usuario y la contraseña. Con esto podemos ejecutar el exploit.


Y obtenemos la flag de root terminando la máquina.

Muchas gracias a todos por leerme una vez más, espero que os haya gustado la entrada. Nos vemos otra semana aquí, en Who is secure para seguir aprendiendo juntos. Un saludo.

No hay comentarios:

Publicar un comentario