CVE-2020-15094 json
RCE in Symfony
published 6y ago modified 4mo ago also BIT-symfony-2020-15094 , EUVD-2020-0840 , GHSA-754h-5r27-7x3r
- cvss
- 8.0
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 3.0%
- EPSS 3.0% chance of exploitation in 30 days, percentile 87%
- public exploits
- 0
- none known
Summary
In Symfony before versions 4.4.13 and 5.1.5, the CachingHttpClient class from the HttpClient Symfony component relies on the HttpCache class to handle requests. HttpCache uses internal headers like X-Body-Eval and X-Body-File to control the restoration of cached responses. The class was initially written with surrogate caching and ESI support in mind (all HTTP calls come from a trusted backend in that scenario). But when used by CachingHttpClient and if an attacker can control the response for a request being made by the CachingHttpClient, remote code execution is possible. This has been fixed in versions 4.4.13 and 5.1.5.
Patch / fix
- packagist symfony/http-kernel 4.4.13, 5.1.5
- packagist symfony/symfony 4.4.13, 5.1.5
- bitnami symfony 4.4.13, 5.1.5
- sensiolabs httpclient 4.4.13, 5.1.5
- sensiolabs symfony 4.4.13, 5.1.5
- symfony Debian 14, Debian 13, Debian 12 4.4.13+dfsg-1
debian advisories DEBIAN-CVE-2020-15094
Is CVE-2020-15094 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerExploit prediction
3.04% chance of exploitation in the next 30 days, higher than 87% of all scored CVEs (FIRST EPSS, 2026-11-09).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 8.0 | CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:H |
| GitHub | 3.1 | 8.0 | CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:H |
| NVD | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| NVD | 2.0 | 7.5 | AV:N/AC:L/Au:N/C:P/I:P/A:P |
| OSV | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| packagist | symfony/http-kernel | >=4.3.0, <4.4.13 >=5.0.0, <5.1.5 |
4.4.13 5.1.5 |
| packagist | symfony/symfony | >=4.3.0, <4.4.13 >=5.0.0, <5.1.5 |
4.4.13 5.1.5 |
| bitnami | symfony | >=4.4.0, <4.4.13 >=5.1.0, <5.1.5 |
4.4.13 5.1.5 |
Affected products
- symfony symfony
Classification
- Weakness
-
- CWE-212 Improper Removal of Sensitive Information Before Storage or Transfer
References
-
github.com
/symfony/symfony/commit/d9910e0b33a2e0f993abff41c6fbc86951b66d78
web, patch, third-party-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/VAQJXAKWPMWB7OL6QPG2ZSEQZYYPU5RC/
vendor-advisory, web
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/HNGUWOEETOFVH4PN3I3YO4QZHQ4AUKF3/
vendor-advisory, web
-
github.com
/symfony/symfony/security/advisories/GHSA-754h-5r27-7x3r
web, third-party-advisory
-
packagist.org
/packages/symfony/symfony
web, product, third-party-advisory
-
packagist.org
/packages/symfony/http-kernel
web, product, third-party-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2020-15094
advisory
-
github.com
/FriendsOfPHP/security-advisories/blob/master/symfony/http-kernel/CVE-2020-15094.yaml
web
-
github.com
/FriendsOfPHP/security-advisories/blob/master/symfony/symfony/CVE-2020-15094.yaml
web
-
github.com
/symfony/symfony
package
-
lists.fedoraproject.org
/archives/list/package-announce@lists.fedoraproject.org/message/HNGUWOEETOFVH4PN3I3YO4QZHQ4AUKF3
web
-
lists.fedoraproject.org
/archives/list/package-announce@lists.fedoraproject.org/message/VAQJXAKWPMWB7OL6QPG2ZSEQZYYPU5RC
web
-
symfony.com
/cve-2020-15094
web
Sources
- CVE List CVE-2020-15094
- GitHub Advisory GHSA-754h-5r27-7x3r
- NVD CVE-2020-15094
- OSV BIT-symfony-2020-15094
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.