libcurl <8.0.0 Double Free in Shared HSTS via Multithreading
CVE-2023-27537 Published on March 30, 2023

A double free vulnerability exists in libcurl <8.0.0 when sharing HSTS data between separate "handles". This sharing was introduced without considerations for do this sharing across separate threads but there was no indication of this fact in the documentation. Due to missing mutexes or thread locks, two threads sharing the same HSTS data could end up doing a double-free or use-after-free.

Vendor Advisory NVD

Weakness Type

What is a Double-free Vulnerability?

The product calls free() twice on the same memory address, potentially leading to modification of unexpected memory locations. When a program calls free() twice with the same argument, the program's memory management data structures become corrupted. This corruption can cause the program to crash or, in some circumstances, cause two later calls to malloc() to return the same pointer. If malloc() returns the same value twice and the program later gives the attacker control over the data that is written into this doubly-allocated memory, the program becomes vulnerable to a buffer overflow attack.

CVE-2023-27537 has been classified to as a Double-free vulnerability or weakness.


Products Associated with CVE-2023-27537

You can be notified by email with stack.watch whenever vulnerabilities like CVE-2023-27537 are published in these products:

 
 
 
 
 

Exploit Probability

EPSS
0.05%
Percentile
14.36%

EPSS (Exploit Prediction Scoring System) scores estimate the probability that a vulnerability will be exploited in the wild within the next 30 days. The percentile shows you how this score compares to all other vulnerabilities.