An issue was discovered in Squid through 4.7. When Squid is parsing ESI, it keeps the ESI elements in ESIContext. ESIContext contains a buffer for holding a stack of ESIElements. When a new ESIElement is parsed, it is added via addStackElement. addStackElement has a check for the number of elements in this buffer, but it's off by 1, leading to a Heap Overflow of 1 element. The overflow is within the same structure so it can't affect adjacent memory blocks, and thus just leads to a crash while processing.
History

No history.

cve-icon MITRE

Status: PUBLISHED

Assigner: mitre

Published: 2020-04-15T18:47:43

Updated: 2024-08-04T23:24:38.850Z

Reserved: 2019-06-02T00:00:00

Link: CVE-2019-12521

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Analyzed

Published: 2020-04-15T19:15:12.393

Modified: 2021-07-21T11:39:23.747

Link: CVE-2019-12521

cve-icon Redhat

Severity : Moderate

Publid Date: 2020-04-24T00:00:00Z

Links: CVE-2019-12521 - Bugzilla