Vulnerability advisory

CVE-2026-33170

Rails Active Support has a possible XSS vulnerability in SafeBuffer#%

Published Updated OSV record ↗

Also known as GHSA-89vf-4333-qx8v

Severity
  • CVSS 4.0CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N

Affected versions

Repository

Affected commitsFixed by commit
GIT github.com/rails/rails ↗
All commits before ba76fca032a66f3716ca8a661c9ddb006acaf885ba76fca032a66f3716ca8a661c9ddb006acaf885
dd8f7185faeca6ee968a6e9367f6d8601a83b8db to before a79efed95797b196575a98845dc989e3106a9acba79efed95797b196575a98845dc989e3106a9acb
1cdd190a25e483b65f1f25bbd0f13a25d696b461 to before 1db4b89687cc18311fc3f92623136705df24e6711db4b89687cc18311fc3f92623136705df24e671
Not specified50d732af3b7c8aaf63cbcca0becbc00279b215b7
Not specified6e8a81108001d58043de9e54a06fca58962fc2db
Not specifiedc1ad0e8e1972032f3395853a5e99cea035035beb
Also listed as affected (56)
  • v7.2.3
  • v8.0.4
  • v8.1.2
  • v8.1.1
  • v8.1.0
  • v8.0.3
  • v8.0.2
  • v8.0.1
  • v8.0.0
  • v7.2.2
  • v7.2.1
  • v7.2.0.rc1
  • v7.2.0.beta3
  • v7.2.0.beta2
  • v7.2.0.beta1
  • v7.1.0.beta1
  • v7.0.0.alpha2
  • v7.0.0.alpha1
  • v6.1.0.rc1
  • v6.0.0.beta2
  • v6.0.0.beta1
  • v5.1.0.beta1
  • v5.0.0.beta4
  • v5.0.0.beta2
  • v5.0.0.beta1
  • v4.2.0.beta1
  • v4.0.0.rc1
  • v4.0.0.beta1
  • v3.2.0.rc1
  • v3.1.0.rc1
  • v3.1.0.beta1
  • v3.0.0.beta3
  • v3.0.0.beta.3
  • v2.0.1
  • v2.0.0
  • v2.0.0_RC2
  • v2.0.0_RC1
  • v2.0.0_PR
  • v1.1.1
  • v1.1.0
  • v1.1.0_RC1
  • v0.14.3
  • v0.14.1
  • v0.13.1
  • v0.13.0
  • v0.12.0
  • v0.11.1
  • v0.11.0
  • v0.10.1
  • v0.10.0
  • v0.9.5
  • v0.9.4.1
  • v0.9.4
  • v0.9.3
  • v0.9.2
  • v0.9.1

Description

Active Support is a toolkit of support libraries and Ruby core extensions extracted from the Rails framework. Prior to versions 8.1.2.1, 8.0.4.1, and 7.2.3.1, 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. Versions 8.1.2.1, 8.0.4.1, and 7.2.3.1 contain a patch.

References

  • Codex
  • Claude Code
  • VS Code
  • GitHub Copilot
  • Cursor
  • Cline
  • Windsurf
  • Google Anti-gravity
  • OpenCode
  • Pi
  • Gemini CLI
  • Hermes Agent
  • Zed
  • Junie
  • Qwen Code
  • Kiro
  • Kilo Code
  • Factory Droid

Set up GitHits for your agents

Run this command:

<> bash
npx githits@latest init

What happens next:

  1. Opens your browser to authorize GitHits
  2. Asks whether to set up GitHits at the user or project level
  3. Detects your supported AI coding tools
  4. Lets you choose which tools to configure
  5. Configures the selected tools