TMAegis
tomcat için daha fazla kural

TMA-TOMCAT-10.18

Use the logEffectiveWebXml and metadata-complete settings for deploying applications in production

DüşükDüzey 1Otomatiktomcat

Açıklama

Both fragments and annotations give rise to security concerns. web.xml contains a metadata-complete attribute on the web-app element whose binary value defines whether other sources of metadata should be considered when deploying this web application, this includes annotations on class files (@WebServlet, but also @WebListener, @WebFilter, …), web-fragment.xml as well as classes located in WEB-INF/classes. Counts applications whose WEB-INF/web.xml lacks metadata-complete="true" or whose META-INF/context.xml lacks logEffectiveWebXml="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.

Nasıl denetlenir

Denetim yöntemi: Kabuk komutu

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'; }; [ -d "$B/webapps" ] || exit 1; n=0; for a in "$B"/webapps/*/; do [ -d "$a" ] || continue; x "$a/WEB-INF/web.xml" 2>/dev/null | grep -Eq '^web-app[[:space:]].*metadata-complete[[:space:]]*=[[:space:]]*.true' && x "$a/META-INF/context.xml" 2>/dev/null | grep -Eq '^Context[[:space:]].*logEffectiveWebXml[[:space:]]*=[[:space:]]*.true' || n=$((n+1)); done; echo $n
Beklenen çıktı
0

Nasıl düzeltilir

Düzeltme yöntemi: Kılavuz veya altyapı yaması

Set metadata-complete="true" on <web-app> in each application web.xml and logEffectiveWebXml="true" on <Context> in each META-INF/context.xml. Restart Tomcat afterwards.

Özellikler

İşletim sistemleri
Herhangi biri
Etiketler
tomcatdeployment
Referans
CIS Apache Tomcat 10.1 Benchmark v1.0.0 - 10.18 Use the logEffectiveWebXml and metadata-complete settings for deploying applications in production

Bu ana makineyi denetle

Bunu denetleme izniniz olan bir makinede çalıştırın. Tarama salt okunurdur.

shell
tmaegis scan --target tomcat