Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 230045 - CVE-2007-0774 mod_jk overflow flaw
Summary: CVE-2007-0774 mod_jk overflow flaw
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Web Application Stack
Classification: Retired
Component: mod_jk
Version: v1.1
Hardware: All
OS: Linux
urgent
urgent
Target Milestone: ---
Assignee: Vivek Lakshmanan
QA Contact: Len DiMaggio
URL:
Whiteboard: impact=critical,reported=20070223,emb...
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-02-26 10:00 UTC by Mark J. Cox
Modified: 2007-03-02 18:30 UTC (History)
2 users (show)

Fixed In Version: RHSA-2007-0096
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-03-02 18:30:36 UTC


Attachments (Terms of Use)
patch from jclere (deleted)
2007-02-26 10:00 UTC, Mark J. Cox
no flags Details | Diff


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2007:0096 normal SHIPPED_LIVE Critical: mod_jk security update 2007-03-02 18:30:34 UTC

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



Note You need to log in before you can comment on or make changes to this bug.