V3R5 changes
Apache Tomcat Application Server 9 STIG V3R5 (2026-09-30) replaced V3R4 (2026-04-01): 6 checks updated. It has 79 checks, against 79 in V3R4.
V3R5 checklistV3R4 checklist Compare V3R4 and V3R5 in STIG Compare
- 0 added
- 0 removed
- 6 updated
Updated fields: Check text 4Fix text 4Discussion 4Title 1
Updated in V3R5 (6)
V-222962CAT IITomcat management applications must use LDAP realm authentication.Discussion
Discussion
Using the local user store on a Tomcat installation does not meet a multitude of security control requirements related to user account management. To address this risk, Tomcat must be configured to utilize an LDAP or Active Directory installation that provides a centralized user account store that is configured to meet standard DoDDoW user account management requirements. JNDIRealm is an implementation of the Tomcat Realm interface that looks up users in an LDAP directory server accessed by a JNDI provider (typically, the standard LDAP provider that is available with the JNDI API classes). The realm supports a variety of approaches to using a directory for authentication.
V-222966CAT IIDoW root CA certificates must be installed in Tomcat trust store.Title, Check text, Fix text
Title
DODoW root CA certificates must be installed in Tomcat trust store.
Check text
This is a mutual authentication requirement where both the Tomcat server and the client are required to authenticate themselves via mutual TLS. Review system security plan and other system documentation. If the system has no connections requiring mutual authentication (e.g., proxy servers or other hosts specified in the system documentation), this requirement is Not Applicable.
For the systemd Ubuntu OS, check the tomcat.service file to read the content of the JAVA_OPTS environment variable setting.
sudo cat /etc/systemd/system/tomcat.service |grep -i truststore
EXAMPLE output:
set JAVA_OPTS="-Djavax.net.ssl.trustStore=/path/to/truststore" "-Djavax.net.ssl.trustStorePassword=************"
If the variable is not set, use the default location command below. If the variable is set, use the alternate location command below and include the path and truststore file.
-Default location:
keytool -list -cacerts -v | grep -i issuer
-Alternate location:
keytool -list -keystore <location of trust store file> -v |grep -i issuer
If there are no CA certificates issued by a CA that are part of the DODDoW PKI/PKE, this is a finding.
Fix text
Obtain and install the DODoW PKI CA certificate bundles by accessing the DODoW PKI office website at cyber.mil/pki-pke.
Import the DODoW CA certificates.
V-222973CAT IIITomcat must be configured to limit data exposure between applications.Check text, Fix text
Check text
From the Tomcat server as a privileged user, run the following command:
sudo grep -i recycle_facades /etc/systemd/system/tomcat.service
If there are no results, or if the org.apache.catalina.connector. RECYCLE_FACADES is not ="true", this is a finding.
Fix text
From the Tomcat server as a privileged user:
editEdit the /etc/systemd/system/tomcat.service file and either add or edit the org.apache.catalina.connector. RECYCLE_FACADES setting.
Set the org.apache.catalina.connector. RECYCLE_FACADES=true.
EXAMPLE:
Environment='CATALINA_OPTS -Dorg.apache.catalina.connector. RECYCLE_FACADES=true'
Restart the Tomcat server:
sudo systemctl restart tomcat
sudo systemctl daemon-reload
V-222993CAT IIMultifactor certificate-based tokens (CAC) must be used when accessing the management interface.Discussion
Discussion
Password authentication does not provide sufficient security control when accessing a management interface. DODDoW has specified that a CAC will be used when authenticating and passwords will only be used when CAC authentication is not a plausible solution. Tomcat provides the ability to do certificate based authentication and client authentication; therefore, the Tomcat server must be configured to use CAC.
Satisfies: SRG-APP-000391-AS-000239, SRG-APP-000392-AS-000240, SRG-APP-000402-AS-000247, SRG-APP-000403-AS-000248
V-222994CAT IICertificates in the trust store must be issued/signed by an approved CA.Check text, Fix text, Discussion
Check text
For the systemd Ubuntu OS, check the tomcat.service file to read the content of the JAVA_OPTS environment variable setting.
sudo cat /etc/systemd/system/tomcat.service |grep -i truststore
EXAMPLE output:
set JAVA_OPTS="-Djavax.net.ssl.trustStore=/path/to/truststore" "-Djavax.net.ssl.trustStorePassword=************"
If the variable is not set, use the default location command below. If the variable is set, use the alternate location command below and include the path and truststore file.
-Default location:
keytool -list -cacerts -v | grep -i issuer
-Alternate location:
keytool -list -keystore <location of trust store file> -v |grep -i issuer
If there are no CA certificates issued by a Certificate Authority (CA) that is part of the DoDDoW PKI/PKE, this is a finding.
Fix text
Obtain and install the DoDDoW PKI CA certificate bundles by accessing the DoDDoW PKI office website at https://cyber.mil/pki-pke.
Download the certificate bundles and then use certificate management utilities such as keytool or openssl to import the DoDDoW CA certificates into the trust store.
Discussion
Use of self-signed certificates creates a lack of integrity and invalidates the certificate based authentication trust model. Certificates used by production systems must be issued/signed by a trusted Root CA and cannot be self-signed. For systems that communicate with industry partners, the DoDDoW ECA program supports the issuance of DoDDoW-approved certificates to industry partners. For information on the DoDDoW ECA program, refer to the DoDDoW PKI office. Links to their site are available on https://public.cyber.mil.
V-223001CAT IIIApplication servers must use NIST-approved or NSA-approved key management technology and processes.Check text, Fix text, Discussion
Check text
For the systemd Ubuntu OS, check the tomcat.service file to read the content of the JAVA_OPTS environment variable setting.
sudo cat /etc/systemd/system/tomcat.service |grep -i truststore
EXAMPLE output:
set JAVA_OPTS="-Djavax.net.ssl.trustStore=/path/to/truststore" "-Djavax.net.ssl.trustStorePassword=************"
If the variable is not set, use the default location command below. If the variable is set, use the alternate location command below and include the path and truststore file.
-Default location:
keytool -list -cacerts -v | grep -i issuer
-Alternate location:
keytool -list -keystore <location of trust store file> -v |grep -i issuer
If there are no CA certificates issued by a Certificate Authority (CA) that is part of the DoDDoW PKI/PKE, this is a finding.
Fix text
Obtain and install the DoDW PKI CA certificate bundles by accessing the DoDW PKI office website at cyber.mil/pki-pke.
Import the DoDW CA certificates.
Discussion
Class 3 PKI certificates are used for servers and software signing rather than for identifying individuals. Class 4 certificates are used for business-to-business transactions. Utilizing unapproved certificates not issued or approved by DoDDoW or CNS creates an integrity risk. The application server must utilize approved DoDDoW or CNS Class 3 or Class 4 certificates for software signing and business-to-business transactions.
How these changes are found
Checks are matched across the two releases by V-number. A check counts as updated when DISA gave it a new rule revision (the r number in its SV-…_rule id) and its title, severity, check text, fix text, discussion, CCIs or other fields changed — the same comparison STIG Compare makes. Added checks are new V-numbers; removed checks are V-numbers V3R5 no longer has.
Comparing other releases, or this one against an older release? Pick any two in STIG Compare.