Skip to main content

llama.cpp EUVDEUVD-2026-111551

| CVE-2026-118375 CRITICAL
Out-of-bounds Write (CWE-787)
2026-10-28 VulnCheck GHSA-pmf8-m38j-h768
9.2
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Reach network-exposed llama.cpp rpc-server
  2. Exploit
    Advertise RDMA capabilities in HELLO message
  3. Execution
    Send up to 256 KiB overflowing 1-byte stack variable
  4. Impact
    Crash rpc-server or potentially execute code

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, write limits
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the target to be an llama.cpp rpc-server built/running with the ggml-rpc RDMA transport active, and the server network-reachable to the attacker. The concrete trigger per the description: a peer advertises RDMA capabilities in the HELLO message, after which the server's rdma_recv() path accepts up to 256 KiB that overflows a 1-byte stack variable in rpc_serve_client(). No authentication is required (CVSS PR:N), so any reachable peer qualifies. The key limiting factor is deployment mode: the llama.cpp RPC server is an opt-in distributed-inference feature and the RDMA transport is a specific, non-default path (reflected by AT:P), so hosts that do not run the rpc-server or do not enable RDMA are not exposed. No user interaction is needed (UI:N).

Impact

The input CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H) scores 9.2 (Critical) and the vuln.today Decision label is act_now, so this should be treated as an urgent, patch-now item wherever the affected component is exposed. The strongest signals are AV:N with PR:N - a network-reachable, unauthenticated peer can trigger the flaw - combined with high confidentiality/integrity/availability impact consistent with a stack out-of-bounds write (CWE-787) that the description says crashes the server or could 'potentially' execute code. The AT:P metric (Attack Requirements: Present) is important context: exploitation is not against a bare default, it requires the rpc-server to be running the ggml-rpc RDMA transport path, which the attacker then engages by advertising RDMA in the HELLO message. Signals are only partially complete: no EPSS probability and no CISA KEV entry are provided, so there is no evidence of active or widespread exploitation - exploitation status is 'no public exploit identified at time of analysis' (the references are patches, source, and a VulnCheck advisory, not exploit code). This means the 9.2 is a genuine severity ceiling rather than a demonstrated mass-exploitation threat: the realistic risk concentrates on operators who run network-exposed llama.cpp RPC servers with RDMA enabled. Code execution is described as a possibility ('potentially'), not a confirmed capability, so confirmed impact is at minimum denial of service via server crash.

Exploit ScenarioDerived

An attacker with network reach to an llama.cpp rpc-server that is running the ggml-rpc RDMA transport connects as an unauthenticated peer and advertises RDMA capabilities in its HELLO message. It then sends up to 256 KiB of data that the vulnerable rdma_recv() path writes into a 1-byte stack variable in rpc_serve_client(), overflowing the stack and crashing the server, with potential for code execution. No public exploit code was identified in the provided data; the fix PR confirms the missing bounds check.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
Patch available 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 28, 2026

Stack-based out-of-bounds write in llama.cpp's ggml-rpc RDMA receive path (builds b8841 through b11865) lets unauthenticated network peers corrupt the rpc-server stack by advertising RDMA support in the HELLO message and sending up to 256 KiB into a 1-byte stack variable, crashing the server or potentially enabling code execution. The input CVSS 4.0 score is 9.2 Critical and the vuln.today decision is act_now, but exploitation requires the opt-in llama.cpp rpc-server to be running with the non-default RDMA transport and reachable from the attacker, which is reflected in the independent CVSS 3.1 assessment as AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H. No public exploit was identified in the provided intelligence at time of analysis, and the vendor fix is available in build b11865.

RemediationAI

Vendor-released patch: b11865 - upgrade to llama.cpp b11865 or later; the fix is in PR #30399 / commit 9a0fde9967fa1a35b6e5dd1f47e1a3648b6fecc1 and adds an RDMA receive overrun check ('got > rem') in ggml/src/ggml-rpc/transport.cpp. The provided sources do not state a vendor workaround; the complete remediation is updating. Where immediate upgrade is not possible, reduce exposure by not enabling or using the llama.cpp rpc-server's RDMA transport and by blocking untrusted network access to rpc-server endpoints, consistent with the assessed prerequisite that exploitation requires a reachable RDMA-enabled rpc-server; these are deployment controls and do not replace the patch. Advisory references: https://github.com/ggml-org/llama.cpp/pull/30399, https://github.com/ggml-org/llama.cpp/commit/9a0fde9967fa1a35b6e5dd1f47e1a3648b6fecc1, https://github.com/ggml-org/llama.cpp/releases/tag/b11865, and https://www.vulncheck.com/advisories/llama-cpp-b8841-before-b11865-stack-based-buffer-overflow-via-ggml-rpc-rdma-rdma-recv.

Affected VersionsENISA

llama.cpp b8841 <b11865

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The impacted component is ggml-rpc, llama.cpp's remote procedure call transport used for distributed inference; the RDMA path in ggml/src/ggml-rpc/transport.cpp (source evidence around lines 510-528) implements rdma_recv() and the rpc_serve_client() receive loop. The flaw is CWE-787 (out-of-bounds write): a peer that advertises RDMA capabilities in the HELLO handshake can make the server accept up to 256 KiB into a 1-byte stack buffer, and the upstream patch adds a 'got > rem' overrun check before the received data is accepted. CPE cpe:2.3:a:ggml-org:llama.cpp:*:*:*:*:*:*:*:* and EUVD's 'llama.cpp b8841 <b11865' identify affected builds; the independent assessment notes that the RPC server is opt-in and the RDMA transport is a specific non-default path, so hosts without that deployment are not exposed. The trigger is described by the sources as RDMA-capable HELLO negotiation followed by oversized receive data; no additional trigger detail is provided.

Know when Llama Cpp gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 9.2 CRITICAL
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 8.1 HIGH

Network-reachable and unauthenticated (AV:N/PR:N); AC:H because the server must be running the non-default RDMA transport that the 4.0 vector marks as an attack requirement; stack OOB write yields high C/I/A.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

llama.cpp b8841 before b11865 contains an out-of-bounds write vulnerability in the ggml-rpc RDMA transport rdma_recv() function that allows unauthenticated peers to overflow the rpc-server stack. Attackers advertising RDMA capabilities in the HELLO message can send up to 256 KiB into a 1-byte stack variable in rpc_serve_client(), crashing the server or potentially executing code.

Executive ViewAI

Why It Matters

A critical vulnerability in llama.cpp's RPC server (builds b8841 through b11865) allows unauthenticated network attackers to corrupt server memory, potentially leading to crashes or code execution. Only organizations running the RPC server with the optional RDMA transport enabled and exposed to untrusted networks are at risk, which is a non-default configuration. Leadership should prioritize identifying and patching any such deployments, as exploitation could disrupt AI workloads and compromise data integrity.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.4%
Top 69% exploitable
Prevalence
Medium
very popular LLM inference library, but RPC/RDMA server mode is niche
Social Media
1
Sightings
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
CRITICAL severity
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
High

Priority Score

46
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +46
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.

CVE-2024-42479 CRITICAL POC
10.0 Aug 12

Arbitrary memory write in llama.cpp's RPC server allows remote unauthenticated attackers to corrupt arbitrary memory add

CVE-2024-21802 HIGH POC
8.8 Feb 26

Remote code execution in llama.cpp (commit 18c2e17) is possible when a user opens a malicious .gguf model file, triggeri

CVE-2026-21869 HIGH POC
8.8 Jan 08

Llama.cpp server endpoints fail to validate the n_discard parameter from JSON input, allowing negative values that trigg

CVE-2024-21825 HIGH POC
8.8 Feb 26

Remote code execution in llama.cpp (commit 18c2e17) is possible when a victim loads a malicious .gguf model file, trigge

CVE-2024-23605 HIGH POC
8.8 Feb 26

Remote code execution in llama.cpp (GGUF library) allows attackers to achieve arbitrary code execution by tricking a use

CVE-2024-23496 HIGH POC
8.8 Feb 26

Remote code execution in llama.cpp (commit 18c2e17) occurs when the GGUF library's gguf_fread_str function parses a mali

CVE-2024-21836 HIGH POC
8.8 Feb 26

Heap-based buffer overflow in llama.cpp's GGUF library header parser (commit 18c2e17) enables code execution when a vict

CVE-2025-52566 HIGH POC
8.6 Jun 24

CVE-2025-52566 is a signed vs. unsigned integer overflow vulnerability in llama.cpp's tokenizer (llama_vocab::tokenize f

CVE-2026-34159 CRITICAL
9.8 Apr 01

Remote code execution in llama.cpp RPC backend allows unauthenticated attackers with TCP access to achieve arbitrary mem

CVE-2024-42478 MEDIUM POC
5.3 Aug 12

llama.cpp provides LLM inference in C/C++. Rated medium severity (CVSS 5.3), this vulnerability is remotely exploitable,

CVE-2026-43629 CRITICAL
9.2 Aug 06

Heap buffer overflow in llama.cpp's server KV cache state-restore path (builds b4882 through b9058) lets an attacker who

CVE-2026-43631 CRITICAL
9.2 Aug 06

Remote code execution in llama.cpp's llama-server (builds b7492 through b9060) allows unauthenticated attackers to run a

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy