Affected versions
Symfony 2.8.0 to 2.8.51, 3.4.0 to 3.4.34, 4.2.0 to 4.2.11 and 4.3.0 to 4.3.7 versions of the Symfony HttpFoundation component are affected by this security issue. Symfony 4.3.0 to 4.3.7 versions of the Symfony Mime component are affected by this security issue.
The issue has been fixed in Symfony 2.8.52, 3.4.35, 4.2.12 and 4.3.8.
Note that no fixes are provided for Symfony 3.0, 3.1, 3.2, 3.3, 4.0 and 4.1 as they are not maintained anymore.
This will be the last Symfony 2.8 security fix as it enters EOL; please upgrade to a more recent version of Symfony to continue receiving updates.
Description
Provided file paths were not being properly escaped before being used in the FileBinaryMimeTypeGuesser resulting in potential argument injection through the provided $path
variable.
Resolution
We now ensure that the value passed to $file
passed cannot contain arguments.
The patches for this issue are available here for the Symfony HttpFoundation component and branch 4.2 and here for the Symfony Mime component and branch 4.3.
Credits
I would like to thank Ivan Novikov for reporting & Nicolas Grekas for fixing the issue.
Thanks! 🙏🏼