---
id: CVE-2026-56392
title: >-
  GNU coreutils unexpand is vulnerable to a heap-based buffer overflow due to an
  integer overflow during buffer allocation when processing large tab stop (-t)
  values
summary: >-
  GNU coreutils unexpand is vulnerable to a heap-based buffer overflow due to an
  integer overflow during buffer allocation when processing large tab stop (-t)
  values. The multiplication used to calculate the allocation size can wrap
  around…
severity: medium
cvss: 6.1
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:H'
cwe:
  - CWE-122
vendor: gnu
product: coreutils
affected:
  - coreutils = 9.11
published: '2026-07-24'
updated: '2026-10-02'
sourceUpdated: '2026-10-02T13:57:53.010'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-56392'
references:
  - url: 'https://cert.pl/en/posts/2026/07/CVE-2026-56391'
    label: cvd@cert.pl
  - url: 'https://git.savannah.gnu.org/cgit/coreutils.git/'
    label: cvd@cert.pl
  - url: >-
      https://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=b60a159fdc5bfcf9988d3a4cb6f53abe8ad5d35d
    label: cvd@cert.pl
tags:
  - nvd
epss: 0.00186
epssPercentile: 0.07407
ingestedAt: '2026-10-02T14:20:32.554Z'
---

## Overview

GNU coreutils unexpand is vulnerable to a heap-based buffer overflow due to an integer overflow during buffer allocation when processing large tab stop (-t) values. The multiplication used to calculate the allocation size can wrap around, resulting in an undersized buffer.
When processing crafted input, subsequent writes exceed the allocated memory, leading to an out‑of‑bounds heap write.

When running GNU coreutils unexpand with attacker-provided large tab stop (-t) arguments, this behavior leads to a crash and potentially achieve a heap write primitive depending on memory layout.










This issue has been fixed in the commit b60a159fdc5bfcf9988d3a4cb6f53abe8ad5d35d

## Affected

- `coreutils = 9.11`

## Remediation

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