SensioLabs, the creator of the popular PHP web application framework Symfony, announced on Wednesday the availability of updates that address a security bug.
The vulnerability, discovered by Jakub Zalas, exposes applications to unauthorized access (CVE-2015-4050). The issue affects the HttpKernel component in Symfony 2.3.19 – 2.3.28, 2.4.9 – 2.4.10, 2.5.4 – 2.5.11, and 2.6.0 – 2.6.7.
The flaw has been patched with the release of Symfony 2.3.29, 2.5.12, and 2.6.8, versions that include fixes for several other bugs as well. The developers noted that the fix is not available for Symfony 2.4 since this version is no longer supported. The patch will also be included in the first stable release of Symfony 2.7.
Zalas noted that the vulnerability affects applications if Edge Side Includes (ESI) or Server Side Includes (SSI) support is enabled in the “config.yml” configuration file, and the FragmentListener is not disabled.
“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,” reads the advisory for CVE-2015-4050.
“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,” the advisory explains.
The flaw has been addressed by implementing a check in the FragmentListener.
Symfony, created in 2005 by Fabien Potencier, is used by several popular open-source projects, including Drupal and phpBB, and companies such as Yahoo and Dailymotion. The Symfony developer community has more than 100,000 members, and the framework and its components are downloaded over 1 million times every month, according to SensioLabs.