CVE-2019-17545

GDAL through 3.0.1 has a poolDestroy double free in OGRExpatRealloc in ogr/ogr_expat.cpp when the 10MB threshold is exceeded

published October 14, 2019

CVSS
—
EPSS
3%
Percentile
85.1
In the wild
Unconfirmed
What it is

⚠️ A double-free vulnerability is lurking in GDAL versions up to 3.0.1 when handling large data pools — exceeding 10MB can lead to a wild memory mess! 🧩 Think of it as a restaurant trying to serve two dishes to the same table at once; if the kitchen isn’t careful, one plate might end up on the floor instead of in front of the diners. 🍽️ An attacker could exploit this flaw to manipulate memory allocations, potentially leading to crashes or unexpected behavior within applications using GDAL. While it's not currently exploited, the risks could grow if left unaddressed, resulting in instability for systems relying on this library.

Put simply

Think of it as a restaurant trying to serve two dishes to the same table at once; if the kitchen isn’t careful, one plate might end up on the floor instead of in front of the diners. 🍽️ This vulnerability occurs in the OGRExpatRealloc function in ogr/ogr_expat.cpp, where memory management mishandles pointers leading to a double free when data thresholds exceed 10MB.

What to do

An attacker could exploit this flaw to manipulate memory allocations, potentially leading to crashes or unexpected behavior within applications using GDAL. While it's not currently exploited, the risks could grow if left unaddressed, resulting in instability for systems relying on this library. To mitigate this vulnerability, update GDAL to version 3.0.2 or higher. Additionally, monitor your applications for any unusual behavior related to memory allocation and consider implementing additional memory management practices. You've got this! Patch up and keep your applications running smoothly. 🛡️

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.02577 · 85.1th percentile
Published
2019-10-14T01:07Z
EPSS history
Timeline
  • 14 OCT 01:07Z
    GDAL through 3.0.1 has a poolDestroy double free in OGRExpatRealloc in ogr/ogr_expat.cpp when the 10MB threshold is exceeded
    cvelistv5