TMAegisBeta
More rules for tomcat

Apache Tomcat

TMA-TOMCAT-10.15

Do not resolve hosts on logging valves

LowLevel 2Automatedtomcat

Description

Setting enableLookups to true on Connector will result in a DNS look-ups to obtain the host name of the remote client before logging any information. This uses additional resources when logging. Counts elements in server.xml with enableLookups="true"; expects 0. 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 -Ec 'enableLookups[[:space:]]*=[[:space:]]*.true' || true
Expected output
0

How it is fixed

Fix method: Guidance or infrastructure patch

Remove enableLookups="true" (default false) from Connectors and valves in server.xml. Restart Tomcat afterwards.

Properties

Operating systems
Any
Tags
tomcathardening
Reference
CIS Apache Tomcat 10.1 Benchmark v1.0.0 - 10.15 Do not resolve hosts on logging valves

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