
Patch di sicurezza per vulnerabilità non patchate di llama.cpp (da CVE-2026-43626 a CVE-2026-43632) — Cyera Research
Patch di sicurezza per vulnerabilità non corrette in llama.cpp, scoperte da Cyera Research.
Tra luglio 2025 e giugno 2026, abbiamo segnalato 10 vulnerabilità al progetto llama.cpp tramite GitHub Security Advisories e MITRE. Tutti gli advisory sono stati chiusi dal maintainer senza correzioni né assegnazione di CVE. Abbiamo inviato una PR pubblica con le patch a giugno 2026 — anche questa è stata chiusa senza essere unita.
VulnCheck ha assegnato 10 ID CVE dopo che sia il vendor sia MITRE non hanno agito. Tre degli ID originali (CVE-2026-43623, CVE-2026-43624, CVE-2026-43626) sono stati successivamente sostituiti rispettivamente da CVE-2026-70638, CVE-2026-70639 e CVE-2026-70640.
Queste patch sono fornite affinché utenti e progetti downstream possano proteggersi.
| CVE | CVSS | Vulnerabilità | File interessati | Patch |
|---|---|---|---|---|
| CVE-2026-70640 | 7.3 | Race condition JNI su Android (UAF) | ai_chat.cpp | CVE-2026-70640 |
| CVE-2026-43627 | 8.5 | Integer overflow in llama_batch_init() | llama-batch.cpp | CVE-2026-43627 |
| CVE-2026-43628 | 8.5 | Integer underflow nel sampler DRY | llama-sampler.cpp, arg.cpp, server-task.cpp | CVE-2026-43628 |
| CVE-2026-43629 | 9.2 | Buffer overflow nello stato della KV cache | llama-kv-cache.cpp | CVE-2026-43629 |
| CVE-2026-43631 | 9.2 | Use-after-free nello sleep-idle del server | server-context.cpp, server-queue.cpp, server-queue.h | CVE-2026-43631 |
| CVE-2026-43632 | 9.2 | Creazione illimitata di task nel server | server-task.cpp, server-queue.cpp | CVE-2026-43632 |
Applicare una singola correzione:
cd /path/to/llama.cpp
git apply /path/to/patches/CVE-2026-43631-server-sleep-uaf.patch
Applicare tutte le correzioni in una volta:
cd /path/to/llama.cpp
git apply /path/to/patches/all-fixes.patch
Se git apply fallisce a causa di modifiche al contesto nelle versioni più recenti di llama.cpp, provare con --3way:
git apply --3way /path/to/patches/all-fixes.patch
| Data | Evento |
|---|---|
| Luglio 2025 | Prima vulnerabilità inviata tramite GitHub Security Advisory |
| Ottobre 2025 | Contattato MITRE per l'assegnazione dei CVE — ricevuti 7 ID di richiesta, nessuno assegnato |
| Gennaio–Maggio 2026 | Inviati altri quattro advisory — tutti chiusi senza correzioni |
| Maggio 2026 | VulnCheck ha assegnato 10 CVE |
| Giugno 2026 | Inviata PR pubblica con le patch — PR chiusa |