Skip to content
OpenAdvisories
High · 7.3 CVE-2020-4054 EUVD-2020-0503GHSA-p4x4-rw2p-8j8m

Cross-site Scripting in Sanitize

Published Jun 16, 2020 · Updated Aug 4, 2024 · Assigned by GitHub_M

Description

In Sanitize (RubyGem sanitize) greater than or equal to 3.0.0 and less than 5.2.1, there is a cross-site scripting vulnerability. When HTML is sanitized using Sanitize's "relaxed" config, or a custom config that allows certain elements, some content in a math or svg element may not be sanitized correctly even if math and svg are not in the allowlist. You are likely to be vulnerable to this issue if you use Sanitize's relaxed config or a custom config that allows one or more of the following HTML elements: iframe, math, noembed, noframes, noscript, plaintext, script, style, svg, xmp. Using carefully crafted input, an attacker may be able to sneak arbitrary HTML through Sanitize, potentially resulting in XSS (cross-site scripting) or other undesired behavior when that HTML is rendered in a browser. This has been fixed in 5.2.1.

Affected products

VendorProductAffectedFixed
rgrove Sanitize >= 3.0.0, < 5.2.1 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 ruby-sanitize 4.6.6-2.1 —
Debian 13 ruby-sanitize 4.6.6-2.1 —
Debian 12 ruby-sanitize 4.6.6-2.1 —
Debian 10 ruby-sanitize 4.6.6-2.1~deb10u1 DSA-4730-1
ReleasePackageFixed inAdvisory
Ubuntu 20.04 LTS ruby-sanitize 4.6.6-2.1~0.20.04.1 USN-4543-1
Ubuntu 18.04 LTS ruby-sanitize No fix yet —
Ubuntu 16.04 LTS ruby-sanitize No fix yet —

Affected packages

EcosystemPackageAffectedFixedRecord
RubyGems sanitize >= 3.0.0, < 5.2.1 5.2.1 GHSA-p4x4-rw2p-8j8m

Advisories 2

References