CVE-2025-64500 Overview
CVE-2025-64500 is an authorization bypass vulnerability affecting Symfony's HttpFoundation component. The Request class improperly interprets certain PATH_INFO values in a way that leads to representing some URLs with a path that doesn't start with a /. This incorrect parsing behavior can allow attackers to bypass access control rules that are built with the assumption that URL paths always begin with a / prefix.
Symfony is a widely-used PHP framework for web and console applications, and the HttpFoundation component provides an object-oriented layer for the HTTP specification. This vulnerability has existed since version 2.0.0 and affects a significant portion of the Symfony ecosystem.
Critical Impact
Attackers can craft malicious requests with specially formatted PATH_INFO values to bypass security controls and access protected resources without proper authorization.
Affected Products
- Sensiolabs Symfony versions 2.0.0 through 5.4.49
- Sensiolabs Symfony versions 6.0.0 through 6.4.28
- Sensiolabs Symfony versions 7.0.0 through 7.3.6
- Sensiolabs HttpFoundation (standalone component) - corresponding versions
Discovery Timeline
- 2025-11-12 - CVE-2025-64500 published to NVD
- 2026-01-12 - Last updated in NVD database
Technical Details for CVE-2025-64500
Vulnerability Analysis
This vulnerability stems from how the Request class in Symfony's HttpFoundation component processes the PATH_INFO server variable. Under certain conditions, the class fails to properly normalize URL paths, resulting in path representations that do not begin with the expected / character.
Many applications implement access control rules based on URL path patterns, often assuming that all paths will start with a /. For example, a security rule might protect all paths starting with /admin/ to restrict access to administrative functions. When the Request class produces a path without the leading /, these pattern-matching rules may fail to recognize the path as matching the protected pattern, effectively allowing unauthorized access.
The vulnerability is network-exploitable and requires no authentication or user interaction, making it particularly concerning for internet-facing Symfony applications that rely on path-based access controls.
Root Cause
The root cause lies in the improper parsing logic within the Request class when handling edge cases in PATH_INFO values. The component did not enforce that all resulting URL paths must be normalized to start with a / character, violating the HTTP specification's expectation for absolute path references.
This represents a CWE-647 (Use of Non-Canonical URL Paths for Authorization Decisions) weakness, where the application makes security decisions based on URL paths without properly canonicalizing them first.
Attack Vector
An attacker can exploit this vulnerability by sending HTTP requests with specially crafted PATH_INFO values to a Symfony application. When the application's Request object parses these malicious values, the resulting path representation lacks the leading /, which can cause path-based security checks to fail.
The attack is particularly effective against applications that:
- Use Symfony's security component with path-based access rules
- Implement custom middleware that checks paths using prefix matching
- Rely on firewall configurations that match URL patterns starting with /
For detailed technical analysis, refer to the Symfony Blog CVE-2025-64500 Analysis and the GitHub Security Advisory.
Detection Methods for CVE-2025-64500
Indicators of Compromise
- Unusual HTTP requests with malformed or non-standard PATH_INFO values in server logs
- Access to protected resources by unauthenticated or unauthorized users
- Web application firewall logs showing requests with paths that don't conform to expected URL patterns
- Application logs indicating successful access to resources that should have been denied
Detection Strategies
- Review web server access logs for requests containing PATH_INFO values with unusual formatting or encoding
- Monitor application authentication and authorization logs for access pattern anomalies
- Implement Web Application Firewall (WAF) rules to detect and block requests with non-canonical URL paths
- Use SentinelOne Singularity to detect exploitation attempts through behavioral analysis of web application processes
Monitoring Recommendations
- Enable detailed logging for Symfony security component events and access denials
- Configure alerting for repeated access attempts to protected paths from the same source
- Monitor for increases in authorization failures that may indicate bypass attempts
- Implement runtime application self-protection (RASP) to detect path manipulation attacks
How to Mitigate CVE-2025-64500
Immediate Actions Required
- Upgrade Symfony to version 5.4.50, 6.4.29, or 7.3.7 or later immediately
- Review access control configurations to ensure they handle non-canonical paths
- Audit application logs for any signs of past exploitation attempts
- Consider implementing additional path validation at the web server or reverse proxy level
Patch Information
Symfony has released security patches that ensure the Request class always produces URL paths starting with a /. The fix is available in the following versions:
- Symfony 5.4.50 for the 5.4.x branch
- Symfony 6.4.29 for the 6.4.x branch
- Symfony 7.3.7 for the 7.3.x branch
The patch can be reviewed in the GitHub commit. Organizations should update their Composer dependencies to pull in the patched versions.
Workarounds
- Implement additional path normalization in a custom middleware before security checks are performed
- Configure web server rewrite rules to normalize all incoming paths to ensure leading /
- Add explicit path validation in application code that checks for and corrects missing leading slashes
- Use a reverse proxy to canonicalize URLs before they reach the Symfony application
# Update Symfony via Composer to patched version
composer require symfony/http-foundation:^5.4.50
# Or for Symfony 6.x
composer require symfony/http-foundation:^6.4.29
# Or for Symfony 7.x
composer require symfony/http-foundation:^7.3.7
# Update the entire Symfony framework
composer update symfony/symfony
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.


