GitHub Advisoryadvisory · RubyGems

GHSA-89vf-4333-qx8v Rails Active Support has a possible XSS vulnerability in SafeBuffer#%

MEDIUM Published 2026-03-23 Modified 2026-05-13 Official page ↗
Aliases
CVE-2026-33170
Ecosystem
RubyGems
Packages
activesupport
Severity
Moderate
CVSS vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
Weaknesses
CWE-79
Reviewed
2026-03-23

Affected packages

• RubyGems activesupport: >= 8.1.0.beta1, < 8.1.2.1 → fixed in 8.1.2.1 • RubyGems activesupport: >= 8.0.0.beta1, < 8.0.4.1 → fixed in 8.0.4.1 • RubyGems activesupport: < 7.2.3.1 → fixed in 7.2.3.1

Description

Impact `SafeBuffer#%` does not propagate the `@html_unsafe` flag to the newly created buffer. If a `SafeBuffer` is mutated in place (e.g. via `gsub!`) and then formatted with `%` using untrusted arguments, the result incorrectly reports `html_safe? == true`, bypassing ERB auto-escaping and possibly leading to XSS. Releases The fixed releases are available at the normal locations. Credit This issue was responsibly reported by @ch4n3-yoon

Related

Alias · CVE (1)

  • CVE-2026-33170 Active Support is a toolkit of support libraries and Ruby core extensions extracted from the Rails framework. vulnerability

Weakness · CWE (1)

  • CWE-79 Improper Neutralization of Input During Web Page Generation weakness

References