Squid Request Smuggling in HTTP Transfer-Encoding
What fixes it
- 7.6squidGitHub
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
Squid is a caching proxy for the Web. From 3.3.0.1 to before 7.6, due to an improper enforcement of behavioral workflow bug, Squid is vulnerable to a Request Smuggling attack against HTTP/1.1 Transfer-Encoding. HTTP header parsing (src/HttpHeader.cc) accepted the bare Transfer-Encoding: identity form, which the HTTP specification prohibits because any transfer coding must be wrapped within chunked encoding. This problem allows a trusted client to perform an HTTP Request Smuggling attack when HTTP/1.1 is used, bypassing security mechanisms that may be in place between attacker and Squid. When there is an HTTP cache operating prior to the affected Squid, this Request Smuggling attack also allows the attacker to poison that web cache and store arbitrary malicious content at any URL for delivery to other clients' future requests. This issue is fixed in version 7.6.
Text from CVE List
Affected versions 2
- squidaffected: >= 3.3.0.1, < 7.6CVE List
- squid3.3.0.1-7.5GitHub
References 6
- github.com/squid-cache/squid/commit/d06f48de8b8cc9a378cb91ecfe8e89b6e81696d2Fixvia CVE List
- github.com/squid-cache/squid/commit/d808a7c825a70275113790471135c9c4d547ee51Fixvia CVE List
- github.com/squid-cache/squid/releases/tag/SQUID_7_6Fixvia CVE List
- github.com/squid-cache/squid/security/advisories/GHSA-537g-4gfh-w7m6Advisoryvia CVE List
- github.com/squid-cache/squid/pull/2427Referencevia CVE List
- github.com/squid-cache/squid/pull/2431Referencevia CVE List