Skip to main content

X.Org X Server CVE-2026-93521

MEDIUM
2026-10-07
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Connect as authenticated X client
  2. Exploit
    Send crafted request triggering integer overflow
  3. Execution
    Undersized heap allocation overflowed
  4. Impact
    Execute code or crash X server

Vulnerability Assessment

Exploitation Conditions

Based on the glamor_transfer.c fix (linked article 2), exploitation appears to require an authenticated X client and a rendering path where a drawable with effective depth 24 is uploaded into a pixmap of depth 32, triggering byte_stride * height integer overflow and an undersized XNFalloc allocation in glamor_upload_boxes; glamor GL-based acceleration must be in use. LIMITING FACTORS: requires an already-authenticated local X client connection (not remote-unauthenticated by default), depends on the specific depth-mismatch upload path being reached, and requires glamor acceleration to be active. NOTE: because the per-CVE description for CVE-2026-93521 is absent from the truncated advisory, these conditions are inferred from the associated commit and should be verified against the vendor's per-CVE entry.

Impact

No CVSS vector, CWE, EPSS score, KEV entry, or public POC was provided in the input, so quantitative exploitation signals are entirely absent and cannot be compared. The risk must be inferred from the X.Org advisory text and commit diffs alone. CRITICAL DATA GAP: the supplied Description is the full multi-CVE X.Org advisory of 2026-10-07 but is truncated after CVE-2026-93520 - the specific text for CVE-2026-93521 is NOT present. Based on linked article 2 (the glamor/glamor_transfer.c commit, which adds an INT_MAX/byte_stride integer-overflow guard in glamor_upload_boxes), CVE-2026-93521 most plausibly corresponds to a glamor integer-overflow / heap out-of-bounds write in the GL upload path; this mapping is INFERRED, not confirmed. Across this advisory batch every issue requires an authenticated X client, which in default Linux desktop deployments means local session access rather than remote network reach, substantially lowering real-world risk versus a network-unauthenticated flaw. The upside for an attacker is memory corruption with potential arbitrary code execution in the X server (often running with elevated privileges), making this a credible local privilege-escalation / sandbox-escape primitive. Net: a genuine concern for multi-user and sandboxed Linux hosts, but not an internet-facing mass-exploitation threat, and no evidence of active exploitation exists in the provided data.

Exploit ScenarioDerived

A local user (or compromised low-privilege process) with an authenticated connection to the X server sends crafted X protocol requests that trigger an integer overflow in glamor's upload path (depth-24 drawable copied into a depth-32 pixmap), producing an undersized allocation and a subsequent heap out-of-bounds write that corrupts server memory. No public exploit code is identified; the flaw was reported privately by TrendAI/ZDI researchers. Because exploitation requires an existing authenticated X client (local access in default configurations), it is a privilege-escalation / DoS primitive rather than a remote entry point.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 07, 2026

An integer overflow in the glamor rendering upload path of the X.Org X server (and Xwayland) can produce an undersized heap allocation and subsequent out-of-bounds memory writes, and is one of the issues bundled into the October 2026 X.Org security advisory tracked as CVE-2026-93521. The affected code is in builds of X.Org X server prior to xorg-server-21.1.25 and Xwayland prior to xwayland-24.1.14; exploitation requires an authenticated local X client able to reach a depth-24 drawable uploaded into a depth-32 pixmap while glamor GL acceleration is active, with the byte_stride * height computation in glamor_upload_boxes overflowing before XNFalloc is called. No public exploit code, EPSS score, CWE assignment, or CISA KEV entry was present in the input, so there is no public exploit identified at time of analysis, and because the per-CVE description for CVE-2026-93521 is absent from the truncated advisory these conditions are inferred from the associated commit and should be verified against the vendor's per-CVE entry.

RemediationAI

Vendor-released patch: upgrade to xorg-server-21.1.25 for the X.Org X server and xwayland-24.1.14 for Xwayland, which the advisory identifies as the versions containing the fixes for CVE-2026-93521 and the other issues in the October 2026 batch; consult the oss-security advisory at https://seclists.org/oss-sec/2026/q4/82 and the upstream commits at https://gitlab.freedesktop.org/xorg/xserver/-/commit/1b6955c3108e, https://gitlab.freedesktop.org/xorg/xserver/-/commit/ad26c26bf795, and https://gitlab.freedesktop.org/xorg/xserver/-/commit/89101a6c6618 to confirm which commit corresponds to your distribution's backport. Where immediate upgrading is impossible, the highest-value compensating control for this specific defect is to disable glamor acceleration (for example setting Option "AccelMethod" "none" in the xorg.conf Device section, or launching Xwayland with its glamor-disabled option), which avoids the glamor_upload_boxes path entirely at the cost of substantially reduced 2D rendering performance and possible rendering regressions on some drivers; a broader but more disruptive measure is to remove the untrusted-client surface by restricting who may open an X connection (Xauthority-based access control, xhost restrictions, and disabling TCP listening), which reduces exposure to all the sibling CVEs in this advisory but breaks legitimate multi-user and remote-display workflows. Because the other flaws in the same advisory live in the Present, SYNC, XInput, XKB, XFIXES, and GLX extensions, environments that cannot patch can additionally disable the unused extensions via the DisableExtension directive to shrink the attack surface, accepting that applications relying on Present/SYNC compositing, XI2 device management, or GLX will stop functioning correctly. Note that no public exploit code, EPSS score, or KEV entry was provided in the input, so these compensating controls should be applied as precautionary hardening rather than as a response to confirmed active exploitation.

Affected ProductsAI

X.Org X server releases prior to xorg-server-21.1.25 and Xwayland releases prior to xwayland-24.1.14 are affected, as stated in the X.Org Security Advisory of October 07, 2026 posted to the oss-security list (https://seclists.org/oss-sec/2026/q4/82); the same two fixed versions cover the sibling issues CVE-2026-88812, CVE-2026-93515, CVE-2026-93516, CVE-2026-93517, CVE-2026-93518, CVE-2026-93519, and CVE-2026-93520. No CPE strings were supplied in the input, so affected distributions should be identified by package version rather than by CPE matching, and because the X server is commonly shipped as a distribution package (xorg-server, xwayland), downstream backport status must be checked separately from the upstream 21.1.25 / 24.1.14 tags. The relevant upstream fix references include https://gitlab.freedesktop.org/xorg/xserver/-/commit/1b6955c3108e, https://gitlab.freedesktop.org/xorg/xserver/-/commit/ad26c26bf795, and https://gitlab.freedesktop.org/xorg/xserver/-/commit/89101a6c6618, with the glamor upload change shown in the linked diff for glamor/glamor_transfer.c. Users of both the standalone Xorg server and Xwayland on Wayland desktops should treat both packages as in scope for this advisory.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The X.Org X server is the reference X11 display server, and Xwayland is its Wayland-hosted counterpart that services X11 clients inside a Wayland session. The code paths implicated here sit in the server's rendering acceleration layer: glamor provides OpenGL-based acceleration for 2D operations, and glamor_upload_boxes() transfers CPU-side pixel data into GL pixmaps. In the patched version, the function guards the depth-mismatch case where a drawable's effective depth is 24 but the destination pixmap depth is 32, allocating a temporary buffer sized from byte_stride multiplied by the derived tile height instead of the full pixmap height, and returns early when byte_stride is positive and tmp_height exceeds INT_MAX / byte_stride. That arithmetic check addresses an integer overflow that can wrap the allocation size, yielding a buffer smaller than the amount of data subsequently copied into it; the resulting class of defect is an integer-overflow-driven undersized allocation leading to a heap out-of-bounds write, functionally in the CWE-190/CWE-787 family even though no CWE was supplied in the input. The advisory grouping released alongside this CVE (CVE-2026-88812 through CVE-2026-93520) shows the same functional area under stress: XKB doodad double frees, Present cross-window notify use-after-frees, XInput passive-grab use-after-frees after XIRemoveMaster, GLX RenderLarge heap overflows, XKB numeric truncation and keycode-range overflows, and XFixes pointer-barrier buffer overflows, all reachable from an authenticated X client and all fixed in xorg-server-21.1.25 and xwayland-24.1.14. In this threat model the attacker is not an anonymous network peer but a local process holding a valid X client connection, and the practical value of the flaw lies in corrupting the server's heap, which can crash the session or, depending on heap layout, provide a foothold for code execution in the highly privileged X server process. The assessed vector CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H reflects local access, low complexity, and low privileges with high confidentiality, integrity, and availability impact, tempered by prerequisites: glamor acceleration must be active and the specific depth-mismatch upload path must be reached.

Know when Gitlab gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

vuln.today AI 7.8 HIGH

Requires an authenticated local X client connection so AV:L and PR:L; a heap out-of-bounds write enabling potential code execution in the X server yields high C/I/A.

3.1 AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Description PRE-NVD

Disclosed via oss-security. NVD scoring and full description are pending.

Executive ViewAI

Why It Matters

A critical memory-corruption flaw in X.Org X server and Xwayland (CVE-2026-93521) can allow a local user with access to the X display to gain elevated privileges. No public exploit identified at time of analysis, but because the X server often runs with high privileges, successful exploitation could lead to full system compromise on affected Linux and Unix workstations and servers. Security leadership should prioritize mitigation and patch planning for all systems running affected X.Org X server before 21.1.25 or Xwayland before 24.1.14.

Business Impact: High
Compensating Controls

Disable glamor GL acceleration or force software rendering, restrict X server access to trusted local users, and monitor vendor advisories for patches.

Threat Intelligence Overview

Prevalence
Ubiquitous
X.Org X server and Xwayland underpin most Linux graphical desktops
Data Quality
1 sources
Confidence: Low

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS N/A
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

More in Gitlab

View all
CVE-2021-22205 CRITICAL POC
10.0 Apr 23

An issue has been discovered in GitLab CE/EE affecting all versions starting from 11.9. Rated critical severity (CVSS 10

CVE-2023-7028 CRITICAL POC
10.0 Jan 12

An issue has been discovered in GitLab CE/EE affecting all versions from 16.1 prior to 16.1.6, 16.2 prior to 16.2.9, 16.

CVE-2021-22175 CRITICAL POC
9.8 Jun 11

When requests to the internal network for webhooks are enabled, a server-side request forgery vulnerability in GitLab af

CVE-2026-85706 CRITICAL POC
10.0 Sep 12

Unauthenticated arbitrary file read in GitLab CE/EE lets remote attackers retrieve files from the GitLab server via the

CVE-2013-4490 MEDIUM POC
6.5 May 13

The SSH key upload feature (lib/gitlab_keys.rb) in gitlab-shell before 1.7.3, as used in GitLab 5.0 before 5.4.1 and 6.x

CVE-2022-2992 CRITICAL POC
9.9 Oct 17

A vulnerability in GitLab CE/EE affecting all versions from 11.10 prior to 15.1.6, 15.2 to 15.2.4, 15.3 to 15.3.2 allows

CVE-2026-97229 CRITICAL POC
10.0 Oct 13

Remote code execution in GitLab CE/EE (all versions from 19.2 before 19.2.8, 19.3 before 19.3.5, and 19.4 before 19.4.2)

CVE-2026-87719 CRITICAL POC
9.9 Sep 12

Sensitive credential and configuration disclosure in GitLab Enterprise Edition allows an authenticated user with Duo Cha

CVE-2018-18843 CRITICAL POC
10.0 Dec 04

The Kubernetes integration in GitLab Enterprise Edition 11.x before 11.2.8, 11.3.x before 11.3.9, and 11.4.x before 11.4

CVE-2026-93577 CRITICAL POC
9.9 Sep 23

Authenticated code execution on the GitLab server is possible in GitLab CE/EE 19.2 through 19.4.0, where an integer over

CVE-2026-89078 CRITICAL POC
9.9 Sep 23

Authenticated users who can define or modify a CI/CD configuration can achieve remote code execution on GitLab CE/EE ser

CVE-2026-61560 CRITICAL POC
9.8 Sep 15

Unauthenticated path traversal in the @zereight/mcp-gitlab Model Context Protocol server prior to version 2.1.27 allows

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy