Bug 1174054 (CVE-2014-3580)

Summary: CVE-2014-3580 subversion: NULL pointer dereference flaw in mod_dav_svn when handling REPORT requests
Product: [Other] Security Response Reporter: Murray McAllister <mmcallis>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: jorton, jrusnack, magoldma, security-response-team, sisharma, vanmeeuwen+fedora
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: subversion 1.7.19, subversion 1.8.11 Doc Type: Bug Fix
Doc Text:
A NULL pointer dereference flaw was found in the way the mod_dav_svn module handled REPORT requests. A remote, unauthenticated attacker could use a specially crafted REPORT request to crash mod_dav_svn.
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-02-11 05:08:24 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:
Bug Depends On: 1174521, 1180622, 1180623, 1180624, 1180625    
Bug Blocks: 1174061    
Attachments:
Description Flags
1.7.18 patch from upstream
none
1.8.10 patch from upstream none

Description Murray McAllister 2014-12-15 02:36:41 UTC
A NULL pointer dereference flaw was found in the way mod_dav_svn handled REPORT requests. A remote, unauthenticated attacker could use a crafted REPORT request to crash mod_dav_svn.

Versions 1.0.0  up to and including 1.7.18, and 1.8.0 up to and including 1.8.10, are affected.

This issue will be fixed in versions 1.7.19 and 1.8.11.

Acknowledgements:

Red Hat would like to thank the Subversion project for reporting this issue. Upstream acknowledges Evgeny Kotkov of VisualSVN as the original reporter.

Comment 2 Murray McAllister 2014-12-15 02:41:20 UTC
Created attachment 968769 [details]
1.7.18 patch from upstream

Comment 3 Murray McAllister 2014-12-15 02:41:44 UTC
Created attachment 968770 [details]
1.8.10 patch from upstream

Comment 4 Murray McAllister 2014-12-16 00:55:31 UTC
External References:

http://subversion.apache.org/security/CVE-2014-3580-advisory.txt

Comment 5 Murray McAllister 2014-12-16 01:04:12 UTC
Created subversion tracking bugs for this issue:

Affects: fedora-all [bug 1174521]

Comment 7 Fedora Update System 2015-01-05 07:39:07 UTC
subversion-1.8.11-1.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 8 Fedora Update System 2015-01-05 07:40:03 UTC
subversion-1.8.11-1.fc21 has been pushed to the Fedora 21 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 11 Siddharth Sharma 2015-01-09 10:21:41 UTC
Analysis
========

In the code of subversion there missing sanity check for repository path at various places, sending crafted report request causes crash because of NULL pointer dereference. 

In function dav_svn__get_deleted_rev_report(const dav_resource *resource,
                                const apr_xml_doc *doc,
                                ap_filter_t *output)

reaching this line in the code of function dav_svn__get_deleted_rev_report() would cause a crash if repository path is not set or is NULL causing NULL pointer
dereference

abs_path = svn_path_join(resource->info->repos_path, rel_path,
                           resource->pool);

Similar problem exists in various other places of the subversion code.

Comment 15 errata-xmlrpc 2015-02-10 21:23:17 UTC
This issue has been addressed in the following products:

  Red Hat Enterprise Linux 6

Via RHSA-2015:0165 https://rhn.redhat.com/errata/RHSA-2015-0165.html

Comment 16 errata-xmlrpc 2015-02-10 23:11:42 UTC
This issue has been addressed in the following products:

  Red Hat Enterprise Linux 7

Via RHSA-2015:0166 https://rhn.redhat.com/errata/RHSA-2015-0166.html

Comment 17 Vincent Danen 2015-02-11 05:08:24 UTC
Statement:

Red Hat Enterprise Linux 5 is now in Production 3 Phase of the support and maintenance life cycle. This has been rated as having Moderate security impact and is not currently planned to be addressed in future updates. For additional information, refer to the Red Hat Enterprise Linux Life Cycle: https://access.redhat.com/support/policy/updates/errata/.