Bug 847199 (CVE-2012-3464)

Summary: CVE-2012-3464 rubygem-actionpack: potential XSS vulnerability
Product: [Other] Security Response Reporter: Kurt Seifried <kseifried>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: bkabrda, bkearney, katello-internal, mastahnke, mmccune, mmorsi, morazi, rmillner, sseago, tkramer, vanmeeuwen+fedora, vondruch
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard: impact=moderate,public=20120809,reported=20120809,source=oss-security,cvss2=4.3/AV:N/AC:M/Au:N/C:N/I:P/A:N,cloudformscommon-1/rubygem-actionpack=affected,sam-1/rubygem-actionpack=affected,openshift-1/rubygem-actionpack=affected,fedora-all/rubygem-actionpack=affected,epel-5/rubygem-actionpack=affected,openshift-enterprise-1/rubygem-activerecord=affected,cwe=CWE-79[auto]
Fixed In Version: rubygem-actionpack 3.0.17, rubygem-actionpack 3.1.8, rubygem-actionpack 3.2.8 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-08-13 01:07:17 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Bug Depends On: 847201, 847202, 847203, 847204, 849728, 896171, 903996, 995683    
Bug Blocks: 836071, 851385    
Attachments:
Description Flags
CVE-2012-3464-3-0-escape_html.patch
none
CVE-2012-3464-3-1-escape_html.patch
none
CVE-2012-3464-3-2-escape_html.patch
none
CVE-2012-3464-single_quote_escape_workaround.rb none

Description Kurt Seifried 2012-08-10 01:11:37 EDT
The Ruby on Rails project reports:

There is a vulnerability in the HTML escaping code in Ruby on Rails.
This vulnerability has been assigned the CVE identifier CVE-2012-3464.

Versions Affected:  All.
Not affected:       None
Fixed Versions:     3.2.8, 3.1.8, 3.0.17

Impact
- ------
The HTML escaping code in Ruby on Rails does not escape all
potentially dangerous characters.  In particular the code does not
escape the single quote character.  The helpers used in Rails itself
never use single quotes, so most applications are unlikely to be
vulnerable, however all users running an affected release should still
upgrade.

Releases
- --------
The 3.2.8 and 3.1.8 releases are available at the normal locations.

Workarounds
- -----------

For users on earlier releases or who are unable to upgrade, you can
install the attached file into config/initializers.  This will upgrade
the rails helper to use the Rack::Utils.escape_html helper which does
escape the single quote character.  However the Rack helper also
escapes the '/' character, this is likely to cause test failures if
your application is expecting the values of URLs to be unencoded.
These tests however browsers will correctly decode the values and
function as expected.

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-0-escape_html.patch - Patch for 3.0 series
* 3-1-escape_html.patch - Patch for 3.1 series
* 3-2-escape_html.patch - Patch for 3.2 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.

References:
http://weblog.rubyonrails.org/2012/8/9/ann-rails-3-2-8-has-been-released/
Comment 1 Kurt Seifried 2012-08-10 01:13:40 EDT
Created attachment 603416 [details]
CVE-2012-3464-3-0-escape_html.patch
Comment 2 Kurt Seifried 2012-08-10 01:14:07 EDT
Created attachment 603417 [details]
CVE-2012-3464-3-1-escape_html.patch
Comment 3 Kurt Seifried 2012-08-10 01:14:37 EDT
Created attachment 603418 [details]
CVE-2012-3464-3-2-escape_html.patch
Comment 4 Kurt Seifried 2012-08-10 01:15:04 EDT
Created attachment 603419 [details]
CVE-2012-3464-single_quote_escape_workaround.rb
Comment 5 Kurt Seifried 2012-08-10 01:23:19 EDT
Created rubygem-actionpack tracking bugs for this issue

Affects: fedora-all [bug 847201]
Comment 6 Kurt Seifried 2012-08-10 01:24:44 EDT
Created rubygem-actionpack tracking bugs for this issue

Affects: epel-5 [bug 847202]
Comment 9 Fedora Update System 2012-08-22 16:58:43 EDT
rubygem-actionpack-3.0.10-9.fc16 has been pushed to the Fedora 16 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 10 Fedora Update System 2012-08-22 17:11:01 EDT
rubygem-actionpack-3.0.11-7.fc17 has been pushed to the Fedora 17 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 11 Fedora Update System 2012-08-22 17:12:28 EDT
rubygem-activesupport-3.0.11-6.fc17 has been pushed to the Fedora 17 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 12 Fedora Update System 2012-08-22 17:13:27 EDT
rubygem-activesupport-3.0.10-4.fc16 has been pushed to the Fedora 16 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 13 errata-xmlrpc 2012-12-04 14:32:01 EST
This issue has been addressed in following products:

  CloudForms for RHEL 6

Via RHSA-2012:1542 https://rhn.redhat.com/errata/RHSA-2012-1542.html
Comment 14 errata-xmlrpc 2013-01-10 15:42:33 EST
This issue has been addressed in following products:

  Red Hat Subscription Asset Manager 1.1

Via RHSA-2013:0154 https://rhn.redhat.com/errata/RHSA-2013-0154.html
Comment 17 errata-xmlrpc 2013-02-28 14:08:03 EST
This issue has been addressed in following products:

  RHEL 6 Version of OpenShift Enterprise

Via RHSA-2013:0582 https://rhn.redhat.com/errata/RHSA-2013-0582.html