Bug 230045

Summary: CVE-2007-0774 mod_jk overflow flaw
Product: [Retired] Red Hat Web Application Stack Reporter: Mark J. Cox <mjc>
Component: mod_jkAssignee: Vivek Lakshmanan <viveklak>
Status: CLOSED ERRATA QA Contact: Len DiMaggio <ldimaggi>
Severity: urgent Docs Contact:
Priority: urgent    
Version: v1.1CC: dbhole, security-response-team
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard: impact=critical,reported=20070223,embargo=20070227,source=asf
Fixed In Version: RHSA-2007-0096 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-03-02 18:30:36 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
patch from jclere none

Description Mark J. Cox 2007-02-26 10:00:40 UTC
This issue is embargoed until probably Tue 27th Feb (it may well be Wed).
Please do not release anything until you see an update publically on the
Tomcat site (tomcat.apache.org).

-- VULNERABILITY DETAILS -----------------------------------------------

This vulnerability allows remote attackers to execute arbitrary code on
vulnerable installations of Apache Tomcat Connector. Authentication is not
required to exploit this vulnerability.

The specific flaw exists in the URI handler for the mod_jk.so library.
When parsing a long URL request, the URI worker map routine performs an
unsafe memory copy. This results in a stack overflow condition which can
be leveraged execute arbitrary code.

The vulnerable routine exists in native/common/jk_uri_worker_map.c:

    [...]
    char url[JK_MAX_URI_LEN+1];
    [...]
    for (i = 0; i < strlen(uri); i++)
    if (uri[i] == ';')
    break;
    else
    url[i] = uri[i]; // Overflow if length(uri) > 4095
    url[i] = '\0';
    [...]


This is the commit that added the flaw:

http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_uri_worker_map.c?view=diff&r1=424095&r2=424096

Patch from Tomcat security team attached.

-- VERSIONS ------------------------------------------------------------

Please note this issue only affected versions 1.2.19 and 1.2.20 of the
Apache Tomcat JK Web Server Connector and not previous versions.  Tomcat
5.5.20 and Tomcat 4.1.34 included a vulnerable version in their source
packages.  Other versions of Tomcat were not affected.

Comment 1 Mark J. Cox 2007-02-26 10:00:42 UTC
Created attachment 148786 [details]
patch from jclere

Comment 2 Mark J. Cox 2007-02-26 10:11:09 UTC
RHSA-2007:0096 created ready for updated mod_jk packages

Comment 4 Mark J. Cox 2007-03-02 18:27:13 UTC
Removing embargo, this is now public at:
http://tomcat.apache.org/connectors-doc/miscellaneous/changelog.html

Comment 5 Red Hat Bugzilla 2007-03-02 18:30:36 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2007-0096.html