GitHub Advisoryadvisory · Packagist
GHSA-83c3-qx27-2rwr Symfony Allows URI Restrictions Bypass Via Double-Encoded String
MEDIUM
Official page ↗
- Aliases
- CVE-2012-6431
- Ecosystem
- Packagist
- Packages
- symfony/http-foundation, symfony/routing, symfony/security, symfony/symfony
- Severity
- Moderate
- Weaknesses
- CWE-287
- Reviewed
- 2023-08-15
Affected packages
• Packagist symfony/http-foundation: >= 2.0.0, < 2.0.19 → fixed in 2.0.19
• Packagist symfony/routing: >= 2.0.0, < 2.0.19 → fixed in 2.0.19
• Packagist symfony/security: >= 2.0.0, < 2.0.19 → fixed in 2.0.19
• Packagist symfony/symfony: >= 2.0.0, < 2.0.19 → fixed in 2.0.19
Description
On the Symfony 2.0.x version, there's a security issue that allows access to routes protected by a firewall even when the user is not logged in.
Both the Routing component and the Security component uses the path returned by `getPathInfo()` to match a Request. The `getPathInfo()` returns a decoded path, but the Routing component (`Symfony\Component\Routing\Matcher\UrlMatcher`) decodes the path a second time; whereas the Security component, `Symfony\Component\HttpFoundation\RequestMatcher`, does not.
This difference causes Symfony 2.0 to be vulnerable to double encoding attacks.
Related
Alias · CVE (1)
- CVE-2012-6431 Symfony 2.0.x before 2.0.20 does not process URL encoded data consistently within the Routing and Security components, which allows remote… vulnerability
Weakness · CWE (1)
- CWE-287 Improper Authentication weakness
References
- https://nvd.nist.gov/vuln/detail/CVE-2012-6431 advisory
- https://github.com/symfony/symfony/commit/55014a6841bec50046e8329a4835c160ac31a496 web
- https://github.com/symfony/symfony/commit/8b2c17f80377582287a78e0b521497e039dd6b0d web
- https://github.com/FriendsOfPHP/security-advisories/blob/master/symfony/http-foundation/CVE-2012-6431.yaml web
- https://github.com/FriendsOfPHP/security-advisories/blob/master/symfony/routing/CVE-2012-6431.yaml web
- https://github.com/FriendsOfPHP/security-advisories/blob/master/symfony/security/CVE-2012-6431.yaml web
- https://github.com/FriendsOfPHP/security-advisories/blob/master/symfony/symfony/CVE-2012-6431.yaml web
- https://symfony.com/blog/security-release-symfony-2-0-20-and-2-1-5-released web
- http://symfony.com/blog/security-release-symfony-2-0-20-and-2-1-5-released web