llama.cpp before b8585 contains a use-after-free vulnerability in the RPC server's GRAPH_RECOMPUTE handler that allows unauthenticated remote attackers to achieve arbitrary read and write access by storing a computation graph, freeing referenced buffers, and reclaiming freed memory with attacker-controlled content. Attackers can send RPC requests to trigger re-execution of stored graphs with dangling pointers, enabling full remote code execution without requiring authentication or user interaction.
{
"cna_assigner": "VulnCheck",
"cwe_ids": [
"CWE-416"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/39xxx/CVE-2026-39909.json"
}"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-39909.json"
[
{
"deprecated": false,
"digest": {
"function_hash": "244788692006019000972703352818145979594",
"length": 869
},
"id": "CVE-2026-39909-03f08271",
"signature_type": "Function",
"signature_version": "v1",
"source": "https://github.com/ggml-org/llama.cpp/commit/cad2d3884c75e3b2e4736654295d1f1a5c29aa48",
"target": {
"file": "ggml/src/ggml-rpc/ggml-rpc.cpp",
"function": "rpc_server::init_tensor"
}
},
{
"deprecated": false,
"digest": {
"line_hashes": [
"337818122442847660685904987056074994234",
"332791619165497263623691014610319336819",
"234547200259341559278718977025424156972",
"25768139271972055882201293668770967057"
],
"threshold": 0.9
},
"id": "CVE-2026-39909-fa00e801",
"signature_type": "Line",
"signature_version": "v1",
"source": "https://github.com/ggml-org/llama.cpp/commit/cad2d3884c75e3b2e4736654295d1f1a5c29aa48",
"target": {
"file": "ggml/src/ggml-rpc/ggml-rpc.cpp"
}
}
]
"2026-08-27T19:00:31Z"