<- HTB

RegistryTwo


42 minutos de lectura

RegistryTwo
Hack The Box. Linux. Máquina insana. Esta máquina expone una aplicación web que permite crear dominios personalizados con código HTML. Además, hay un registro de Docker expuesto en el que podemos descargar blobs de imágenes de Docker después de obtener un token JWT adecuado. La aplicación web ejecuta un archivo WAR con Tomcat, podemos descompilarlo y ver que consulta un servidor RMI. Dado que Tomcat está detrás de un proxy inverso de nginx, podemos acceder a algunos servlets sensibles de Tomcat para modificar nuestra sesión y establecer permisos de administrador en la aplicación web. Necesitamos esto para modificar la configuración de RMI utilizando una vulnerabilidad de asignación en masa y apuntar el servidor RMI a nosotros. Después de eso, podemos explotar una vulnerabilidad de deserialización insegura en Java para obtener RCE en un contenedor. Luego, podemos interactuar con el servidor RMI legítimo utilizando un reenvío de puertos. Este servidor nos permite leer archivos arbitrarios con un ataque de navegación de directorios. Podemos encontrar una contraseña en texto claro para el usuario developer, que se reutiliza en SSH. Luego, root ejecuta un archivo JAR para analizar archivos del sitio web de hosting enviándolos a un servidor ClamAV. El problema aquí es que el JAR llama a las funciones del registro RMI, que se reinicia periódicamente. Por lo tanto, podemos elaborar un registro de RMI malicioso y una explotación para ganar una condición de carrera y ocupar el puerto, de modo que root consulte nuestro servidor ClamAV falso. El resultado será que todos los archivos en /root se pondrán en cuarentena dentro de un directorio legible, lo cual conduce a la escalada de privilegios