Enumeración
Voy a comenzar realizando un escaneo de puertos con nmap:
Me encuentro con que los puertos 22 y 80 están abiertos, con lo cual voy a ingresar en la pagina web para ver si hay algo interesante:
Al ingresar en la web veo que se trata de un sitio estático, con lo cual voy a proseguir en la búsqueda de algún vhost:
Veo que hay un vhost el cual es "lms.permx.htb", al ingresar veo que se trata de un login de chamilo. Este es un software que permite brindar educación virtual:
Explotación
Para este punto ya no sabia muy bien para donde seguir, así que busque si había alguna vulnerabilidad registrada para este sistema. Encontré una vulnerabilidad que se adaptaba a lo que necesitaba (CVE -2023-4220).
Luego busque como explotar esta vulnerabilidad y encontré la solución en un repositorio de github: https://github.com/Ziad-Sakr/Chamilo-CVE-2023-4220-Exploit?tab=readme-ov-file.
Luego de seguir los paso del repositorio al pie de la letra logré obtener una reverse shell.
Escalada de Privilegios
Para este punto me enfoque en encontrar alguna credencial para poder ingresar por medio de SSH.
En el directorio home encontré que había un usuario "mtz", luego en el archivo app/configuration.php encontré una contraseña. Probé suerte con ambas credenciales para ingresar por medio de SSH y funcionó.
Una vez dentro con el usuario "mtz" logré dar facilmente con la bandera usuario, simplemente listando archivos en la raíz del usuario.
Ahora voy a ingresar el comando sudo -l para ver que permisos tengo y me figura que tengo permisos completos para /opt/acl.sh.
Ingresé en el archivo para ver de que se trataba y era un código que permitia modificar los permisos de los usuarios:
Hay un pequeño problema y es que no lo puedo modificar ya que para poder modificarlo necesito que el archivo de destino este en la carpeta de inicio.
Para poder resolver este problema voy a crear un nuevo enlace que este dirigido a /etc/sudoers para luego darle permisos de escritura y de esta manera modificarlo dándole al usuario mtz los permisos de root:
ln -s /etc/sudoers Sir_Reda
sudo /opt/acl.sh mtz rw /home/mtz/Sir_Reda
De esta manera obtenemos el permiso de root. Solo resta navegar por el sistema hasta encontrar la bandera root.
Felicitaciones! Espero que este tutorial te haya sido de ayuda.