TMAegisBeta
Više pravila za websphere

IBM WebSphere

TMA-WEBSPHERE-6.7

Ensure 'http.conduit.tlsClientParameters.disableCNCheck' is set to 'false' to enable hostname verification for JAX-WS applications

VisokaNivo 1Automatskawebsphere

Opis

Enable hostname verification in JAX-WS applications by setting the http.conduit.tlsClientParameters.diableCNCheck HTTP conduit property to false. or Do not disable hostname verification in JAX-WS applications by setting the http.conduit.tlsClientParameters.diableCNCheck HTTP conduit property to true. or Enable hostname verification in JAX-WS applications. or Do not disable hostname verification in JAX-WS applications. Disabling hostname verification in JAX-WS applications by setting the http.conduit.tlsClientParameters.diableCNCheck HTTP conduit property to false. ... Audit: fails when any file under the server directory or shared/ sets http.conduit.tlsClientParameters.disableCNCheck to true.

Kako se proverava

Metod provere: Komanda ljuske

shell
bad=0; n=0; nl='
'
r=""
for b in "${WLP_USER_DIR:-}" /opt/ibm/wlp/usr /opt/IBM/WebSphere/Liberty/usr /opt/ol/wlp/usr /usr/local/wlp/usr; do
  [ -n "$b" ] && [ -d "$b/servers" ] || continue
  for s in "$b"/servers/*/; do [ -f "${s}server.xml" ] && r="$r$s$nl"; done
done
[ -f /config/server.xml ] && r="$r/config/$nl"
strip(){ awk 'BEGIN{RS="<!--"} NR==1{printf "%s",$0; next} {i=index($0,"-->"); if(i) printf "%s",substr($0,i+3)}'; }
gather(){ s=$1; { cat "${s}server.xml" "${s}"configDropins/defaults/*.xml "${s}"configDropins/overrides/*.xml; } 2>/dev/null | strip
  for loc in $(cat "${s}server.xml" "${s}"configDropins/defaults/*.xml "${s}"configDropins/overrides/*.xml 2>/dev/null | strip | tr '\r\n\t' '   ' | grep -oE '<include[[:space:]][^>]*>' | sed -n 's/.*location[[:space:]]*=[[:space:]]*"\([^"]*\)".*/\1/p'); do
    case $loc in http*) continue;; esac; loc=$(printf '%s' "$loc" | sed "s#\${server.config.dir}/*##"); case $loc in /*) f=$loc;; *) f=$s$loc;; esac
    [ -f "$f" ] && strip < "$f"; done; }
tag(){ printf '%s\n' "$X" | grep -oE "<$1([[:space:]][^>]*)?>"; }
chk(){ t=$(tag "$1"); if [ -z "$t" ]; then [ "$5" = na ] && return 0; [ "$4" = y ] && return 0; return 1; fi
  tot=$(printf '%s\n' "$t" | grep -c ''); v=$(printf '%s\n' "$t" | sed -n "s/.*[[:space:]]$2[[:space:]]*=[[:space:]]*[\"']\([^\"']*\)[\"'].*/\1/p"); st=0
  [ -n "$v" ] && st=$(printf '%s\n' "$v" | grep -c ''); case " config httpSession webAppSecurity jwtSso webContainer httpDispatcher applicationMonitor sslDefault httpOptions ltpa mpMetrics samesite transportLayer authenticationLayer attributeLayer " in *" $1 "*) [ "$st" -gt 0 ] && tot=$st;; esac; ok=$3; neg=n; case $ok in '!'*) neg=y; ok=${ok#!};; esac
  if [ "$st" -gt 0 ]; then m=$(printf '%s\n' "$v" | grep -ciE "^($ok)\$"); if [ "$neg" = n ]; then [ "$m" -eq "$st" ] || return 1; else [ "$m" -eq 0 ] || return 1; fi; fi
  [ "$st" -lt "$tot" ] && [ "$4" != y ] && return 1; return 0; }
IFS="$nl"; for s in $r; do n=$((n+1)); X=$(gather "$s" | tr '\r\n\t' '   ' | tr -s ' ')
grep -rEqi "tlsClientParameters\.disableCNCheck[^a-z]{1,6}true" "$s" "$(echo "${s%servers/*/}")shared" 2>/dev/null && bad=1
done; unset IFS; [ "$n" -gt 0 ] || exit 1; [ "$bad" -eq 0 ] && echo compliant || echo noncompliant
Očekivani izlaz
compliant

Kako se ispravlja

Metod ispravke: Smernica ili zakrpa infrastrukture

Add the http.conduit.tlsClientParameters.disableCNCheck property to webservice- endpoint element in ${server.config.dir}/configDropins/overrides/<any file name>.xml. Set the http.conduit.tlsClientParameters.disableCNCheck attributes value to false for both provider and client sides. The same setting can be disabled trough WEB-INF/ibm-ws-bnd.xml of the web application or META-INF/ibm-ws-bnd.xml of the EJB module. ... <!-- ***** Provider Side ***** --> <webApplication ... > <webservices-bnd ... > <webservice-endpoint ... > <properties http.conduit.tlsClientParameters.disableCNCheck="false" /> </webservice-endpoint> </webservices-bnd> </webApplication> ... <!-- ***** Client Side (service-ref) ***** --> <webApplication ... > <webservices-bnd ... > <service-ref ... ...

Svojstva

Operativni sistemi
Bilo koji
Oznake
webspherews-securitytls
Referenca
CIS IBM WebSphere Liberty Benchmark v1.0.0 - 6.7 Ensure 'http.conduit.tlsClientParameters.disableCNCheck' is set to 'false' to enable hostname verification for JAX-WS applications

Proverite ovaj računar

Pokrenite ovo na računaru za koji imate dozvolu za proveru. Skeniranje radi u režimu samo za čitanje.

shell
tmaegis scan --target websphere