TMAegisBeta
More rules for tomcat

Apache Tomcat

TMA-TOMCAT-10.11

Force SSL for all applications

LowLevel 2Automatedtomcat

Description

Use the transport-guarantee attribute to ensure SSL protection when accessing all applications. This can be overridden on a per application basis in the application configuration. conf/web.xml must set <transport-guarantee>CONFIDENTIAL</transport-guarantee>. Reads $CATALINA_BASE (default /opt/tomcat) and $CATALINA_HOME (default: $CATALINA_BASE); set them for packaged installs (e.g. CATALINA_BASE=/var/lib/tomcat10, CATALINA_HOME=/usr/share/tomcat10). XML comments are ignored.

How it is checked

Audit method: Shell command

shell
B=${CATALINA_BASE:-/opt/tomcat}; H=${CATALINA_HOME:-$B}; O=${TOMCAT_OWNER:-tomcat_admin}; G=${TOMCAT_GROUP:-tomcat}; x(){ [ -r "$1" ] || return 1; awk 'BEGIN{RS="<!--"} NR==1{print;next} {i=index($0,"-->"); if(i) print substr($0,i+3)}' "$1" | tr '\n\t\r' '   ' | tr '<' '\n'; }; w=$(x "$B/conf/web.xml") || exit 1; printf '%s\n' "$w" | grep -Eq '^transport-guarantee>[[:space:]]*CONFIDENTIAL' && echo compliant || echo noncompliant
Expected output
compliant

How it is fixed

Fix method: Guidance or infrastructure patch

Add a security-constraint with <user-data-constraint><transport-guarantee>CONFIDENTIAL</transport-guarantee></user-data-constraint> to conf/web.xml. Restart Tomcat afterwards.

Properties

Operating systems
Any
Tags
tomcattls
Reference
CIS Apache Tomcat 10.1 Benchmark v1.0.0 - 10.11 Force SSL for all applications

Check this host

Run this on a machine you are allowed to audit. The scan is read-only.

shell
tmaegis scan --target tomcat --level 2