Description
llama.cpp builds b3978 through b9058 contain an integer underflow and out-of-bounds read vulnerability in the DRY sampler that allows unauthenticated attackers to trigger a heap buffer underflow by sending a crafted HTTP request with dry_allowed_length set to INT32_MIN to the /v1/completions or /v1/chat/completions endpoints. Attackers can exploit this vulnerability to crash the server with SIGSEGV causing denial of service for all connected users, or corrupt token sampling probabilities by reading garbage values from memory before the allocated buffer.
Published: 2026-08-06
Score: 8.5 High
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability arises from an integer underflow in the DRY sampler between revisions b3978 and b9058 of llama.cpp, causing an out‑of‑bounds read when the dry_allowed_length parameter is set to INT32_MIN. This integer underflow (CWE‑191) and subsequent out‑of‑bounds read (CWE‑125) can be triggered by an unauthenticated attacker by sending a specially crafted request to the /v1/completions or /v1/chat/completions endpoints. Successful exploitation can crash the server with a SIGSEGV, thereby denying service to all connected users, or can read garbage memory and corrupt token sampling probabilities.

Affected Systems

Products affected are ggml-org:llama.cpp revisions b3978 through b9058. The flaw resides in the DRY sampler logic handling HTTP requests to the completion endpoints. No other versions or related components are listed as vulnerable.

Risk and Exploitability

The CVSS score of 8.5 indicates a high severity. The EPSS score is not available, and the vulnerability is not listed in the CISA KEV catalog. Attackers require only the ability to send an HTTP request to the vulnerable endpoints; authentication is not needed. Consequently, the risk of exploitation is realistic but depends on network exposure and the likelihood of a crafted request reaching the target.

Generated by OpenCVE AI on August 7, 2026 at 02:06 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Configure the server to reject or limit dry_allowed_length values below zero, preventing the integer underflow condition
  • Restart the server after applying the patch to ensure the issue is fully resolved
  • Apply any official patch from ggml-org or update to a non‑vulnerable revision of llama.cpp as soon as it becomes available.

Generated by OpenCVE AI on August 7, 2026 at 02:06 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 07 Aug 2026 02:15:00 +0000

Type Values Removed Values Added
First Time appeared Ggml-org
Ggml-org llama.cpp
Vendors & Products Ggml-org
Ggml-org llama.cpp

Thu, 06 Aug 2026 22:15:00 +0000

Type Values Removed Values Added
Description llama.cpp builds b3978 through b9058 contain an integer underflow and out-of-bounds read vulnerability in the DRY sampler that allows unauthenticated attackers to trigger a heap buffer underflow by sending a crafted HTTP request with dry_allowed_length set to INT32_MIN to the /v1/completions or /v1/chat/completions endpoints. Attackers can exploit this vulnerability to crash the server with SIGSEGV causing denial of service for all connected users, or corrupt token sampling probabilities by reading garbage values from memory before the allocated buffer.
Title llama.cpp b3978–b9058 Integer Underflow via DRY Sampler
Weaknesses CWE-125
CWE-191
References
Metrics cvssV3_1

{'score': 7.8, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H'}

cvssV4_0

{'score': 8.5, 'vector': 'CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'}


Subscriptions

Ggml-org Llama.cpp
cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-08-06T15:45:52.293Z

Reserved: 2026-05-01T18:22:45.641Z

Link: CVE-2026-43628

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-07T02:15:04Z

Weaknesses
  • CWE-125

    Out-of-bounds Read

  • CWE-191

    Integer Underflow (Wrap or Wraparound)