UCF STIG Viewer Logo

Tomcat must use FIPS-validated ciphers on secured connectors.


Overview

Finding ID Version Rule ID IA Controls Severity
V-222968 TCAT-AS-000750 SV-222968r615938_rule High
Description
Connectors are how Tomcat receives requests over a network port, passes them to hosted web applications via HTTP or AJP, and then sends the results back to the requestor. Cryptographic ciphers are associated with the connector to create a secured connector. To ensure encryption strength is adequately maintained, the ciphers used must be FIPS 140-2-validated. The FIPS-validated crypto libraries are not provided by Tomcat; they are included as part of the Java instance and the underlying Operating System. The STIG checks to ensure the FIPSMode setting is enabled for the connector and also checks the logs for FIPS errors, which indicates FIPS non-compliance at the OS or Java layers. The administrator is responsible for ensuring the OS and Java instance selected for the Tomcat installation provide and enable these FIPS modules so Tomcat can be configured to use them. Satisfies: SRG-APP-000224-AS-000152, SRG-APP-000428-AS-000265, SRG-APP-000429-AS-000157, SRG-APP-000439-AS-000274, SRG-APP-000440-AS-000167
STIG Date
Apache Tomcat Application Sever 9 Security Technical Implementation Guide 2021-12-27

Details

Check Text ( C-24640r426348_chk )
From the Tomcat server console, run the following two commands to verify Tomcat server is configured to use FIPS:

sudo grep -i fipsmode $CATALINA_BASE/conf/server.xml

sudo grep -i fipsmode $CATALINA_BASE/logs/catalina.out

If server.xml does not contain FIPSMode="on", or if catalina.out contains the error "failed to set property[FIPSMODE] to [on]", this is a finding.
Fix Text (F-24629r426349_fix)
In addition to configuring Tomcat, the admin must also configure the underlying OS and Java engine to use FIPS validated encryption modules. This fix instructs how to enable FIPSMode within Tomcat, the OS and Java engine must be configured to use the FIPS validated modules according to the chosen OS and Java engine.

From the Tomcat server as a privileged user:

sudo nano $CATALINA_BASE/conf/server.xml.

In the element, locate the AprLifecycleListener. Either add or modify the FIPSMode setting and set it to FIPSMode="on".

EXAMPLE:
className="org.apache.catalina.core.AprLifecycleListener"
SSLEngine="on"
FIPSMode="on"
/>

Restart the Tomcat server:
sudo systemctl restart tomcat
sudo systemctl daemon-reload