Skip to content
OpenAdvisories
High · 7.0 CVE-2026-70640 EUVD-2026-54280GHSA-vfpq-2xx5-4vrv

llama.cpp b1886–b7445 Race Condition Use-After-Free via llama-android.cpp

Published Aug 6, 2026 · Updated Nov 8, 2026 · Assigned by VulnCheck

Description

llama.cpp builds b1886 through b7445 contain a race condition use-after-free vulnerability in the LLaMA-Android JNI wrapper where bench_1model() and free_1context() lack synchronization, allowing Thread A to operate on freed memory while Thread B concurrently frees the llama_context. Attackers can exploit this by performing heap spray with attacker-controlled data containing a fake vtable to hijack the vtable pointer at offset +0x30, causing llama_batch_allocr::clear() to dereference arbitrary memory and achieve remote code execution.

Affected products

VendorProductAffectedFixed
ggml-org llama.cpp b1886 – ≤ b7445 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 llama.cpp 7593+dfsg-1 —

References