Buffer overflow in Libxfont

CVE-2026-44950

fs_read_glyphs() in the libXfont2 font-server client (src/fc/fserve.c) copies each glyph's bitmap into a single buffer. Existing checks validates only that the source slice (position, length) lies within the source bitmap buffer. It does not check whether the running destination cursor has exceeded the allocation. A malicious font server can send overlapping source offsets -- for example 1000 glyphs each referencing {position:0, length:64} with nbytes=64. Each individual source range passes the existing validation, but the cumulative writes total 64000 bytes into a 64-byte destination buffer. This is a heap buffer overflow with attacker-controlled content.

Vulnerability class: Buffer Overflow

Published · last modified .

CVSS v3 metric

CVSS v3 base score 9.0 (Critical). Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H.

EPSS exploit prediction

EPSS: 0.003 (17.9th percentile), scored .

Very low probability of exploitation in the next 30 days; routine patching cadence is appropriate. 18th percentile — 17.9% of CVEs in the catalogue have a lower EPSS than this one. How to read EPSS.

EPSS trend (30 days)EPSS over the last 30 days for CVE-2026-44950: held from 0.004 to 0.003.

EPSS over last 30 days · oldest: 0.004 · newest: 0.003 · change: -0.002

Affected products

Weakness classification (CWE)

References

Frequently asked questions

What is CVE-2026-44950?
CVE-2026-44950 is a critical-severity vulnerability in Libxfont, classified under Heap-based Buffer Overflow. CVSS score: 9.0/10. Published 2026-09-10.
How severe is CVE-2026-44950?
Critical severity. CVSS v3 base score is 9.0 out of 10.