Bug 933200 (CVE-2015-4050) - symphony: ESI unauthorized access - restriction bypass
Summary: symphony: ESI unauthorized access - restriction bypass
Status: RESOLVED FIXED
Alias: CVE-2015-4050
Product: openSUSE.org
Classification: openSUSE
Component: 3rd party software (show other bugs)
Version: unspecified
Hardware: Other Other
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: E-mail List
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-06-02 09:14 UTC by Andreas Stieger
Modified: 2023-08-07 03:05 UTC (History)
0 users

See Also:
Found By: Security Response Team
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andreas Stieger 2015-06-02 09:14:03 UTC
Coutesy bug for server:php:applications symfony
http://symfony.com/blog/cve-2015-4050-esi-unauthorized-access

patch https://github.com/symfony/symfony/pull/14759



ffected Versions¶

2.3.19 - 2.3.28, 2.4.9 - 2.4.10, 2.5.4 - 2.5.11, 2.6.0 - 2.6.7 versions of the Symfony HttpKernel component are affected by this security issue.

This issue has been fixed in Symfony 2.3.29, 2.5.12, and 2.6.8. Note that no fixes are provided for Symfony 2.4 as it's not maintained anymore. Symfony 2.7 hasn't been released yet and the fix will be included in the first stable release.
Description¶

Applications with ESI or SSI support enabled, that use the FragmentListener, are vulnerable to unauthorized access. A malicious user can call any controller via the /_fragment path by providing an invalid hash in the URL (or removing it), bypassing URL signing and security rules.

FragmentListener throws an AccessDeniedHttpException in case URL is not signed correctly. However, the ExceptionListener triggers kernel events again by making a sub-request. Since the FragmentListener does no signing for sub-requests, the controller is called even though the original request was forbidden. As a result the user receives a 403 response with content generated by the controller.
Resolution¶

The fix implements a check in the FragmentListener so it is not called in case a _controller attribute was previously set.

References:
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2015-4050
http://www.debian.org/security/2015/dsa-3276
http://people.canonical.com/~ubuntu-security/cve/2015/CVE-2015-4050.html
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-4050



Also... 
https://github.com/symfony/symfony/commit/78cf382aa26fcdab09d900fd84c31b9e5cee84a3
Comment 1 Chenzi Cao 2023-08-07 03:05:32 UTC
Hi there, this is quite an old bug. I close this it now. Please file a new bug report if the issue is still existing on the lasted openSUSE version. Thanks.