Heap-based Buffer Overflow Affecting squid:4/libecap-devel package, versions <0:1.0.1-2.module+el8.1.0+4044+36416a77


Severity

Recommended
0.0
medium
0
10

Based on Red Hat Enterprise Linux security rating.

Threat Intelligence

EPSS
6.97% (94th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-RHEL8-SQUID-3878037
  • published26 Jul 2021
  • disclosed24 Apr 2020

Introduced: 24 Apr 2020

CVE-2019-12521  (opens in a new tab)
CWE-122  (opens in a new tab)

How to fix?

Upgrade RHEL:8 squid:4/libecap-devel to version 0:1.0.1-2.module+el8.1.0+4044+36416a77 or higher.
This issue was patched in RHSA-2020:4743.

NVD Description

Note: Versions mentioned in the description apply only to the upstream squid:4/libecap-devel package and not the squid:4/libecap-devel package as distributed by RHEL. See How to fix? for RHEL:8 relevant fixed versions and status.

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.

CVSS Scores

version 3.1