llama.cpp before b5649 Heap Out-of-Bounds Read via llama_vocab::impl::print_info
Impact
llama.cpp before b5649 contains a heap out-of-bounds read vulnerability in llama_vocab::impl::print_info() that allows attackers to crash model loading via oversized special token IDs. Attackers can supply a crafted GGUF model with a short tokenizer.ggml.tokens array, causing llama-cli or llama-server to read past id_to_token and crash.
Source excerpt · VulnCheckAffected packages
Affected products
Vendor version evidence. Product records are separate from automatic dependency matching.
ggml-org · llama.cpp
Other versions: unaffected
| Version / range | Source status |
|---|---|
| 0 to before b5649 | affected |
Original source description
llama.cpp before b5649 contains a heap out-of-bounds read vulnerability in llama_vocab::impl::print_info() that allows attackers to crash model loading via oversized special token IDs. Attackers can supply a crafted GGUF model with a short tokenizer.ggml.tokens array, causing llama-cli or llama-server to read past id_to_token and crash.
References
- Security advisory github.com/ggml-org/llama.cpp/security/advisories/GHSA-g4cc-763q-h9h6
- Patch github.com/ggml-org/llama.cpp/pull/14145
- Patch github.com/ggml-org/llama.cpp/commit/c33fe8b8c4427202706b1434e9fc8ab5752c9cac
- Source reference github.com/ggml-org/llama.cpp/blob/b5648/src/llama-vocab.cpp
- Release notes github.com/ggml-org/llama.cpp/releases/tag/b5649
- Security advisory www.vulncheck.com/advisories/llama-cpp-before-b5649-heap-out-of-bounds-read-via-llama-vocab-impl-print-info