GNU coreutils uniq is vulnerable to an out‑of‑bounds read due to incorrect handling of multibyte input when the -w (--check-chars) option is used. The find_field() function miscalculates the byte length of characters by repeatedly processing a fixed pointer instead of advancing through the input, resulting in an inflated length value.
This incorrect length is later used in a memcmp operation, causing reads beyond the allocated buffer when processing crafted multibyte input.
When running GNU coreutils uniq with attacker-provided arguments, this behavior leads to a crash and potential adjacent heap memory exposure.
This issue has been fixed in the commit d64e35a8a4c0e4608321433e0d84d917e4e36371.
{
"sources": [
{
"database_specific": {
"status": "Received"
},
"url": "https://services.nvd.nist.gov/rest/json/cves/2.0?cveId=CVE-2026-56391",
"imported": "2026-07-27T06:18:45.521Z",
"id": "CVE-2026-56391",
"published": "2026-07-24T09:16:25.003Z",
"modified": "2026-07-24T13:18:27.743Z",
"html_url": "https://nvd.nist.gov/vuln/detail/CVE-2026-56391"
},
{
"url": "https://api.github.com/advisories/GHSA-7xvj-m9x7-qgxq",
"imported": "2026-07-27T06:18:45.409Z",
"published": "2026-07-24T09:32:16Z",
"html_url": "https://github.com/advisories/GHSA-7xvj-m9x7-qgxq",
"modified": "2026-07-24T09:32:27Z",
"id": "GHSA-7xvj-m9x7-qgxq"
},
{
"url": "https://euvdservices.enisa.europa.eu/api/enisaid?id=EUVD-2026-48524",
"imported": "2026-07-27T06:18:45.241Z",
"id": "EUVD-2026-48524",
"published": "2026-07-24T07:44:45Z",
"modified": "2026-07-24T12:31:34Z",
"html_url": "https://euvd.enisa.europa.eu/vulnerability/EUVD-2026-48524"
}
],
"license": "CC-BY-4.0"
}