Apache Tomcat
TMA-TOMCAT-10.6
Enable strict servlet Compliance
説明
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.
チェック方法
監査方法: シェルコマンド
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- 期待される出力
compliant
修正方法
修正方法: ガイダンスまたは IaC パッチ
Add CATALINA_OPTS="$CATALINA_OPTS -Dorg.apache.catalina.STRICT_SERVLET_COMPLIANCE=true" to $CATALINA_BASE/bin/setenv.sh. Restart Tomcat afterwards.
プロパティ
- オペレーティングシステム
- すべて
- タグ
- tomcathardening
- 参照
- CIS Apache Tomcat 10.1 Benchmark v1.0.0 - 10.6 Enable strict servlet Compliance
このホストをチェック
監査が許可されているマシンで実行してください。スキャンは読み取り専用です。
tmaegis scan --target tomcat --level 2