Vulnerability Description
llama.cpp is an inference of several LLM models in C/C++. Prior to version b5662, an attacker‐supplied GGUF model vocabulary can trigger a buffer overflow in llama.cpp’s vocabulary‐loading code. Specifically, the helper _try_copy in llama.cpp/src/vocab.cpp: llama_vocab::impl::token_to_piece() casts a very large size_t token length into an int32_t, causing the length check (if (length < (int32_t)size)) to be bypassed. As a result, memcpy is still called with that oversized size, letting a malicious model overwrite memory beyond the intended buffer. This can lead to arbitrary memory corruption and potential code execution. This issue has been patched in version b5662.
CVSS Score
HIGH
Affected Products
| Vendor | Product | Versions |
|---|---|---|
| Ggml | Llama.Cpp | < b5662 |
Related Weaknesses (CWE)
References
- https://github.com/ggml-org/llama.cpp/commit/3cfbbdb44e08fd19429fed6cc85b982a91fPatch
- https://github.com/ggml-org/llama.cpp/security/advisories/GHSA-8wwf-w4qm-gpqrMitigationVendor Advisory
FAQ
What is CVE-2025-49847?
CVE-2025-49847 is a vulnerability with a CVSS score of 8.8 (HIGH). llama.cpp is an inference of several LLM models in C/C++. Prior to version b5662, an attacker‐supplied GGUF model vocabulary can trigger a buffer overflow in llama.cpp’s vocabulary‐loading code. Speci...
How severe is CVE-2025-49847?
CVE-2025-49847 has been rated HIGH with a CVSS base score of 8.8/10. Review the CVSS metrics above for detailed severity breakdown.
Is there a patch for CVE-2025-49847?
Check the references section above for vendor advisories and patch information. Affected products include: Ggml Llama.Cpp.