Skip to content
Fencer Intel
high 7.5

CVE-2019-12520 json

An issue was discovered in Squid through 4.7 and 5.

published 6y ago modified 4mo ago also EUVD-2019-4115

cvss
7.5
version 3.1, NVD
cisa kev
Not listed
not in CISA's catalog
epss
3.9%
EPSS 3.9% chance of exploitation in 30 days, percentile 90%
public exploits
0
none known

Summary

An issue was discovered in Squid through 4.7 and 5. When receiving a request, Squid checks its cache to see if it can serve up a response. It does this by making a MD5 hash of the absolute URL of the request. If found, it servers the request. The absolute URL can include the decoded UserInfo (username and password) for certain protocols. This decoded info is prepended to the domain. This allows an attacker to provide a username that has special characters to delimit the domain, and treat the rest of the URL as a path or query string. An attacker could first make a request to their domain using an encoded username, then when a request for the target domain comes in that decodes to the exact URL, it will serve the attacker's HTML instead of the real HTML. On Squid servers that also act as reverse proxies, this allows an attacker to gain access to features that only reverse proxies can use, such as ESI.

Patch / fix

  • squid Debian 14, Debian 13, Debian 12 4.8-1

debian advisories DEBIAN-CVE-2019-12520

  • squid3 Ubuntu 18.04 LTS 3.5.27-1ubuntu1.7

ubuntu advisories UBUNTU-CVE-2019-12520

Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0

  • squid RHEL 8 7:4.11-3.module+el8.3.0+7851+7808b5f9
  • libecap RHEL 8 1.0.1-2.module+el8.1.0+4044+36416a77

red hat advisories RHSA-2020:4743

  • squid3 SLES 11 SP4-LTSS, SLE Point of Sale 11 SP3 3.1.23-8.16.37.12.1
  • squid SLES for SAP 12 SP4, SLES for SAP 12 SP3, SLES for SAP 12 SP2 +10 more 3.5.21-26.23.1

suse advisories SUSE-SU-2020:14460-1SUSE-SU-2020:1227-1

  • libecap AlmaLinux 8 1.0.1-2.module_el8.6.0+2741+01592ae8

almalinux advisories ALSA-2020:4743

  • libecap Rocky Linux 8 1.0.1-2.module+el8.4.0+404+316a0dc5

rocky linux advisories RLSA-2020:4743

Is CVE-2019-12520 in your stack? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.

Check with Fencer

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2019-12520 updated cvss 7.4

squid: Improper input validation in request allows for proxy manipulation

  • Red Hat Enterprise Linux 5 squid Red Hat Enterprise Linux 6 squid, squid34
    affected: no fix planned “Out of support scope”
  • Red Hat Enterprise Linux 7 squid, squid-sysvinit, squid-migration-script
    affected: no fix planned “Will not fix”
  • Red Hat Enterprise Linux AppStream (v. 8) squid 4.11-3.module+el8.3.0+7851+7808b5f9, libecap 1.0.1-2.module+el8.1.0+4044+36416a77
    fixed: vendor fix RHSA-2020:4743

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

Exploit prediction

3.92% chance of exploitation in the next 30 days, higher than 90% of all scored CVEs (FIRST EPSS, 2026-11-09).

CVSS scores

assigned by version score vector
NVD 3.1 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
NVD 2.0 5.0 AV:N/AC:L/Au:N/C:P/I:N/A:N

Classification

Weakness
  • CWE-20 Improper Input Validation

References

Sources

Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.