Join the Cyber Forum: Threat Intel on May 12, 2026 to learn how AI is reshaping threat defense.Join the Virtual Cyber Forum: Threat IntelRegister Now
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
    • AI Data Pipelines
      Security Data Pipeline for AI SIEM and Data Optimization
    • 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-2020-25032

CVE-2020-25032: Flask-CORS Path Traversal Vulnerability

CVE-2020-25032 is a path traversal vulnerability in Flask-CORS that allows attackers to access private resources using ../ sequences. This article covers the technical details, affected versions, impact, and mitigation.

Published: March 4, 2026

CVE-2020-25032 Overview

CVE-2020-25032 is a directory traversal vulnerability discovered in Flask-CORS (CORS Middleware for Flask) before version 3.0.9. The vulnerability allows attackers to access private resources through ../ directory traversal sequences because the resource matching mechanism does not ensure that pathnames are in a canonical format. This flaw enables unauthorized access to files and resources outside the intended directory scope.

Critical Impact

Attackers can exploit this directory traversal vulnerability to bypass CORS resource restrictions and access sensitive files or private resources on affected Flask applications.

Affected Products

  • Flask-CORS versions prior to 3.0.9
  • Debian Linux 10.0
  • openSUSE Backports SLE 15.0 SP1 and SP2
  • openSUSE Leap 15.1 and 15.2

Discovery Timeline

  • August 31, 2020 - CVE-2020-25032 published to NVD
  • November 21, 2024 - Last updated in NVD database

Technical Details for CVE-2020-25032

Vulnerability Analysis

This directory traversal vulnerability (CWE-22) exists in Flask-CORS due to improper path canonicalization during resource matching operations. When the middleware evaluates whether a request should be allowed based on CORS configuration, it fails to normalize pathnames before comparison. This oversight allows attackers to craft malicious requests containing ../ sequences that bypass the intended resource restrictions.

The vulnerability is exploitable remotely without authentication, making it accessible to any attacker who can send HTTP requests to an affected Flask application. The primary impact is confidentiality compromise, as attackers can read files and resources they should not have access to.

Root Cause

The root cause is the absence of path canonicalization in the resource matching logic within Flask-CORS. When comparing request paths against configured CORS resources, the middleware accepts non-canonical paths containing directory traversal sequences. This allows attackers to construct paths that appear to reference allowed resources but actually resolve to restricted locations after traversal.

The fix implemented in version 3.0.9 ensures that pathnames are properly normalized to their canonical format before resource matching occurs, preventing traversal sequences from bypassing access controls.

Attack Vector

The attack is network-based and requires no user interaction or special privileges. An attacker crafts HTTP requests to a Flask application using Flask-CORS middleware, including ../ sequences in the request path. Since the resource matching does not canonicalize paths, these traversal sequences allow the attacker to reference resources outside the allowed CORS scope.

For example, if CORS is configured to allow access only to /api/public/, an attacker could potentially access /api/private/ by crafting a request to /api/public/../private/. The middleware would incorrectly match the request against the allowed resource pattern before traversal resolution occurs.

Detection Methods for CVE-2020-25032

Indicators of Compromise

  • HTTP request logs containing ../ or URL-encoded traversal sequences (%2e%2e%2f) in paths
  • Unusual access patterns to resources that should be protected by CORS restrictions
  • Web server logs showing requests attempting to access files outside normal application directories
  • Error logs indicating file access attempts to unexpected paths

Detection Strategies

  • Monitor web application logs for directory traversal patterns including ../, ..%2f, %2e%2e/, and similar encoded variations
  • Implement web application firewall (WAF) rules to detect and block path traversal attempts
  • Review Flask-CORS version across all deployed applications and flag versions below 3.0.9
  • Conduct periodic security scans to identify applications running vulnerable Flask-CORS versions

Monitoring Recommendations

  • Enable verbose logging for Flask applications to capture full request paths
  • Configure alerting for suspicious path patterns in HTTP requests
  • Monitor for unauthorized access to sensitive files or API endpoints
  • Implement intrusion detection rules for directory traversal attack signatures

How to Mitigate CVE-2020-25032

Immediate Actions Required

  • Upgrade Flask-CORS to version 3.0.9 or later immediately
  • Review application logs for any evidence of exploitation attempts
  • Audit CORS configurations to ensure they follow the principle of least privilege
  • Implement input validation to reject requests containing directory traversal sequences

Patch Information

The vulnerability is fixed in Flask-CORS version 3.0.9. The fix ensures that pathnames are canonicalized before resource matching operations. Update your Flask-CORS dependency using your package manager:

Security advisories are available from multiple sources:

  • Flask-CORS 3.0.9 Release Notes on GitHub
  • Debian Security Advisory DSA-4775
  • openSUSE Security Announcements

Workarounds

  • Implement additional path validation middleware that normalizes and validates request paths before they reach Flask-CORS
  • Configure reverse proxy or web server rules to block requests containing directory traversal sequences
  • Use web application firewalls (WAF) to filter malicious requests at the network perimeter
  • Restrict file system permissions to limit the impact of potential traversal attacks
bash
# Upgrade Flask-CORS to patched version
pip install --upgrade flask-cors>=3.0.9

# Verify installed version
pip show flask-cors | grep Version

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

  • Vulnerability Details
  • TypePath Traversal

  • Vendor/TechFlask Cors

  • SeverityHIGH

  • CVSS Score7.5

  • EPSS Probability0.27%

  • Known ExploitedNo
  • CVSS Vector
  • CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
  • Impact Assessment
  • ConfidentialityLow
  • IntegrityNone
  • AvailabilityNone
  • CWE References
  • CWE-22
  • Technical References
  • openSUSE Security Announcement

  • openSUSE Security Announcement

  • openSUSE Security Announcement

  • openSUSE Security Announcement

  • GitHub Release Notes

  • Debian Security Advisory DSA-4775
  • Latest CVEs
  • CVE-2025-49454: TinySalt Path Traversal Vulnerability

  • CVE-2025-48261: MultiVendorX Information Disclosure Flaw

  • CVE-2025-32119: CardGate WooCommerce SQL Injection Flaw

  • CVE-2025-26879: s2Member Plugin Reflected XSS Vulnerability
Default Legacy - Prefooter | 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