p PatchFirst

CVE-2026-70640

CVE-2026-70640 · llama.cpp b1886–b7445 Race Condition Use-After-Free via llama-android.cpp

This page contains facts from public vulnerability sources. Check the original advisory before updating.

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.

CVSS 7.3 · High · EPSS 0.2% · Fix available

Published
Updated

Stack: system

Affected products and versions

  • llama.cpp

    Versions
    • ≥ b1886, ≤ b7445: Affected (custom)
    • ≥ 0.9.0, ≤ 0.17.1: Affected (semver)
    • 5c0d18881e0e9794c96b2602736b758bac9d9388: Not affected (git)

    No fix published

  • llama.cpp Debian:14

    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
    Affected ranges
    • ECOSYSTEM: < 7593+dfsg-1

    Update to 7593+dfsg-1

Original sources

Check your server →