__________________________________________________________________ Squid Proxy Cache Security Update Advisory SQUID-2019:12 __________________________________________________________________ Advisory ID: SQUID-2019:12 Date: April 23, 2020 Summary: Multiple issues in ESI Response processing. Affected versions: Squid 3.x -> 3.5.28 Squid 4.x -> 4.10 Squid 5.x -> 5.0.1 Fixed in version: Squid 4.11 and 5.0.2 __________________________________________________________________ http://www.squid-cache.org/Advisories/SQUID-2019_12.txt http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-12519 http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-12521 __________________________________________________________________ Problem Description: Due to incorrect buffer handling Squid is vulnerable to cache poisoning, remote execution, and denial of service attacks when processing ESI responses. __________________________________________________________________ Severity: These problems allow a remote server delivering certain ESI response syntax to trigger a buffer overflow. On systems with heap overflow protection overflow will shutdown the proxy causing a denial of service for all clients accessing the Squid service. On systems with ESI buffer pooling (the default) overflow will truncate portions of generated payloads. Poisoning the HTTP response cache with corrupted objects. The CVE-2019-12519 issue also overwrites arbitrary attacker controlled information onto the process stack. Allowing remote code execution with certain crafted ESI payloads. These problems are restricted to ESI responses received from an upstream server. Attackers have to compromise the server or transmission channel to utilize these vulnerabilities. __________________________________________________________________ Updated Packages: This bug is fixed by Squid versions 4.11 and 5.0.2. In addition, patches addressing this problem for the stable releases can be found in our patch archives: Squid 4: If you are using a prepackaged version of Squid then please refer to the package vendor for availability information on updated packages. __________________________________________________________________ Determining if your version is vulnerable: All Squid-2.x are not vulnerable. All Squid built with --disable-esi are not vulnerable. All Squid-3.0 versions built without --enable-esi are not vulnerable. All Squid-3.x versions built with --enable-esi are vulnerable. All Squid-4.x up to and including Squid-4.10 are vulnerable. Squid-5.0.1 is not vulnerable to the CVE-2019-12519 remote code execution issue. Squid-5.0.1 is vulnerable to the CVE-2019-12521 issues. __________________________________________________________________ Workaround: Build Squid with --disable-esi __________________________________________________________________ Contact details for the Squid project: For installation / upgrade support on binary packaged versions of Squid: Your first point of contact should be your binary package vendor. If your install and build Squid from the original Squid sources then the squid-users@lists.squid-cache.org mailing list is your primary support point. For subscription details see . For reporting of non-security bugs in the latest STABLE release the squid bugzilla database should be used . For reporting of security sensitive bugs send an email to the squid-bugs@lists.squid-cache.org mailing list. It's a closed list (though anyone can post) and security related bug reports are treated in confidence until the impact has been established. __________________________________________________________________ Credits: This vulnerability was discovered by Jeriko One . Fixed by Amos Jeffries of Treehouse Networks Ltd. __________________________________________________________________ Revision history: 2019-05-14 14:56:49 UTC Initial Report 2019-05-20 11:23:13 UTC Patches Released 2019-06-05 15:52:17 UTC CVE Assignment 2020-04-23 08:00:00 UTC Advisory Released __________________________________________________________________ END