Buster
Last updated
Last updated
Estos son los ajustes de red que tiene la máquina victima, lo demás lo he dejado como viene por defecto:
Para identificar la IP de la maquina victima tendremos que hacer uso del siguiente comando:
Lo primero como siempre es escanear los puertos expuestos, esto lo podremos conseguir con Nmap; encontramos los siguientes puertos abiertos:
22 (SSH)
80 (HTTP)
La web es un WordPress y no tiene nada de mucho interés en su interior, asà que sin mas dilación vamos a hacer un escaneo de WPScan
Con wpscan se pueden descubrir vectores potenciales para la explotación de un WordPress, en este lo que estamos buscando es algún plugin vulnerable del cual podernos aprovechar para escalar privilegios.
Tras una larga espera 30 minutos aproximadamente, damos con el plugin vulnerable, el cual es el vector de explotación en esta máquina, "WP Query Console", un plugin vulnerable con el cual conseguiremos Ejecución Remota de Comandos (Or en English, Remote Code Execution, RCE ), no logro encontrar nada en exploit-db, pero en GitHub encuentro un POC (Proof Of Concept).
Lo replicamos en nuestro Burp-Suite y indagando un poco por la respuesta, encuentro una lista de funciones bloqueadas, asà que tendremos que hacer uso de algún comando que no este en esta lista para ejecutar comandos:
Una alternativa podrÃa ser shell_exec, comprobamos que funciona haciéndonos un ping:
Nos mandamos una reverseshell para poder hacer Ejecución Remota de Comandos y como no, lo primero que haremos será la Depuración de tty:
Dentro del wp-config.php, hayamos unos credenciales
Iniciamos sesión en mysql con dichos credenciales, vamos a navegar entre las bases de datos y tablas hasta encontrar con más posibles credenciales:
Bingo, encontramos dos hashes de unos usuarios, vamos a pasárnoslos a la maquina atacante, para con John, una herramienta de cracking, dar con la contraseña valida:
También probé con el hash de ta0 pero no encuentra nada, da igual, porque con el credencial obtenido con John, iniciamos sesión como welcome (Un usuario del sistema)
Se nos ha jodido la shell al iniciar sesión, no pasa nada, volvemos a hacer la Depuración de tty
Revisando los permisos suid, encontramos que podemos ejecutar gobuster como cualquier usuario, es decir, podrÃamos ejecutarlo como root, quizás podrÃamos jugar con el output de los directorios encontrados usando gobuster...
Nos descargamos pspy64 para poder revisar las tareas cron que se están ejecutando en el equipo y encontramos que se ejecuta con la bash un archivo .sh, "test.sh".
Las cosas que se me viene a la mente que podrÃamos hacer serian:
Con el output de gobuster, editar el /opt/.test.sh para asà obtener una reverseshell como root
Con el output de gobuster, editar el /opt/.test.sh para que a su vez el /etc/sudoers se edite y asà obtener root haciendo un sudo bash -p
Yo hare la segunda porque la primera ya la hizo ll104567 en su writeup, también una cosa interesante que se podrÃa hacer es editar el /etc/passwd como hizo 7r1UMPH, de está manera no se utilizarÃa la tarea cron y solo editarÃa el /etc/passwd. Os dejo por aqui un pequeño esquema en Paint de lo que tengo pensado hacer:
Primero nos creamos la ruta que queramos que ejecute la tarea cron en nuestra maquina atacante:
Ahora nos creamos la wordlist para que busque la ruta creada en nuestra maquina atacante y corremos el gobuster (Para comprobar que el archivo se ha editado correctamente se le puede hacer un "ls -al /opt" y revisar la fecha de edición):
Yo en este punto lo que he hecho, ha sido crear en el /tmp/sudomucho de la maquina victima, un archivo que añada con un echo al /etc/sudoers una orden para que el usuario welcome pueda ejecutar comandos de privilegios elevados sin proporcionar contraseñas:
Se ejecuta el script y conseguimos ser root :)
La escalada de privilegios de está maquina ha sido divertida, hay varias maneras de hacerlo asà que no te cortes y prueba de todas las maneras que se te ocurran! 😎👌