{"id":"CVE-2026-91189","title":"GUIX binary resource loader: unvalidated glyph range causes an integer underflow and a heap out-of-bounds write when loading an untrusted font or theme","summary":"The GUIX binary resource loader never checks that a font page's glyph range is well formed. `gx_page_header_first_glyph` and `gx_page_header_last_glyph` are read verbatim from the file and only the upper bound of `last_glyph` is validate…","severity":"high","cvss":7.1,"cvssVector":"CVSS:4.0/AV:L/AC:H/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","cvssSource":"cna","cwe":["CWE-190","CWE-680","CWE-787"],"vendor":"Eclipse Foundation","product":"GUIX","affected":["GUIX <= 6.5.1.202602a"],"ssvc":{"exploitation":"none","automatable":"no","technicalImpact":"total","timestamp":"2026-10-20T15:24:56.279111Z"},"published":"2026-10-20","updated":"2026-10-20","sourceUpdated":"2026-10-20T15:25:24.066Z","source":"CVEORG","sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-91189","references":[{"url":"https://github.com/eclipse-threadx/guix/security/advisories/GHSA-hgcj-22cg-4hfv"}],"tags":["cve.org"],"ingestedAt":"2026-10-20T15:09:24.113Z","slug":"CVE-2026-91189","body":"## Overview\n\nThe GUIX binary resource loader never checks that a font page's glyph range is well formed. `gx_page_header_first_glyph` and `gx_page_header_last_glyph` are read verbatim from the file and only the upper bound of `last_glyph` is validated, so a page declaring `first_glyph > last_glyph` makes `last - first + 1` underflow to a very large unsigned count.\n\n\n\nThat count is multiplied by a glyph record size to reserve the load buffer, and the multiply is unchecked, so it wraps to a small value and the loader allocates a buffer far smaller than the data it is about to write. The load pass then recomputes the count in a narrower type and writes attacker-controlled glyph records into the undersized buffer.\n\n## Affected\n\n- `GUIX <= 6.5.1.202602a`\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.","depth":"twilight","depthScore":39,"depthScoreParts":{"impact":39.1,"likelihood":0,"exploitation":0,"ransomware":0},"changes":[]}