Papaya
Última actualización
Última actualización
Buenas h4ck3r, bienvenido a un nuevo post!
En esta ocasión, vamos a estar resolviendo la máquina Papaya de la plataforma The Hackers Labs.
Comenzamos lanzando una traza ICMP a la máquina objetivo para comprobar que tengamos conectividad.
Vemos que responde al envío de nuestro paquete, verificando de esta manera que tenemos conectividad. Por otra parte, confirmamos que estamos frente a una máquina Linux basandonos en el TTL (Time To Live) 64.
Realizamos un escaneo con nmap
para descubrir que puertos TCP se encuentran abiertos en la máquina víctima.
Lanzamos una serie de script básicos de enumeración propios de nmap
, para conocer la versión y servicio que esta corriendo bajo los puertos.
Agregamos el dominio papaya.thl
a nuestro archivo hosts.
Si ingresamos a este dominio desde nuestro navegador, nos encontramos con el siguiente sistema llamado ElkArte
en su versión 1.1.9
.
ElkArte es un software de foros de código abierto basado en PHP, diseñado para crear y gestionar comunidades en línea con funciones mejoradas de administración y personalización.
Si buscamos por esta versión de ElkArte 1.1.9
, encontramos que es vulnerable a RCE (Remote Code Execution).
Para realizar esta explotación, necesitamos loguearnos en el sistema.
Probamos credenciales por defecto y logramos acceder con admin:password
.
Genial. Ahora que tenemos acceso, creamos un archivo php con el siguiente código.
Luego, creamos el archivo zip.
Por ultimo, subimos el "nuevo tema".
Accedemos a la ruta donde se descomprimio el archivo y vemos que ya tenemos capacidad de ejecución remota de comandos.
Ahora toca ganar acceso al sistema. Para ello, nos ponemos en escucha con netcat por el puerto 443.
Y como payload podemos utilizar la siguiente reverse shell.
Importante, encodear los caracteres ampersand &
a %26
para no tener problemas en la interpretación del código.
Ganamos acceso al sistema.
Hacemos un tratamiento de la tty para tener una terminal más interactiva:
script /dev/null -c bash
CTRL + Z
stty raw -echo; fg
reset xterm
export TERM=xterm
export SHELL=bash
stty rows <rows> columns <columns>
Enumerando el sistema, encontramos un archivo zip bajo el directorio /opt
.
Al intentar extraerlo nos solicita una contraseña.
Lo transferimos a nuestra máquina y utilizamos la herramienta zip2john
y luego john
para obtener la contraseña.
Extraemos el zip y obtenemos la contraseña del usuario papaya
.
Nos conectamos por ssh con el usuario papaya
.
Leemos la flag de user.txt
.
Si realizamos una enumeración básica del sistema, encontramos que al ejecutar sudo -l
podemos ejecutar el binario /usr/bin/scp
como el usuario root
sin solicitarnos contraseña.
Si buscamos en GTFObins encontramos que existe una manera de escalar nuestros privilegios a través de este binario en este contexto.
Procedemos a escalar nuestros privilegios.
Por ultimo, leemos la flag de root.txt
.
De esta forma, concluimos la resolución de la máquina Papaya.
Espero que los conceptos hayan quedado claros. Como siempre, en caso de tener alguna duda te invito a realizar nuevamente la máquina para afianzar tus conocimientos.
¡Gracias por leer!
Happy Hacking!