Exceptions displayed in non-debug configurations in Symfony
The advisory, in context
Description
When ErrorHandler renders an exception HTML page, it uses un-escaped properties from the related Exception class to render the stacktrace. The security issue comes from the fact that the stacktraces were also displayed in non-debug environments.
Resolution
The ErrorHandler class now escapes all properties coming from the related Exception, and the stacktrace is not displayed anymore in non-debug environments.
The patches for this issue are available here and here for branch 4.4.
Credits
I would like to thank Luka Sikic for reporting & Yonel Ceruto and Jérémy Derussé for fixing the issue.
Affected packages
Start with the recorded fix for your release branch. Check your installed version and test compatibility before upgrading. Fixing this advisory does not rule out other vulnerabilities in the release.
From 4.4.0 before 4.4.4
Fixed in 4.4.4
4 explicitly affected versions
v4.4.0, v4.4.1, v4.4.2, v4.4.3
View affected-version evidence
{
"ranges": [
{
"events": [
{
"introduced": "4.4.0"
},
{
"fixed": "4.4.4"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"v4.4.0",
"v4.4.1",
"v4.4.2",
"v4.4.3"
]
}From 5.0.0 before 5.0.4
Fixed in 5.0.4
4 explicitly affected versions
v5.0.0, v5.0.1, v5.0.2, v5.0.3
View affected-version evidence
{
"ranges": [
{
"events": [
{
"introduced": "5.0.0"
},
{
"fixed": "5.0.4"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"v5.0.0",
"v5.0.1",
"v5.0.2",
"v5.0.3"
]
}From 4.4.0 before 4.4.4
Fixed in 4.4.4
4 explicitly affected versions
v4.4.0, v4.4.1, v4.4.2, v4.4.3
View affected-version evidence
{
"ranges": [
{
"events": [
{
"introduced": "4.4.0"
},
{
"fixed": "4.4.4"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"v4.4.0",
"v4.4.1",
"v4.4.2",
"v4.4.3"
]
}From 5.0.0 before 5.0.4
Fixed in 5.0.4
4 explicitly affected versions
v5.0.0, v5.0.1, v5.0.2, v5.0.3
View affected-version evidence
{
"ranges": [
{
"events": [
{
"introduced": "5.0.0"
},
{
"fixed": "5.0.4"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"v5.0.0",
"v5.0.1",
"v5.0.2",
"v5.0.3"
]
}References
- https://github.com/symfony/symfony/security/advisories/GHSA-m884-279h-32v2
- https://nvd.nist.gov/vuln/detail/CVE-2020-5274
- https://github.com/symfony/symfony/commit/629d21b800a15dc649fb0ae9ed7cd9211e7e45db
- https://github.com/symfony/symfony/commit/cf80224589ac05402d4f72f5ddf80900ec94d5ad
- https://github.com/FriendsOfPHP/security-advisories/blob/master/symfony/error-handler/CVE-2020-5274.yaml
- https://github.com/FriendsOfPHP/security-advisories/blob/master/symfony/symfony/CVE-2020-5274.yaml
- https://symfony.com/cve-2020-5274