Bug 921334 (CVE-2013-1856)

Summary: CVE-2013-1856 rubygem-activesupport: jdom: XML Parsing Vulnerability affecting JRuby users
Product: [Other] Security Response Reporter: Kurt Seifried <kseifried>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: NEW --- QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: security-response-team
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard: impact=moderate,public=20130318,reported=20130313,source=upstream,cvss2=5.8/AV:N/AC:M/Au:N/C:P/I:N/A:P,fedora-all/rubygem-activesupport=affected
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Bug Depends On: 922925    
Bug Blocks:    
Attachments:
Description Flags
3-0-jdom.patch
none
3-1-jdom.patch
none
3-2-jdom.patch none

Description Kurt Seifried 2013-03-13 22:58:17 EDT
XML Parsing Vulnerability affecting JRuby users

There is a vulnerability in the JDOM backend to ActiveSupport's XML parser.  This could allow an attacker to perform a denial of service attack or gain access to files stored on the application server.  This vulnerability has been assigned the CVE identifier CVE-2013-1856.

Versions Affected:  3.0.0 and All Later Versions when using JRuby
Not affected:       Applications not using JRuby or JRuby applications not using the JDOM backend.      
Fixed Versions:     3.2.13, 3.1.12

Impact 
------ 
The ActiveSupport XML parsing functionality supports multiple pluggable backends.  One backend supported for JRuby users is ActiveSupport::XmlMini_JDOM which makes use of the javax.xml.parsers.DocumentBuilder class.

In some JVM configurations the default settings of that class can allow an attacker to construct XML which, when parsed, will contain the contents of arbitrary URLs including files from the application server.  They may also allow for various denial of service attacks.

If you are using JRuby and have an affected JVM, you should upgrade or use one of the work arounds immediately.

Releases 
-------- 
The 3.2.13 and 3.1.12 releases are available at the normal locations. 

Workarounds 
----------- 
If you are unable to upgrade, you can place this code in an application initializer to prevent this issue:

  ActiveSupport::XmlMini.backend="REXML"

Patches 
------- 
To aid users who aren't able to upgrade immediately we have provided patches for the two supported release series.  They are in git-am format and consist of a single changeset. 

* 3-2-jdom.patch - Patch for 3.2 series 
* 3-1-jdom.patch - Patch for 3.1 series 
* 3-0-jdom.patch - Patch for 3.0 series 

Please note that only the 3.1.x and 3.2.x series are supported at present.  Users of earlier unsupported releases are advised to upgrade as soon as possible as we cannot guarantee the continued availability of security fixes for unsupported releases.

Credits 
-------
Thanks to Ben Murphy for reporting this vulnerability to us and working with us to inform other affected libraries and programming languages.
Comment 1 Kurt Seifried 2013-03-14 16:32:07 EDT
Created attachment 710230 [details]
3-0-jdom.patch
Comment 2 Kurt Seifried 2013-03-14 16:32:25 EDT
Created attachment 710231 [details]
3-1-jdom.patch
Comment 3 Kurt Seifried 2013-03-14 16:32:42 EDT
Created attachment 710232 [details]
3-2-jdom.patch
Comment 4 Kurt Seifried 2013-03-16 01:27:28 EDT
Please note that upstream reports that the patches have an issue and will be reissued this weekend most likely so we might need to respin this fix.
Comment 5 Vincent Danen 2013-03-18 15:22:46 EDT
This is public now, patches are attached to the mail.

http://www.openwall.com/lists/oss-security/2013/03/18/4
Comment 6 Vincent Danen 2013-03-18 15:24:07 EDT
Created rubygem-activesupport tracking bugs for this issue

Affects: fedora-all [bug 922925]
Comment 7 Kurt Seifried 2013-03-19 16:57:44 EDT
Please note that these patches were not affected by the upstream changes.