CVE-2019-12529
Description
An issue was discovered in Squid 2.x through 2.7.STABLE9, 3.x through 3.5.28, and 4.x through 4.7. When Squid is configured to use Basic Authentication, the Proxy-Authorization header is parsed via uudecode. uudecode determines how many bytes will be decoded by iterating over the input and checking its table. The length is then used to start decoding the string. There are no checks to ensure that the length it calculates isn't greater than the input buffer. This leads to adjacent memory being decoded as well. An attacker would not be able to retrieve the decoded data unless the Squid maintainer had configured the display of usernames on error pages.
How to fix
- squid-cache squid2.7 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| squid-cache squid | 2.0 ≤ v < 2.7, 3.0 ≤ v ≤ 3.5.28, 4.0 ≤ v ≤ 4.7, 2.7 | 2.7 |
| debian debian_linux | 8.0, 9.0, 10.0 | — |
| fedoraproject fedora | 29 | — |
| opensuse leap | 15.0, 15.1 | — |
| canonical ubuntu_linux | 12.04, 16.04, 18.04, 19.04 | — |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.