CVE-2026-88812

Public on 2026-10-09
Modified on 2026-10-09
Description
CheckSetDoodad() in xkb/xkb.c frees doodad->text.text on error but does
not NULL the pointer. When the error path continues, _XkbClearDoodad() is
called during cleanup and frees the same pointer again, resulting in a
double free.
An authenticated X client can trigger this by sending a crafted XkbSetGeometry request with a malformed TextDoodad entry that causes the initial error path to be taken.

The double free can lead to heap corruption, potentially enabling arbitrary code execution or denial of service (crash).

NOTE: https://lists.x.org/archives/xorg-announce/2026-October/003747.html
NOTE: Fixed by: https://gitlab.freedesktop.org/xorg/xserver/-/commit/c724006ee76fb002add50fcb4d97e8c96c279f09 (xorg-server-21.1.25)
Severity
Important severity
Important
See what this means
CVSS v3 Base Score
7.8
See breakdown

Affected Packages

Platform Package Release Date Advisory Status
Amazon Linux 2 - Core tigervnc Pending Fix
Amazon Linux 2023 tigervnc Pending Fix
Amazon Linux 2 - Core wayland Not Affected
Amazon Linux 2023 wayland Not Affected
Amazon Linux 2027 Preview wayland Not Affected
Amazon Linux 2023 xisxwayland Not Affected
Amazon Linux 2027 Preview xisxwayland Not Affected
Amazon Linux 2 - Core xorg-x11-server Pending Fix
Amazon Linux 2023 xorg-x11-server Pending Fix
Amazon Linux 2023 xorg-x11-server-Xwayland Pending Fix
Amazon Linux 2027 Preview xorg-x11-server-Xwayland Pending Fix
Amazon Linux 2027 Preview xwayland-run Not Affected

CVSS Scores

Score Type Score Vector
Amazon Linux CVSSv3 7.8 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H