Pickle Rick

Resolución

Reconocimiento

Comenzamos realizando un escaneo con Nmap para identificar los puertos abiertos y los servicios disponibles en el objetivo

nmap -sC -sV -Pn 10.10.251.254

El escaneo revela que los servicios SSH y HTTP están activos
Pasted image 20250122192702.png
Como tercer paso escaneos los posible directorios de la página web con el comando:

nmap --script http-enum -p80  10.10.251.254

El script http-enum de Nmap nos permite identificar páginas o rutas relevantes dentro de un servidor web.
Pasted image 20250122193829.png
El análisis reveló la existencia de un archivo login.php, que podría ser una página de inicio de sesión.

Análisis de vulnerabilidades

Entramos a la página web
Pasted image 20250122192809.png
Al inspeccionar el código fuente de la página, encontramos un comentario interesante que menciona un posible usuario: R1ckRul3s
Pasted image 20250125173016.png
Este hallazgo podría ser una pista crucial para la explotación posterior, ya que sugiere un nombre de usuario que podríamos utilizar en futuras etapas del análisis.

Primero, accedimos a /login.php, que, como es lógico, corresponde a una página de inicio de sesión. Sin embargo, durante el escaneo de rutas del sitio web, también descubrimos un archivo /robots.txt. Al analizar su contenido, encontramos una entrada interesante:
Pasted image 20250125163545.png

Explotación

Finalmente, logramos iniciar sesión utilizando el usuario R1ckRul3s y la contraseña Wubbalubbadubdub. Al ingresar, se nos presentó un panel que permite ejecutar comandos.
Pasted image 20250125163938.png

Escalada de privilegios

Para entender cómo funciona el panel, probamos con el comando ls, y este se ejecutó correctamente, mostrando los archivos en el directorio. Entre ellos, encontramos un archivo .txt que parecía ser uno de los ingredientes necesarios. Sin embargo, al intentar visualizar su contenido con el comando cat, nos dimos cuenta de que este no estaba habilitado.
Pasted image 20250125163911.png
A continuación, intentamos probar todos los comandos posibles. Observamos que algunos estaban desactivados, como cat, pwd y nano, pero descubrimos que el comando tac sí funcionaba correctamente.
Pasted image 20250125164131.png

Dado que podemos ejecutar comandos, decidimos realizar un reverse shell. Para ello, accedimos a la herramienta en línea ReverseShells, configuramos nuestra IP de atacante y elegimos un puerto arbitrario para escuchar las conexiones entrantes.

En la máquina atacante, configuramos Netcat para escuchar en el puerto seleccionado:

nc -lvnp 1234

Luego, copiamos el comando de reverse shell generado por la herramienta y lo ejecutamos desde la página web. Esto nos permitió obtener acceso a la máquina víctima.
Pasted image 20250125171556.png
Ya estamos dentro de la máquina
Pasted image 20250125171628.png
Ya que hemos obtenido acceso a la máquina, ejecutamos el comando sudo -l para verificar qué acciones podemos realizar como administrador sin necesidad de proporcionar una contraseña:

sudo -l

Pasted image 20250125171745.png
A partir de los resultados, descubrimos que podemos ejecutar comandos como root sin necesidad de contraseña. Por lo tanto, ejecutamos el siguiente comando para obtener privilegios de superusuario:

sudo su

¡Ya somos root!

Pasted image 20250125171935.png