An issue was discovered in Squid 3.3.9 through 3.5.28 and 4.x through 4.7. When Squid is configured to use Digest authentication, it parses the header Proxy-Authorization. It searches for certain tokens such as domain, uri, and qop. Squid checks if this token’s value starts with a quote and ends with one. If so, it performs a memcpy of its length minus 2. Squid never checks whether the value is just a single quote (which would satisfy its requirements), leading to a memcpy of its length minus 1.
lists.opensuse.org/opensuse-security-announce/2019-11/msg00053.html
lists.opensuse.org/opensuse-security-announce/2019-11/msg00056.html
www.squid-cache.org/Versions/v4/changesets/
www.squid-cache.org/Versions/v4/changesets/squid-4-7f73e9c5d17664b882ed32590e6af310c247f320.patch
github.com/squid-cache/squid/commits/v4
lists.debian.org/debian-lts-announce/2019/07/msg00018.html
lists.debian.org/debian-lts-announce/2020/07/msg00009.html
lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/SPXN2CLAGN5QSQBTOV5IGVLDOQSRFNTZ/
seclists.org/bugtraq/2019/Aug/42
usn.ubuntu.com/4065-1/
usn.ubuntu.com/4065-2/
www.debian.org/security/2019/dsa-4507