Synopsis

Type/Severity

Topic

This update has been rated as having Important security impact by the RedHat Security Response Team.

Description

Tomcat is a servlet container for Java Servlet and JavaServer Pagestechnologies.

This update addresses the following issues:

Tomcat was found to accept multiple content-length headers in arequest. This could allow attackers to poison a web-cache, bypass webapplication firewall protection, or conduct cross-site scripting attacks. (CVE-2005-2090)

Tomcat permitted various characters as path delimiters. If Tomcat was usedbehind certain proxies and configured to only proxy some contexts, anattacker could construct an HTTP request to work around the contextrestriction and potentially access non-proxied content. (CVE-2007-0450)

Users should upgrade to these erratum packages, which contain an update tojbossas to include a version of Tomcat that resolves these issues. Updatedjakarta-commons-modeler packages are also included which correct a bug whenused with Tomcat 5.5.23.

Solution

Note: /etc/tomcat5/web.xml has been updated to disable directory listing bydefault. If you have previously modified /etc/tomcat5/web.xml, this changewill not be made automatically and you should manually update the value forthe "listings" parameter to "false".

Note: In response to CVE-2007-0450, JBoss AS considers encoded slashes andbackslashes in URLs invalid and its usage will result in HTTP 400 error. Itis possible to allow encoded slashes and backslashes by following the stepsoutlined below, however doing so will expose you to CVE-2007-0450 relatedattacks:

a) If you use the /var/lib/jbossas/bin/run.sh setup, please edit /etc/jbossas/run.conf and append

Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true

Dorg.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH=true to thestring assigned to JAVA_OPTS

b) If you use the init script setup to run multiple JBoss AS services andyou wish to allow encoding by default on all services, please edit/etc/jbossas/jbossas.conf and add the line JAVA_OPTS="${JAVA_OPTS}

Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true

Dorg.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH=true"

c) If you use the init script setup to run multiple JBoss AS services andwant to allow encoding of slashes and backslashes for a particular service,please edit /etc/sysconfig/${NAME} (where NAME is the name of your service)and add the line JAVA_OPTS="${JAVA_OPTS}

Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true

Dorg.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH=true"

Before applying this update, make sure that all previously-releasederrata relevant to your system have been applied.

This update is available via Red Hat Network. Details on how to usethe Red Hat Network to apply this update are available athttp://kbase.redhat.com/faq/FAQ_58_10188