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
-sC: Ejecuta scripts predeterminados para obtener información adicional sobre los servicios.-sV: Detecta las versiones de los servicios en los puertos abiertos.-Pn: Omite el escaneo de ping, asumiendo que el host está activo.
El escaneo revela que los servicios SSH y HTTP están activos

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.

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

Al inspeccionar el código fuente de la página, encontramos un comentario interesante que menciona un posible usuario: R1ckRul3s

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:

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.

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.

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.

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.

Ya estamos dentro de la máquina

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

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
