The SentinelOne Annual Threat Report - A Defenders Guide from the FrontlinesThe SentinelOne Annual Threat ReportGet the Report
Experiencing a Breach?Blog
Get StartedContact Us
SentinelOne
  • Platform
    Platform Overview
    • Singularity Platform
      Welcome to Integrated Enterprise Security
    • AI for Security
      Leading the Way in AI-Powered Security Solutions
    • Securing AI
      Accelerate AI Adoption with Secure AI Tools, Apps, and Agents.
    • How It Works
      The Singularity XDR Difference
    • Singularity Marketplace
      One-Click Integrations to Unlock the Power of XDR
    • Pricing & Packaging
      Comparisons and Guidance at a Glance
    Data & AI
    • Purple AI
      Accelerate SecOps with Generative AI
    • Singularity Hyperautomation
      Easily Automate Security Processes
    • AI-SIEM
      The AI SIEM for the Autonomous SOC
    • Singularity Data Lake
      AI-Powered, Unified Data Lake
    • Singularity Data Lake for Log Analytics
      Seamlessly Ingest Data from On-Prem, Cloud or Hybrid Environments
    Endpoint Security
    • Singularity Endpoint
      Autonomous Prevention, Detection, and Response
    • Singularity XDR
      Native & Open Protection, Detection, and Response
    • Singularity RemoteOps Forensics
      Orchestrate Forensics at Scale
    • Singularity Threat Intelligence
      Comprehensive Adversary Intelligence
    • Singularity Vulnerability Management
      Application & OS Vulnerability Management
    • Singularity Identity
      Identity Threat Detection and Response
    Cloud Security
    • Singularity Cloud Security
      Block Attacks with an AI-Powered CNAPP
    • Singularity Cloud Native Security
      Secure Cloud and Development Resources
    • Singularity Cloud Workload Security
      Real-Time Cloud Workload Protection Platform
    • Singularity Cloud Data Security
      AI-Powered Threat Detection for Cloud Storage
    • Singularity Cloud Security Posture Management
      Detect and Remediate Cloud Misconfigurations
    Securing AI
    • Prompt Security
      Secure AI Tools Across Your Enterprise
  • Why SentinelOne?
    Why SentinelOne?
    • Why SentinelOne?
      Cybersecurity Built for What’s Next
    • Our Customers
      Trusted by the World’s Leading Enterprises
    • Industry Recognition
      Tested and Proven by the Experts
    • About Us
      The Industry Leader in Autonomous Cybersecurity
    Compare SentinelOne
    • Arctic Wolf
    • Broadcom
    • CrowdStrike
    • Cybereason
    • Microsoft
    • Palo Alto Networks
    • Sophos
    • Splunk
    • Trellix
    • Trend Micro
    • Wiz
    Verticals
    • Energy
    • Federal Government
    • Finance
    • Healthcare
    • Higher Education
    • K-12 Education
    • Manufacturing
    • Retail
    • State and Local Government
  • Services
    Managed Services
    • Managed Services Overview
      Wayfinder Threat Detection & Response
    • Threat Hunting
      World-Class Expertise and Threat Intelligence
    • Managed Detection & Response
      24/7/365 Expert MDR Across Your Entire Environment
    • Incident Readiness & Response
      DFIR, Breach Readiness, & Compromise Assessments
    Support, Deployment, & Health
    • Technical Account Management
      Customer Success with Personalized Service
    • SentinelOne GO
      Guided Onboarding & Deployment Advisory
    • SentinelOne University
      Live and On-Demand Training
    • Services Overview
      Comprehensive Solutions for Seamless Security Operations
    • SentinelOne Community
      Community Login
  • Partners
    Our Network
    • MSSP Partners
      Succeed Faster with SentinelOne
    • Singularity Marketplace
      Extend the Power of S1 Technology
    • Cyber Risk Partners
      Enlist Pro Response and Advisory Teams
    • Technology Alliances
      Integrated, Enterprise-Scale Solutions
    • SentinelOne for AWS
      Hosted in AWS Regions Around the World
    • Channel Partners
      Deliver the Right Solutions, Together
    • SentinelOne for Google Cloud
      Unified, Autonomous Security Giving Defenders the Advantage at Global Scale
    • Partner Locator
      Your Go-to Source for Our Top Partners in Your Region
    Partner Portal→
  • Resources
    Resource Center
    • Case Studies
    • Data Sheets
    • eBooks
    • Reports
    • Videos
    • Webinars
    • Whitepapers
    • Events
    View All Resources→
    Blog
    • Feature Spotlight
    • For CISO/CIO
    • From the Front Lines
    • Identity
    • Cloud
    • macOS
    • SentinelOne Blog
    Blog→
    Tech Resources
    • SentinelLABS
    • Ransomware Anthology
    • Cybersecurity 101
  • About
    About SentinelOne
    • About SentinelOne
      The Industry Leader in Cybersecurity
    • Investor Relations
      Financial Information & Events
    • SentinelLABS
      Threat Research for the Modern Threat Hunter
    • Careers
      The Latest Job Opportunities
    • Press & News
      Company Announcements
    • Cybersecurity Blog
      The Latest Cybersecurity Threats, News, & More
    • FAQ
      Get Answers to Our Most Frequently Asked Questions
    • DataSet
      The Live Data Platform
    • S Foundation
      Securing a Safer Future for All
    • S Ventures
      Investing in the Next Generation of Security, Data and AI
  • Pricing
Get StartedContact Us
CVE Vulnerability Database
Vulnerability Database/CVE-2026-33202

CVE-2026-33202: Rails Active Storage Path Traversal Flaw

CVE-2026-33202 is a path traversal vulnerability in Ruby on Rails Active Storage that allows attackers to delete unintended files via glob metacharacters. This article covers technical details, affected versions, and patches.

Published: March 27, 2026

CVE-2026-33202 Overview

CVE-2026-33202 is an injection vulnerability in Ruby on Rails Active Storage that allows attackers to delete arbitrary files from the storage directory. The vulnerability exists in the DiskService#delete_prefixed method, which passes blob keys directly to Ruby's Dir.glob function without properly escaping glob metacharacters. When attacker-controlled input or custom-generated keys contain glob metacharacters (such as *, ?, [, ], or {}), the glob pattern matching can be manipulated to target unintended files for deletion.

Critical Impact

Attackers can exploit this glob injection vulnerability to delete arbitrary files from the Active Storage directory, potentially causing data loss, service disruption, or undermining application integrity by removing critical stored assets.

Affected Products

  • Ruby on Rails versions prior to 7.2.3.1
  • Ruby on Rails versions 8.0.x prior to 8.0.4.1
  • Ruby on Rails versions 8.1.x prior to 8.1.2.1

Discovery Timeline

  • 2026-03-24 - CVE CVE-2026-33202 published to NVD
  • 2026-03-24 - Last updated in NVD database

Technical Details for CVE-2026-33202

Vulnerability Analysis

This vulnerability represents a classic injection flaw where user-controllable data flows into a sensitive function without proper sanitization. Active Storage's disk-based storage service provides a delete_prefixed method designed to remove files matching a specific prefix pattern. However, the implementation directly concatenates the prefix with a wildcard character and passes it to Dir.glob, which interprets glob metacharacters in the input.

Ruby's Dir.glob function supports pattern matching characters including * (matches any string), ? (matches any single character), [...] (character classes), and {a,b} (alternation). When an attacker can influence the blob key value—either through direct input or by manipulating custom key generation logic—they can craft keys containing these metacharacters to expand the scope of file deletion beyond the intended targets.

The impact is limited to file deletion within the storage directory structure, but this can have significant consequences for applications relying on Active Storage for critical asset management. Data loss, broken application functionality, and denial of service conditions are all potential outcomes.

Root Cause

The root cause is the failure to escape glob metacharacters before passing user-influenced data to Dir.glob. The vulnerable code constructs a glob pattern by appending * to the prefix path without first escaping any special characters that may already exist in the prefix. This violates the security principle of treating all external input as potentially malicious and properly sanitizing it before use in sensitive operations.

Attack Vector

An attacker can exploit this vulnerability through any code path that allows influence over blob key values. This could occur in applications that:

  1. Allow users to specify custom blob keys during file uploads
  2. Generate blob keys using user-controlled input without proper validation
  3. Accept blob key prefixes for batch deletion operations

The attacker crafts a blob key containing glob metacharacters designed to match unintended files. When delete_prefixed is invoked with this malicious key, the glob expansion causes FileUtils.rm_rf to be called on files beyond the intended scope.

ruby
# Vulnerable code (before patch)
def delete_prefixed(prefix)
  instrument :delete_prefixed, prefix: prefix do
    Dir.glob(path_for("#{prefix}*")).each do |path|
      FileUtils.rm_rf(path)
    end
  end
end

# Patched code - escapes glob metacharacters
def delete_prefixed(prefix)
  instrument :delete_prefixed, prefix: prefix do
    prefix_path = path_for(prefix)

    # File.expand_path (called within path_for) strips trailing slashes.
    # Restore trailing separator if the original prefix had one, so that
    # the glob "prefix/*" matches files inside the directory, not siblings
    # whose names start with the prefix string.
    prefix_path += "/" if prefix.end_with?("/")

    escaped = escape_glob_metacharacters(prefix_path)
    Dir.glob("#{escaped}*").each do |path|
      FileUtils.rm_rf(path)
    end
  end
end

Source: Rails Security Patch

Detection Methods for CVE-2026-33202

Indicators of Compromise

  • Unexpected file deletions in Active Storage directories
  • Application logs showing delete_prefixed operations with unusual prefix patterns containing glob metacharacters (*, ?, [, ], {, })
  • Missing stored attachments that cannot be explained by normal application behavior
  • Error messages related to missing blob files in application logs

Detection Strategies

  • Monitor Active Storage operations for prefix patterns containing glob metacharacters
  • Implement file integrity monitoring on storage directories to detect unexpected deletions
  • Review application code for any paths where user input can influence blob key generation
  • Audit custom blob key generation logic for proper input validation

Monitoring Recommendations

  • Enable detailed logging for Active Storage delete_prefixed operations
  • Set up alerts for unusual patterns in storage directory file deletion activity
  • Monitor application error rates related to missing attachments or blob files
  • Implement periodic integrity checks comparing expected vs actual stored files

How to Mitigate CVE-2026-33202

Immediate Actions Required

  • Upgrade Ruby on Rails to version 7.2.3.1, 8.0.4.1, or 8.1.2.1 immediately
  • Audit application code for any custom blob key generation that incorporates user input
  • Review and sanitize any code paths that allow users to influence blob key values
  • Implement input validation to reject blob keys containing glob metacharacters

Patch Information

Security patches are available for all affected Rails versions. The fix introduces proper escaping of glob metacharacters in the prefix path before passing it to Dir.glob. The patch also handles edge cases around trailing slashes to ensure correct directory matching behavior.

Patched versions:

  • Rails 7.2.3.1
  • Rails 8.0.4.1
  • Rails 8.1.2.1

For detailed patch information, see the GitHub Security Advisory GHSA-73f9-jhhh-hr5m.

Workarounds

  • If immediate patching is not possible, implement application-level input validation to strip or reject glob metacharacters from any user-controlled blob key inputs
  • Consider temporarily restricting access to functionality that invokes delete_prefixed with user-influenced prefixes
  • Implement a wrapper around delete_prefixed that sanitizes the prefix parameter before calling the original method
ruby
# Temporary workaround - sanitize prefix before delete operations
def safe_delete_prefixed(prefix)
  # Escape glob metacharacters before calling delete_prefixed
  sanitized_prefix = prefix.gsub(/[\[\]\{\}\*\?\\]/) { |char| "\\#{char}" }
  ActiveStorage::Blob.service.delete_prefixed(sanitized_prefix)
end

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

  • Vulnerability Details
  • TypePath Traversal

  • Vendor/TechRubyonrails

  • SeverityMEDIUM

  • CVSS Score6.6

  • EPSS Probability0.02%

  • Known ExploitedNo
  • CVSS Vector
  • CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:U/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
  • Impact Assessment
  • ConfidentialityLow
  • IntegrityNone
  • AvailabilityNone
  • CWE References
  • CWE-74
  • Technical References
  • GitHub Release v7.2.3.1

  • GitHub Release v8.0.4.1

  • GitHub Release v8.1.2.1
  • Vendor Resources
  • GitHub Commit Change

  • GitHub Commit Change

  • GitHub Commit Change

  • GitHub Security Advisory GHSA-73f9-jhhh-hr5m
  • Related CVEs
  • CVE-2026-33195: Ruby on Rails Path Traversal Vulnerability

  • CVE-2026-33169: Ruby on Rails Active Support DoS Vulnerability

  • CVE-2026-33170: Ruby on Rails Active Support XSS Vulnerability

  • CVE-2026-33173: Rails Active Storage Auth Bypass Flaw
Experience the World’s Most Advanced Cybersecurity Platform

Experience the World’s Most Advanced Cybersecurity Platform

See how our intelligent, autonomous cybersecurity platform can protect your organization now and into the future.

Try SentinelOne
  • Get Started
  • Get a Demo
  • Product Tour
  • Why SentinelOne
  • Pricing & Packaging
  • FAQ
  • Contact
  • Contact Us
  • Customer Support
  • SentinelOne Status
  • Language
  • Platform
  • Singularity Platform
  • Singularity Endpoint
  • Singularity Cloud
  • Singularity AI-SIEM
  • Singularity Identity
  • Singularity Marketplace
  • Purple AI
  • Services
  • Wayfinder TDR
  • SentinelOne GO
  • Technical Account Management
  • Support Services
  • Verticals
  • Energy
  • Federal Government
  • Finance
  • Healthcare
  • Higher Education
  • K-12 Education
  • Manufacturing
  • Retail
  • State and Local Government
  • Cybersecurity for SMB
  • Resources
  • Blog
  • Labs
  • Case Studies
  • Videos
  • Product Tours
  • Events
  • Cybersecurity 101
  • eBooks
  • Webinars
  • Whitepapers
  • Press
  • News
  • Ransomware Anthology
  • Company
  • About Us
  • Our Customers
  • Careers
  • Partners
  • Legal & Compliance
  • Security & Compliance
  • Investor Relations
  • S Foundation
  • S Ventures

©2026 SentinelOne, All Rights Reserved.

Privacy Notice Terms of Use

English