Vulnerability advisory
CVE-2026-33170
Rails Active Support has a possible XSS vulnerability in SafeBuffer#%
Also known as GHSA-89vf-4333-qx8v
Severity
- CVSS 4.0
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
Affected versions
Repository
| Affected commits | Fixed by commit |
|---|---|
| GIT github.com/rails/rails ↗ | |
| All commits before ba76fca032a66f3716ca8a661c9ddb006acaf885 | ba76fca032a66f3716ca8a661c9ddb006acaf885 |
| dd8f7185faeca6ee968a6e9367f6d8601a83b8db to before a79efed95797b196575a98845dc989e3106a9acb | a79efed95797b196575a98845dc989e3106a9acb |
| 1cdd190a25e483b65f1f25bbd0f13a25d696b461 to before 1db4b89687cc18311fc3f92623136705df24e671 | 1db4b89687cc18311fc3f92623136705df24e671 |
| Not specified | 50d732af3b7c8aaf63cbcca0becbc00279b215b7 |
| Not specified | 6e8a81108001d58043de9e54a06fca58962fc2db |
| Not specified | c1ad0e8e1972032f3395853a5e99cea035035beb |
Also listed as affected (56)
| |
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
- Webgithub.com/rails/rails/releases/tag/v7.2.3.1 ↗
- Webgithub.com/rails/rails/releases/tag/v8.0.4.1 ↗
- Webgithub.com/rails/rails/releases/tag/v8.1.2.1 ↗
- Advisorygithub.com/CVEProject/cvelistV5/tree/main/cves/2026/33xxx/CVE-2026-33170.json ↗
- Advisorygithub.com/rails/rails/security/advisories/GHSA-89vf-4333-qx8v ↗
- Advisorynvd.nist.gov/vuln/detail/CVE-2026-33170 ↗
- Fixgithub.com/rails/rails/commit/50d732af3b7c8aaf63cbcca0becbc00279b215b7 ↗
- Fixgithub.com/rails/rails/commit/6e8a81108001d58043de9e54a06fca58962fc2db ↗
- Fixgithub.com/rails/rails/commit/c1ad0e8e1972032f3395853a5e99cea035035beb ↗