CVE Catalog

CVE-2026-70640

HighCVSS 7.0
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.16%

6th percentile - higher than 6% of all known CVEs

Summary

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 and achieve remote code execution.

Risk Assessment

Risk of remote code execution in Android applications using LLaMA-Android, potentially leading to full application compromise and data breach.

Recommendation

Update llama.cpp to a version newer than b7445 that includes the synchronization fix. If not possible, restrict trust in input data and consider using a sandbox.

Other vulnerabilities in llama.cpp

See all
Original NVD description (English source)

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.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS