Vulnerability · Published Jun 24, 2022 · Assigned by hackerone

CVE-2022-32209

Medium 6.1

In plain English

A medium-severity cross-site scripting in https://github.com/rails/rails-html-sanitizer. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 26.5% (higher than 98% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS NVD)6.1Medium
Exploit odds (30 days)26.5%top 2.0% of all CVEs
Exploited in the wildNo reportsnot in CISA KEV
Attack toolingNoneno public tooling known

Official description

# Possible XSS Vulnerability in Rails::Html::SanitizerThere is a possible XSS vulnerability with certain configurations of Rails::Html::Sanitizer.This vulnerability has been assigned the CVE identifier CVE-2022-32209.Versions Affected: ALLNot affected: NONEFixed Versions: v1.4.3## ImpactA possible XSS vulnerability with certain configurations of Rails::Html::Sanitizer may allow an attacker to inject content if the application developer has overridden the sanitizer's allowed tags to allow both `select` and `style` elements.Code is only impacted if allowed tags are being overridden. This may be done via application configuration:```ruby# In config/application.rbconfig.action_view.sanitized_allowed_tags = ["select", "style"]```see https://guides.rubyonrails.org/configuring.html#configuring-action-viewOr it may be done with a `:tags` option to the Action View helper `sanitize`:```<%= sanitize @comment.body, tags: ["select", "style"] %>```see https://api.rubyonrails.org/classes/ActionView/Helpers/SanitizeHelper.html#method-i-sanitizeOr it may be done with Rails::Html::SafeListSanitizer directly:```ruby# class-level optionRails::Html::SafeListSanitizer.allowed_tags = ["select", "style"]```or```ruby# instance-level optionRails::Html::SafeListSanitizer.new.sanitize(@article.body, tags: ["select", "style"])```All users overriding the allowed tags by any of the above mechanisms to include both "select" and "style" should either upgrade or use one of the workarounds immediately.## ReleasesThe FIXED releases are available at the normal locations.## WorkaroundsRemove either `select` or `style` from the overridden allowed tags.## CreditsThis vulnerability was responsibly reported by [windshock](https://hackerone.com/windshock?type=user).

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:12ruby-rails-html-sanitizer1.4.3-0.1DEBIAN-CVE-2022-32209
Debian:13ruby-rails-html-sanitizer1.4.3-0.1DEBIAN-CVE-2022-32209
Debian:14ruby-rails-html-sanitizer1.4.3-0.1DEBIAN-CVE-2022-32209
Rocky Linux:8libdb0:5.3.28-42.el8_4RLSA-2022:8506
RubyGemsrails-html-sanitizer1.4.3GHSA-pg8v-g4xq-hww9
Ubuntu:22.04:LTSruby-rails-html-sanitizerno fix listedUBUNTU-CVE-2022-32209

Affected products (as reported)

VendorProductVersions
n/a https://github.com/rails/rails-html-sanitizer v1.4.3

Weakness: CWE-79

References