CVE-2019-12519

squid: improper check for new member in ESIExpression::Evaluate allows for stack buffer overflow

Published Apr 15, 2020 CVSS 3.1 · 9.8 Critical EPSS 6.7% KEV · Not listed
Description
An issue was discovered in Squid through 4.7. When handling the tag esi:when when ESI is enabled, Squid calls ESIExpression::Evaluate. This function uses a fixed stack buffer to hold the expression while it's being evaluated. When processing the expression, it could either evaluate the top of the stack, or add a new member to the stack. When adding a new member, there is no check to ensure that the stack won't overflow.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Debian DLA Debian DLA DLA-2278-1 squid3 security update
Debian DSA Debian DSA DSA-4682-1 squid security update
EUVD EUVD EUVD-2019-4114 An issue was discovered in Squid through 4.7. When handling the tag esi:when when ESI is enabled, Squid calls ESIExpression::Evaluate. This function uses a fixed stack buffer to hold the expression while it's being evaluated. When processing the expression, it could either evaluate the top of the stack, or add a new member to the stack. When adding a new member, there is no check to ensure that the stack won't overflow.
Ubuntu USN Ubuntu USN USN-4356-1 Squid vulnerabilities
History
Type Values Removed Values Added
Metrics epss

{'score': 0.07536}

epss

{'score': 0.07726}