TMAegisBeta
More rules for tomcat

Apache Tomcat

TMA-TOMCAT-4.15

Restrict access to jaspic-providers.xml

MediumLevel 1Automatedtomcat

Description

Tomcat implements JASPIC 1.1 Maintenance Release B (JSR 196). The implementation is primarily intended to enable the integration of 3rd party JASPIC authentication implementations with Tomcat. JASPIC may be configured dynamically by an application or statically via the $CATALINA_BASE/conf/jaspic-providers.xml configuration file. It is recommended that access to this file properly protect from unauthorized changes. $CATALINA_BASE/conf/jaspic-providers.xml must not match -perm /o+rwx,g+rwx,u+x and must be owned by $TOMCAT_OWNER:$TOMCAT_GROUP; expects 0 findings. 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. The expected owner/group are tomcat_admin:tomcat as in the benchmark; override with TOMCAT_OWNER / TOMCAT_GROUP.

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'; }; p="$B/conf/jaspic-providers.xml"; [ -e "$p" ] || exit 1; find -L "$p" -maxdepth 0 \( -perm /o+rwx,g+rwx,u+x -o ! -user "$O" -o ! -group "$G" \) -print 2>/dev/null | wc -l
Expected output
0

How it is fixed

Fix method: Guidance or infrastructure patch

chown tomcat_admin:tomcat $CATALINA_BASE/conf/jaspic-providers.xml && chmod 600 $CATALINA_BASE/conf/jaspic-providers.xml. Restart Tomcat afterwards.

Properties

Operating systems
Any
Tags
tomcatpermissions
Reference
CIS Apache Tomcat 10.1 Benchmark v1.0.0 - 4.15 Restrict access to jaspic-providers.xml

Check this host

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

shell
tmaegis scan --target tomcat