Vulnerability · Published Apr 26, 2024 · Assigned by GitHub_M

CVE-2024-32878 Use of Uninitialized Variable Vulnerability in llama.cpp

High 7.1

In plain English

A high-severity security flaw in llama.cpp from ggerganov. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.7% (higher than 53% of all known vulnerabilities).

Severity (CVSS 3.1)7.1High
Exploit odds (30 days)0.7%top 46.8% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

Llama.cpp is LLM inference in C/C++. There is a use of uninitialized heap variable vulnerability in gguf_init_from_file, the code will free this uninitialized variable later. In a simple POC, it will directly cause a crash. If the file is carefully constructed, it may be possible to control this uninitialized value and cause arbitrary address free problems. This may further lead to be exploited. Causes llama.cpp to crash (DoS) and may even lead to arbitrary code execution (RCE). This vulnerability has been patched in commit b2740.

Affected products (as reported)

VendorProductVersions
ggerganov llama.cpp <= b2715

Weakness: CWE-456 · Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:L

References