X.Org Server紧急安全更新:1... - 撒糖互动
据GamingOnLinux于2026年10月7日报道,X.Org项目正式发布了xorg-server 21.1.25和xwayland 24.1.14两个紧急安全更新版本,以修复由TrendAI零日计划(ZDI)报告的多达12个安全漏洞。这些漏洞涵盖了双重释放、释放后使用、堆缓冲区溢出以及越界读写等严重内存安全问题,攻击者一旦利用即可在目标系统上执行任意代码或引发拒绝服务。Linux发行版维护者已开始打包推送,用户需尽快升级系统组件。
传说皮肤漏洞全景:12个CVE逐一梳理
本次修复涉及12个独立CVE编号,漏洞类型高度集中于内存操作缺陷,影响范围从X核心协议到扩展模块。以下表格汇总了每个漏洞的关键信息:
史诗皮肤| CVE编号 | 漏洞类型 | 影响组件 | 利用后果 |
|---|
| --- | --- | --- | --- |
|---|
| CVE-2026-88812 | 双重释放(Double Free) | XKB SetGeometry TextDoodad | 堆破坏,可导致代码执行或崩溃 |
|---|
| CVE-2026-93515 | 释放后使用(Use-After-Free) | Present扩展跨窗口通知 | 崩溃或信息泄露 |
|---|
| CVE-2026-93516 | 释放后使用 | XInput被动抓取修饰设备 | 代码执行或崩溃 |
|---|
| CVE-2026-93517 | 堆缓冲区溢出 | GLX RenderLarge | 代码执行或崩溃 |
|---|
| CVE-2026-93518 | 数值截断(Numeric Truncation) | XKB ResizeKeyType | 堆溢出,可导致代码执行 |
|---|
| CVE-2026-93519 | 缓冲区溢出 | XFixes指针屏障事件 | 代码执行或崩溃 |
|---|
| CVE-2026-93520 | 堆越界写入 | XKB ChangeKeycodeRange | 代码执行或崩溃 |
|---|
| CVE-2026-93521 | 堆缓冲区溢出 | RandR ChangeProviderProperty | 代码执行或崩溃 |
|---|
| CVE-2026-93522 | 堆缓冲区溢出 | Glamor CopyArea(仅XWayland) | 代码执行或崩溃 |
|---|
| CVE-2026-93523 | 越界写入 | XInput2 PassiveUngrabDevice | 代码执行或崩溃 |
|---|
| CVE-2026-93524 | 越界读取(信息泄露) | XKB SetMap键宽度/动作数不同步 | 堆信息泄露 |
|---|
| CVE-2026-93536 | 释放后使用 | GestureBuildSprite | 信息泄露 |
|---|

其中CVE-2026-93522仅影响XWayland,其余漏洞同时修复于xorg-server和xwayland。所有漏洞均被ZDI标记为高危或严重级别。
皮肤抽奖双重释放与释放后使用:内存管理的典型失误
CVE-2026-88812(Double Free)出现在XKB SetGeometry的TextDoodad处理中。`_CheckSetDoodad()`在错误路径释放了`doodad->text.text`指针后未将其置空,导致后续清理时`_XkbClearDoodad()`再次释放同一内存。匿名研究人员(与ZDI合作)发现,只需发送一个精心构造的XkbSetGeometry请求即可触发。X.Org维护者在修复提交(0d1b1b0bad86)中补充了指针置零操作。
枪械配件CVE-2026-93515(Use-After-Free)则源于`present_clear_window_notifies()`未在释放窗口私有数据前断开通知链表的链接。当窗口被销毁后,残存的链表项被遍历,产生悬空指针。研究人员指出,攻击者只需启用Present和SYNC扩展(默认开启)即可复现。该漏洞可能导致内存内容泄露,甚至被用于绕过ASLR。

堆缓冲区溢出:GLX与Glamor的边界检查缺失
CVE-2026-93517(GLX RenderLarge堆溢出)是最危险的漏洞之一。在GLX RenderLarge请求处理中,缓冲区按`cmdlen`分配,但后续`memcpy`使用了更大的`dataBytes`值,且未做任何校验。研究人员通过发送一个`dataBytes`超过`cmdlen`的恶意请求,即可造成越界写入。修复补丁(2abe4632d793)加入了边界检查。
CVE-2026-93522(Glamor CopyArea堆溢出)虽只影响XWayland,但同样不容忽视。在GPU加速路径中,临时缓冲区按目标高度分配,却使用源坐标进行索引。当源区域高于目标区域时,写入直接溢出。4nibhal发现该漏洞后,项目维护者在ad26c26bf795中修复了索引逻辑。
零日漏洞的发现与趋势AI ZDI的作用
本次修复的所有12个漏洞中,有11个由匿名研究人员通过TrendAI零日计划(ZDI-CAN编号31221、31830、31832、31833、31834、31938、31941、31944、32361、32366、32753)报告,CVE-2026-93524则由WONJOON HWANG(@joon1337)独立发现并上报。ZDI作为全球领先的漏洞收购平台,持续为X.Org等关键开源项目提供安全审计。WONJOON HWANG警告说:“CVE-2026-93524允许攻击者通过XKB SetMap请求造成堆信息泄露,被读取的4字节可能包含敏感内存内容。” 4nibhal也在报告中指出:“CVE-2026-93536中手势精灵的释放后使用问题,使得已销毁窗口的指针被后续事件引用,为信息泄露打开了通道。”

影响评估:几乎所有Linux发行版均受波及
由于X.Org和XWayland是Linux图形栈的基石组件,本次漏洞影响所有运行X11会话的桌面环境(包括GNOME、KDE、XFCE等),以及通过XWayland兼容层运行的Wayland系统。据Phoronix等多家技术媒体确认,Ubuntu、Fedora、Debian、Arch Linux等主流发行版均已收到安全通告并开始推送补丁。截至2026年10月8日,部分发行版的稳定仓库已更新至xorg-server 21.1.25和xwayland 24.1.14。特别需要注意的是,CVE-2026-93522仅影响XWayland,这意味着使用Wayland环境但依赖XWayland运行旧应用的用户同样需要升级。
如何更新与验证
用户应通过系统包管理器更新xorg-server和xwayland软件包。以Debian/Ubuntu为例:`sudo apt update && sudo apt upgrade xserver-xorg-core xwayland`。Fedora用户则执行`sudo dnf upgrade xorg-x11-server-Xorg xorg-x11-server-Xwayland`。更新完成后,可运行`X -version`或`xwayland -version`检查版本号是否不低于21.1.25和24.1.14。Arch Linux用户可使用`pacman -Q xorg-server xwayland`确认。由于部分漏洞可被本地认证用户触发,多用户系统或公共终端环境应优先处理。
常见问题解答
Q1: 哪些Linux发行版需要更新?
A1: 所有使用X.Org Server或XWayland的发行版均受影响,包括但不限于Ubuntu、Debian、Fedora、CentOS、RHEL、Arch Linux、openSUSE、Gentoo等。请立即检查系统更新并安装最新版本。
Q2: 如何确认当前系统是否已修复?
A2: 运行`X -version`查看X.Org版本,若低于21.1.25则仍需更新;运行`xwayland -version`查看XWayland版本,应不低于24.1.14。也可使用发行版包管理器查询已安装版本:`apt policy xserver-xorg-core`(Debian/Ubuntu)或`rpm -q xorg-x11-server-Xorg`(Fedora)。
结语:持续的安全挑战与开源协作
X.Org项目在2026年内已多次发布安全更新,反映出这一历史悠久的图形协议栈在内存安全方面的持续压力。本次批量修复12个漏洞,既展示了零日计划(ZDI)与开源社区协同防御的成效,也提醒用户和运维人员务必重视X.Org Server安全更新。随着Linux桌面生态向Wayland迁移,XWayland作为兼容层同样需要长期维护。建议所有用户立即升级至xorg-server 21.1.25和xwayland 24.1.14,避免潜在的攻击风险。

回应传闻
X.Org与XWayland发布21.1.25和24.1.14版本,修复12个高危漏洞,包括双重释放、堆溢出等。TrendAI ZDI报告,影响所有Linux发行版。立即更新防止代码执行与信息泄露。