TCAT-AS-000090 - DefaultServlet must be set to readonly for PUT and DELETE.

Information

The DefaultServlet is a servlet provided with Tomcat. It is called when no other suitable page can be displayed to the client. The DefaultServlet serves static resources as well as directory listings and is declared globally in $CATALINA_BASE/conf/web.xml. By default, Tomcat behaves as if the DefaultServlet is set to 'true' (HTTP commands like PUT and DELETE are rejected). However, the readonly parameter is not in the web.xml file by default so to ensure proper configuration and system operation, the 'readonly' parameter in web.xml must be created and set to 'true'. Creating the setting in web.xml provides assurances the system is operating as required. Changing the readonly parameter to false could allow clients to delete or modify static resources on the server and upload new resources.

Solution

From the Tomcat server console as a privileged user:

Edit the $CATALINA_BASE/conf/web.xml file.

If the 'readonly' param-value does not exist, it must be created.

Ensure the 'readonly' param-value for the 'DefaultServlet' servlet class = 'true'.

See Also

https://dl.dod.cyber.mil/wp-content/uploads/stigs/zip/U_Apache_Tomcat_Application_Server_9_V3R1_STIG.zip

Item Details

Category: ACCESS CONTROL

References: 800-53|AC-3, CAT|II, CCI|CCI-000213, Rule-ID|SV-222934r960792_rule, STIG-ID|TCAT-AS-000090, STIG-Legacy|SV-111399, STIG-Legacy|V-102451, Vuln-ID|V-222934

Plugin: Unix

Control ID: 29891140961f93415c46c8f44c8a4b02faf61260888ef4ebf83855cc6355d5cf