Sha256: ea32246e03f5fcb3f5afbe48eb2dc2ce9554fd458496910fca906e9b505a7d04

Contents?: true

Size: 1.8 KB

Versions: 3

Compression:

Stored size: 1.8 KB

Contents

---
gem: rails-html-sanitizer
cve: 2015-7580
date: 2016-01-25
url: "https://groups.google.com/forum/#!topic/rubyonrails-security/uh--W4TDwmI"

title: Possible XSS vulnerability in rails-html-sanitizer

description: |
  There is a possible XSS vulnerability in the white list sanitizer in the 
  rails-html-sanitizer gem. This vulnerability has been assigned the CVE 
  identifier CVE-2015-7580. 

  Versions Affected:  All. 
  Not affected:       None. 
  Fixed Versions:     v1.0.3 

  Impact 
  ------ 
  Carefully crafted strings can cause user input to bypass the sanitization in 
  the white list sanitizer which will can lead to an XSS attack. 

  Vulnerable code will look something like this: 

    <%= sanitize user_input, tags: %w(em) %> 

  All users running an affected release should either upgrade or use one of the 
  workarounds immediately. 

  Releases 
  -------- 
  The FIXED releases are available at the normal locations. 

  Workarounds 
  ----------- 
  Putting the following monkey patch in an initializer can help to mitigate the 
  issue: 

  ``` 
  class Rails::Html::PermitScrubber 
    alias :old_scrub :scrub 
    alias :old_skip_node? :skip_node? 

    def scrub(node) 
      if node.cdata? 
        text = node.document.create_text_node node.text 
        node.replace text 
        return CONTINUE 
      end 
      old_scrub node 
    end 

    def skip_node?(node); node.text?; end 
  end 
  ``` 

  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. 

  * 1-0-whitelist_sanitizer_xss.patch - Patch for 1.0 series 

  Credits 
  ------- 
  Thanks to Arnaud Germis, Nate Clark, and John Colvin for reporting this issue.

patched_versions:
  - ">= 1.0.3"

Version data entries

3 entries across 3 versions & 2 rubygems

Version Path
bundler-audit-0.7.0.1 data/ruby-advisory-db/gems/rails-html-sanitizer/CVE-2015-7580.yml
bundler-budit-0.6.2 data/ruby-advisory-db/gems/rails-html-sanitizer/CVE-2015-7580.yml
bundler-budit-0.6.1 data/ruby-advisory-db/gems/rails-html-sanitizer/CVE-2015-7580.yml