---
id: CVE-2026-43628
title: >-
  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…
summary: >-
  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…
severity: high
cvss: 7.8
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H'
cwe:
  - CWE-125
  - CWE-191
vendor: ggml
product: llama.cpp
affected:
  - 'llama.cpp >= b3978, <= b9058'
published: '2026-08-06'
updated: '2026-09-21'
sourceUpdated: '2026-09-21T18:11:56.093'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-43628'
references:
  - url: 'https://github.com/Vladimir-tokarev-cyera/llama-cpp-security-patches'
    label: disclosure@vulncheck.com
  - url: >-
      https://www.vulncheck.com/advisories/llama-cpp-b3978-b9058-integer-underflow-via-dry-sampler
    label: disclosure@vulncheck.com
tags:
  - nvd
epss: 0.00219
epssPercentile: 0.12609
ingestedAt: '2026-09-21T18:50:57.543Z'
---

## Overview

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.

## Affected

- `llama.cpp >= b3978, <= b9058`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
