llama.cpp before b11393 contains a use-after-free and double free vulnerability in common_chat_peg_mapper::map that allows unauthenticated remote attackers to corrupt heap memory via a dangling current_tool pointer. Attackers can submit a chat_parser in a POST /completion request emitting a tool-id after a tool-close tag to crash llama-server and shape a heap write primitive.
{
"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"
}
]
}