TMAegis
More rules for tomcat

TMA-TOMCAT-10.2

Restrict access to the web administration application

HighLevel 1Automatedtomcat

Description

Limit access to the web administration application to only those with a justified need. server.xml must contain an uncommented RemoteAddrValve (or RemoteCIDRValve) restricting client addresses. 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'; }; s=$(x "$B/conf/server.xml") || exit 1; printf '%s\n' "$s" | grep -Eq '^Valve[[:space:]].*org\.apache\.catalina\.valves\.Remote(Addr|CIDR)Valve' && echo compliant || echo noncompliant
Expected output
compliant

How it is fixed

Fix method: Guidance or infrastructure patch

Add <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.0\.0\.1"/> to the relevant Host/Context in server.xml. Restart Tomcat afterwards.

Properties

Operating systems
Any
Tags
tomcataccess-control
Reference
CIS Apache Tomcat 10.1 Benchmark v1.0.0 - 10.2 Restrict access to the web administration application

Check this host

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

shell
tmaegis scan --target tomcat