High severity · published Jun 24, 2025
CVE-2025-52566
llama.cpp tokenizer signed vs. unsigned heap overflow
8.8
CVSS
0.4%
EPSS
No
On KEV
Description
llama.cpp is an inference of several LLM models in C/C++. Prior to version b5721, there is a signed vs. unsigned integer overflow in llama.cpp's tokenizer implementation (llama_vocab::tokenize) (src/llama-vocab.cpp:3036) resulting in unintended behavior in tokens copying size comparison. Allowing heap-overflowing llama.cpp inferencing engine with carefully manipulated text input during tokenization process. This issue has been patched in version b5721.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
Required
Confidentiality
High
Integrity
High
Availability
High
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.4% · higher than 30% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
LL
llama.cpp · ggml-org
< b5721 · source: vendor, NVD
Affected product
LL
llama.cpp
ggml-org
More from llama.cpp
9.8
CVE-2026-34159
llama.cpp: Unauthenticated RCE via GRAPH_COMPUTE buffer=0 bypass in llama.cpp RPC backend
9.8
CVE-2026-21869
llama.cpp has Out-of-bounds Write in llama-server
8.9
CVE-2025-53630
Integer Overflow in GGUF Parser can lead to Heap Out-of-Bounds Read/Write in gguf
8.8
CVE-2025-49847
llama.cpp Vulnerable to Buffer Overflow via Malicious GGUF Model
8.2
CVE-2024-58400
llama.cpp before b3701 Out-of-Bounds Read in llama_decode via Token IDs