llama.cpp Release b11000 Fixes Critical Remote Code Execution Vulnerability
llama.cpp has released version b11000 to fix a critical use-after-free vulnerability in its RPC server component. The flaw allowed unauthenticated remote attackers to execute arbitrary code by triggering dangling pointers in cached compute graphs. llama.cpp is a foundational engine for local and distributed LLM inference across diverse hardware setups. Vulnerabilities in its RPC server put network-exposed compute nodes at immediate risk of complete system compromise. The issue stemmed from cached compute graph nodes retaining direct pointers to backend memory buffers even after a FREE_BUFFER command was issued. Attackers could manipulate memory allocations to leak libc addresses and hijack the buffer interface vtable, which the patch resolves by discarding cached graphs whenever a buffer is freed.
## BACKGROUND
The RPC server in llama.cpp allows users to distribute heavy LLM workloads by offloading tensor computations to remote hosts over a network. In C++, use-after-free vulnerabilities occur when a program accesses memory after it has been released, enabling attackers to corrupt memory structures and alter application execution via techniques like vtable hijacking.