A stack-based buffer overflow flaw was found in the X.Org X server and Xwayland. The X server has multiple stack buffers sized XkbMaxShiftLevel * XkbNumKbdGroups but CheckKeyTypes() does not verify or clamp non-canonical key types to XkbMaxShiftLevel. A client can change key types to excessive shift levels and trigger stack overflows. This is caused by an incomplete fix of CVE-2025-26597. This may be used to crash the server, or for privilege escalation if the X server runs as root.
A stack-based buffer overflow condition is a condition where the buffer being overwritten is allocated on the stack (i.e., is a local variable or, rarely, a parameter to a function).
| Name | Vendor | Start Version | End Version |
|---|---|---|---|
| X_server | X.org | * | 21.1.23 (excluding) |
| Xwayland | X.org | * | 24.1.12 (excluding) |
| Enterprise_linux | Redhat | 7.0 (including) | 7.0 (including) |
| Enterprise_linux | Redhat | 8.0 (including) | 8.0 (including) |
| Enterprise_linux | Redhat | 9.0 (including) | 9.0 (including) |
| Enterprise_linux | Redhat | 10.0 (including) | 10.0 (including) |
| Red Hat Enterprise Linux 10 | RedHat | xorg-x11-server-Xwayland-0:24.1.9-4.el10_2.2 | * |
| Red Hat Enterprise Linux 8 | RedHat | xorg-x11-server-Xwayland-0:21.1.3-20.el8_10.2 | * |
| Red Hat Enterprise Linux 8 | RedHat | xorg-x11-server-0:1.20.11-28.el8_10.2 | * |
| Red Hat Enterprise Linux 8 | RedHat | tigervnc-0:1.15.0-10.el8_10 | * |
| Red Hat Enterprise Linux 9 | RedHat | xorg-x11-server-Xwayland-0:24.1.9-4.el9_8.2 | * |
| Red Hat Enterprise Linux 9 | RedHat | xorg-x11-server-0:1.20.11-34.el9_8.2 | * |
| Red Hat Enterprise Linux 9 | RedHat | tigervnc-0:1.15.0-7.el9_8.2 | * |
| Xwayland | Ubuntu | upstream | * |