
Mientras que el puerto 8009 gestiona el protocolo AJP, el puerto 8180 aloja la interfaz de cara al usuario: El servidor HTTP de Apache Tomcat. Es el puerto alternativo que utiliza Metasploitable2 para que no choque con el servidor web Apache principal que corre en el puerto 80.
Tomcat es un servidor web y contenedor de servlets de código abierto, su función principal es ejecutar aplicaciones web escritas en el lenguaje de programación Java.
Reconocimiento


Con las credenciales por defecto, pudimos ingresar al panel de administración de tomcat, con acceso a este panel existen 3 riesgos críticos
- Ejecución remota de código (RCE) mediante el despliegue de archivos
.war. Este es el peligro más destructivo de todos. Un atacante puede crear un archivo comprimido que contenga una Webshell en Java (JSP) y que al subirlo tomcat descomprime y ejecuta la aplicación automáticamente en el servidor. - Robo de información sensible. Muchas de las aplicaciones desplegabas en tomcat se comunican con bases de datos internas. Al explorar las aplicaciones activas, un atacante puede extraer rutas de directorios, nombre de bases de datos y a menudo, configuraciones que contienen contraseñas en texto plano.
- Denegación de servicios. La consola de administración nos da control directo sobre el ciclo de vida de los servicios del servidor. Al lado de cada aplicación listada, hay un boton de Stop, Reload y Undeploy (Desinstalar)
Hardening
Esta vez vamos a tomar el camino B, el blindaje Tomcat antes de la eliminación. En esta ocasión, pudimos ingresar al panel de administración con las credenciales por defecto. Cambiaremos estas credenciales y restringiremos el acceso a la consola para que solo se pueda ingresar desde una dirección IP autorizada.
**Buscamos el archivo de configuración
find / -name "tomcat-users.xml" 2>/dev/null
y abrimos el archivo con el editor

cambiamos las credenciales

Dentro del archivo context.xml agregamos una regla para permitir solo el acceso a locahost o una ip de confianza.

Nota : RemoteAddrValve, es la encargada de filtrar coexiones basándose en la dirección IP del cliente.
Terminamos reiniciando el servicio
/etc/init.d/tomcat5.5 restart

Como nuestra dirección IP no está en la regla, nos rechazara la conexión.