Apache Tomcat
TMA-TOMCAT-10.6
Enable strict servlet Compliance
Descripción
The STRICT_SERVLET_COMPLIANCE influences Tomcat's behavior in several subtle ways. See the References below for the complete list. It is recommended that STRICT_SERVLET_COMPLIANCE be set to true. -Dorg.apache.catalina.STRICT_SERVLET_COMPLIANCE=true must be set. Searches uncommented lines of $CATALINA_HOME/bin/catalina.sh and setenv.sh (HOME and BASE) plus the running Tomcat command line. 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. CIS marks this recommendation Manual; the automated check implements its audit procedure.
Cómo se verifica
Método de auditoría: Comando de 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'; }; src=$( { for f in "$H/bin/catalina.sh" "$H/bin/setenv.sh" "$B/bin/setenv.sh"; do [ -r "$f" ] && grep -v '^[[:space:]]*#' "$f"; done; ps -eo args 2>/dev/null | grep '[o]rg\.apache\.catalina\.startup\.Bootstrap'; } ); printf '%s\n' "$src" | grep -q 'org\.apache\.catalina\.STRICT_SERVLET_COMPLIANCE=true' && echo compliant || echo noncompliant- Salida esperada
compliant
Cómo se corrige
Método de corrección: Guía o parche de infraestructura
Add CATALINA_OPTS="$CATALINA_OPTS -Dorg.apache.catalina.STRICT_SERVLET_COMPLIANCE=true" to $CATALINA_BASE/bin/setenv.sh. Restart Tomcat afterwards.
Propiedades
- Sistemas operativos
- Cualquiera
- Etiquetas
- tomcathardening
- Referencia
- CIS Apache Tomcat 10.1 Benchmark v1.0.0 - 10.6 Enable strict servlet Compliance
Verificar este host
Ejecute esto en un equipo que tenga permiso para auditar. El escaneo es de solo lectura.
tmaegis scan --target tomcat --level 2