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.
| Package (Ecosystem) | Introduced | Fixed | Limit |
|---|---|---|---|
| symfony/http-kernel(Packagist) | 4.3.0 | 4.4.13 | N/A |
| symfony/http-kernel(Packagist) | 5.0.0 | 5.1.5 | N/A |
| symfony/symfony(Packagist) | 4.3.0 | 4.4.13 | N/A |
| symfony/symfony(Packagist) | 5.0.0 | 5.1.5 | N/A |
CVSS Metrics