llama.cpp builds b4882 through b9058 contain a heap buffer overflow vulnerability in the KV cache state restore path where the state_read_data() function computes write size without overflow checking, allowing attackers with write access to the slot_save_path directory to corrupt heap memory. Attackers can craft malicious state files where cell_count multiplication overflows or exceeds tensor buffer allocation to write attacker-controlled bytes past buffer boundaries, potentially resulting in heap metadata corruption, model weight corruption, or arbitrary code execution via function pointer overwrite.
{
"binaries": [
{
"binary_name": "libllama0",
"binary_version": "8681+dfsg-1"
},
{
"binary_name": "llama.cpp",
"binary_version": "8681+dfsg-1"
},
{
"binary_name": "llama.cpp-examples",
"binary_version": "8681+dfsg-1"
},
{
"binary_name": "llama.cpp-tests",
"binary_version": "8681+dfsg-1"
},
{
"binary_name": "llama.cpp-tools",
"binary_version": "8681+dfsg-1"
},
{
"binary_name": "llama.cpp-tools-extra",
"binary_version": "8681+dfsg-1"
},
{
"binary_name": "python3-gguf",
"binary_version": "8681+dfsg-1"
}
]
}