CVE Catalog

CVE-2026-91189

HighCVSS 7.1
Published: Updated: Translated: NVD NIST

Summary

The GUIX binary resource loader does not validate that a font page's glyph range is well formed. A page declaring first_glyph > last_glyph causes an unsigned underflow, and an unchecked multiplication leads to allocating a buffer far smaller than the data written into it, resulting in a heap overflow with attacker-controlled glyph records.

Risk Assessment

A crafted font file can trigger a heap buffer overflow and potentially lead to arbitrary code execution in the context of the application processing the font.

Recommendation

Upgrade GUIX to a version containing the glyph range validation fix. Until then, avoid processing untrusted font files.

Other vulnerabilities in GUIX

See all
Original NVD description (English source)

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 validated, so a page declaring `first_glyph > last_glyph` makes `last - first + 1` underflow to a very large unsigned count. That 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.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS