{"id":"CVE-2026-34159","aliases":["DEBIAN-CVE-2026-34159","EUVD-2026-17975","GHSA-j8rj-fmpv-wcxw","UBUNTU-CVE-2026-34159"],"status":"published","title":"llama.cpp: Unauthenticated RCE via GRAPH_COMPUTE buffer=0 bypass in llama.cpp RPC backend","description":"llama.cpp is an inference of several LLM models in C/C++. Prior to version b8492, the RPC backend's deserialize_tensor() skips all bounds validation when a tensor's buffer field is 0. An unauthenticated attacker can read and write arbitrary process memory via crafted GRAPH_COMPUTE messages. Combined with pointer leaks from ALLOC_BUFFER/BUFFER_GET_BASE, this gives full ASLR bypass and remote code execution. No authentication required, just TCP access to the RPC server port. This issue has been patched in version b8492.","severity":{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-10","score":0.01623,"percentile":0.763,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":true,"fix_available":true},"cwes":["CWE-119"],"published":"2026-04-01T16:59:59Z","modified":"2026-10-28T10:49:35Z","exploits":[{"source":"pocgithub","id":"TeamN4C/SG-2026-0021","title":"TeamN4C/SG-2026-0021","date":"2026-08-27","url":"https://github.com/TeamN4C/SG-2026-0021"},{"source":"pocgithub","id":"casp3r0x0/CVE-2026-34159","title":"casp3r0x0/CVE-2026-34159","date":"2026-04-23","url":"https://github.com/casp3r0x0/CVE-2026-34159"},{"source":"pocgithub","id":"rohithronanki/CVE-2026-34159-Vulnerability-Research-Analysis-Detection","title":"rohithronanki/CVE-2026-34159-Vulnerability-Research-Analysis-Detection","date":"2026-05-04","url":"https://github.com/rohithronanki/CVE-2026-34159-Vulnerability-Research-Analysis-Detection"}],"fixes":[{"ecosystem":"Debian:14","package":"llama.cpp","fixed_in":["8611+dfsg-1"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Debian:14","package":"llama.cpp","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"8611+dfsg-1"}]}],"versions":["5151+dfsg-1~exp2","5151+dfsg-1~exp3","5318+dfsg-1","5318+dfsg-2","5713+dfsg-1","5760+dfsg-1","5760+dfsg-2","5760+dfsg-3","5760+dfsg-4","5882+dfsg-1","5882+dfsg-2","5882+dfsg-3","5882+dfsg-3~exp1","5882+dfsg-3~exp2","5882+dfsg-3~exp3","5882+dfsg-4","6641+dfsg-1","6641+dfsg-2","6641+dfsg-3","7593+dfsg-1","7593+dfsg-2","7593+dfsg-3","7965+dfsg-1","8064+dfsg-1","8064+dfsg-2","8461+dfsg-1"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"llama.cpp","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["5318+dfsg-1","5318+dfsg-2","5713+dfsg-1","5760+dfsg-1","5760+dfsg-3","5760+dfsg-4","5882+dfsg-2"]}],"products":[{"vendor":"ggml","product":"llama.cpp"},{"vendor":"ggml-org","product":"llama.cpp"}],"references":[{"url":"https://github.com/ggml-org/llama.cpp/security/advisories/GHSA-j8rj-fmpv-wcxw","tags":["x_refsource_CONFIRM","Exploit","Vendor Advisory","advisory","report"]},{"url":"https://github.com/ggml-org/llama.cpp/pull/20908","tags":["x_refsource_MISC","Issue Tracking","Patch","fix","report"]},{"url":"https://github.com/ggml-org/llama.cpp/commit/39bf0d3c6a95803e0f41aaba069ffbee26721042","tags":["x_refsource_MISC","Patch","fix"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/34xxx/CVE-2026-34159.json","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-34159","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2026-34159","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2026-34159","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-34159","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2026-34159","title":"llama.cpp: Unauthenticated RCE via GRAPH_COMPUTE buffer=0 bypass in llama.cpp RPC backend","description":"llama.cpp is an inference of several LLM models in C/C++. Prior to version b8492, the RPC backend's deserialize_tensor() skips all bounds validation when a tensor's buffer field is 0. An unauthenticated attacker can read and write arbitrary process memory via crafted GRAPH_COMPUTE messages. Combined with pointer leaks from ALLOC_BUFFER/BUFFER_GET_BASE, this gives full ASLR bypass and remote code execution. No authentication required, just TCP access to the RPC server port. This issue has been patched in version b8492.","status":"published","published":"2026-04-01T16:59:59.967Z","modified":"2026-04-02T03:56:11.82Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"cna"}],"cwes":["CWE-119"],"updated_at":"2026-11-02T14:20:14.302133Z"}],"euvd":[{"id":"EUVD-2026-17975","description":"llama.cpp is an inference of several LLM models in C/C++. Prior to version b8492, the RPC backend's deserialize_tensor() skips all bounds validation when a tensor's buffer field is 0. An unauthenticated attacker can read and write arbitrary process memory via crafted GRAPH_COMPUTE messages. Combined with pointer leaks from ALLOC_BUFFER/BUFFER_GET_BASE, this gives full ASLR bypass and remote code execution. No authentication required, just TCP access to the RPC server port. This issue has been patched in version b8492.","status":"published","published":"2026-04-01T16:59:59Z","modified":"2026-04-02T03:56:11Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T19:25:23.620594Z"}],"nvd":[{"id":"CVE-2026-34159","description":"llama.cpp is an inference of several LLM models in C/C++. Prior to version b8492, the RPC backend's deserialize_tensor() skips all bounds validation when a tensor's buffer field is 0. An unauthenticated attacker can read and write arbitrary process memory via crafted GRAPH_COMPUTE messages. Combined with pointer leaks from ALLOC_BUFFER/BUFFER_GET_BASE, this gives full ASLR bypass and remote code execution. No authentication required, just TCP access to the RPC server port. This issue has been patched in version b8492.","status":"published","published":"2026-04-01T18:16:29.687Z","modified":"2026-10-26T21:10:00.17Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"secondary"}],"cwes":["CWE-119"],"updated_at":"2026-11-02T14:12:12.73929Z"}],"osv":[{"id":"CVE-2026-34159","title":"llama.cpp: Unauthenticated RCE via GRAPH_COMPUTE buffer=0 bypass in llama.cpp RPC backend","description":"llama.cpp is an inference of several LLM models in C/C++. Prior to version b8492, the RPC backend's deserialize_tensor() skips all bounds validation when a tensor's buffer field is 0. An unauthenticated attacker can read and write arbitrary process memory via crafted GRAPH_COMPUTE messages. Combined with pointer leaks from ALLOC_BUFFER/BUFFER_GET_BASE, this gives full ASLR bypass and remote code execution. No authentication required, just TCP access to the RPC server port. This issue has been patched in version b8492.","status":"published","published":"2026-04-01T16:59:59.967Z","modified":"2026-10-28T10:49:35.13090993Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"cwes":["CWE-119"],"updated_at":"2026-11-02T15:45:02.247031Z"},{"id":"DEBIAN-CVE-2026-34159","description":"llama.cpp is an inference of several LLM models in C/C++. Prior to version b8492, the RPC backend's deserialize_tensor() skips all bounds validation when a tensor's buffer field is 0. An unauthenticated attacker can read and write arbitrary process memory via crafted GRAPH_COMPUTE messages. Combined with pointer leaks from ALLOC_BUFFER/BUFFER_GET_BASE, this gives full ASLR bypass and remote code execution. No authentication required, just TCP access to the RPC server port. This issue has been patched in version b8492.","status":"published","published":"2026-04-01T18:16:29.687Z","modified":"2026-10-27T09:47:33.491021756Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T15:45:54.587575Z"},{"id":"UBUNTU-CVE-2026-34159","description":"llama.cpp is an inference of several LLM models in C/C++. Prior to version b8492, the RPC backend's deserialize_tensor() skips all bounds validation when a tensor's buffer field is 0. An unauthenticated attacker can read and write arbitrary process memory via crafted GRAPH_COMPUTE messages. Combined with pointer leaks from ALLOC_BUFFER/BUFFER_GET_BASE, this gives full ASLR bypass and remote code execution. No authentication required, just TCP access to the RPC server port. This issue has been patched in version b8492.","status":"published","published":"2026-04-01T18:16:00Z","modified":"2026-05-14T14:40:28.913928Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T16:56:16.036833Z"}]}}
