Tomcat que sirve contenido estático
Tengo una aplicación Spring y me pregunto cuál es la mejor manera de servir contenido estático. He probado lo siguiente:
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>/static/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>app</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
Esto funciona, pero el comportamiento del DefaultServlet significa que cualquier solicitud del formulario/static/PATH
sirve el archivo dewebapp/PATH
. Esto expone una vulnerabilidad masiva, lo que permite mostrar información confidencial con URL como:http: //localhost/app/static/META-INF/context.xml
¿Cuál es la solución común para esto? ¿Debo mover los archivos confidenciales? ¿Escribir mi propio DefaultServlet? ¿O hay una mejor manera de servir contenido estático?