目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1359 元

100%

CVE-2026-98507— Linux 内核匿名 VMA 初始化竞态条件漏洞

一分钟漏洞结论

影响对象
Linux Linux
利用判断
尚无明确在野利用证据,仍需结合暴露面评估
建议动作
优先检查厂商安全公告和参考链接中的修复版本;无法立即升级时,限制受影响服务暴露并加强监测。

在 Linux 内核中,以下漏洞已被修复: mm/rmap:修复 anon_vma 初始化与 vma->anon_vma 发布之间缺失的内存屏障 在 ARM64 服务器上,我们发现某个任务在尝试获取 锁时触发了 hungtask(任务挂起)错误。 通过对 vmcore(内存转储文件)的分析,我们发现 的值为 -1。同时存在另一个 ,其 为 1,且 显示该锁已被持有,但该任务的调用栈却表明它并未持有该 锁。 在增加更多调试信息后,我们发现 函数复用了 结构体,由于缺失内存屏障,导致 出现释放后使用(UAF, Use-

CVSS 7.8 · High EPSS 0.16% · P6

影响版本矩阵 12

厂商产品 版本范围状态
Linux Linux 5c341ee1dfc8fe69d66b1c8b19e463c6d7201ae1< 465e222815c8839445d09028fa4c77e70f7f1c7d affected
5c341ee1dfc8fe69d66b1c8b19e463c6d7201ae1< a500df43cde075f6ea4b8bae495d89f2c35b3e16 affected
5c341ee1dfc8fe69d66b1c8b19e463c6d7201ae1< 4cef512a955e4008ae4436a4fc97726976df1fdf affected
5c341ee1dfc8fe69d66b1c8b19e463c6d7201ae1< d348a715380bfcc6a611bdf722169d53fd01e735 affected
5c341ee1dfc8fe69d66b1c8b19e463c6d7201ae1< b6ac0b3f6013c168f22cad97e79967accacb08e1 affected
2.6.36 affected
< 2.6.36 unaffected
6.6.160≤ 6.6.* unaffected
… +4 条更多
获取后续新漏洞提醒 登录后订阅

一、 漏洞 CVE-2026-98507 基础信息

漏洞信息

对漏洞内容有疑问?看看神龙的深度分析是否有帮助!
查看神龙十问 ↗

尽管我们使用了先进的大模型技术,但其输出仍可能包含不准确或过时的信息。神龙努力确保数据的准确性,但请您根据实际情况进行核实和判断。

Vulnerability Title
mm/rmap: fix missing barrier between anon_vma init and vma->anon_vma publish
来源: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: mm/rmap: fix missing barrier between anon_vma init and vma->anon_vma publish On arm64 server, we find that a task trying to grab the anon_vma lock triggers hungtask. INFO: task main:2354726 blocked for more than 120 seconds. Tainted: G E 5.10.0-0021.aarch64 #1 "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. task:main state:D stack: 0 pid:2354726 ppid:2350673 flags:0x00000a01 Call trace: __switch_to+0x7c/0xbc __schedule+0x3b4/0x8a0 schedule+0x50/0xe0 rwsem_down_write_slowpath+0x3cc/0x6cc down_write+0x60/0x260 __anon_vma_prepare+0x6c/0x210 do_anonymous_page+0x258/0x660 handle_pte_fault+0x188/0x214 __handle_mm_fault+0x1b0/0x380 handle_mm_fault+0xf4/0x284 do_page_fault+0x19c/0x494 do_translation_fault+0xcc/0xf8 do_mem_abort+0x48/0xac el0_da+0x44/0x80 el0_sync_handler+0x88/0xb4 el0_sync+0x160/0x180 After analyzing the vmcore, we found the anon_vma->root->rwsem.count is -1. There is another anon_vma whose anon_vma->root->rwsem.count is 1, the anon_vma->root->rwsem.owner shows the lock is held, but the stack of the task shows the task doesn't hold the anon_vma lock. After adding more debugging info, we found __anon_vma_prepare() reuses anon_vma and triggers the UAF of anon_vma->root due to missing memory barrier, leading to locking and unlocking two different anon_vma->root, thus leading to an anon_vma will never be unlocked, and another anon_vma couldn't be locked anymore. This race requires two adjacent VMAs that are not merged but are anon_vma-compatible (e.g., they differ in VMA_ACCESS_FLAGS that can be changed by mprotect()). Two threads fault on each VMA concurrently, both calling __anon_vma_prepare() with only mmap_lock held for reading. THREAD A THREAD B __anon_vma_prepare __anon_vma_prepare find_mergeable_anon_vma() -> NULL anon_vma = anon_vma_alloc(); anon_vma->root = anon_vma; // the two stores may be reordered vma->anon_vma = anon_vma; // finds A's anon_vma anon_vma = find_mergeable_anon_vma(vma); anon_vma_lock_write(anon_vma); // may still see the old root down_write(&anon_vma->root->rwsem); anon_vma_unlock_write(anon_vma); // see the new root, never unlock old up_write(&anon_vma->root->rwsem); thread A triggers page fault and calls __anon_vma_prepare() to prepare anon_vma for the faulting vma. __anon_vma_prepare() allocates and initializes a new anon_vma, and then publishes it to the vma with a plain store. anon_vma_prepare() only requires the mmap_lock to be held for reading, so two threads can fault on adjacent VMAs at the same time. While thread A publishes a new anon_vma, thread B could find the anon_vma via find_mergeable_anon_vma() and then locks anon_vma->root->rwsem. The store to anon_vma->root in anon_vma_alloc() and the store to vma->anon_vma can be reordered. The anon_vma_lock_write() and spin_lock() only provide acquire semantics, which do not prevent prior stores from being reordered after them. The release semantics of the corresponding spin_unlock() and anon_vma_unlock_write() come too late, the store to vma->anon_vma is already published before they take effect. As a result, thread B can observe the following order: vma->anon_vma = anon_vma; anon_vma->root = anon_vma; The anon_vma slab is SLAB_TYPESAFE_BY_RCU, so a newly allocated anon_vma may reuse memory from a previously freed one. The constructor (anon_vma_ctor) does not reset anon_vma->root, and __put_anon_vma() doesn't clear it either, so the old root value persists until anon_vma_alloc() overwrites it. If that store isn't v ---truncated---
来源: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
来源: CVE Program / CVE List V5
Vulnerability Type
N/A
来源: CVE Program / CVE List V5

受影响产品

厂商 产品 影响版本 CPE 订阅
Linux Linux 5c341ee1dfc8fe69d66b1c8b19e463c6d7201ae1 ~ 465e222815c8839445d09028fa4c77e70f7f1c7d -
Linux Linux 2.6.36 -

二、漏洞 CVE-2026-98507 的公开POC

# POC 描述 源链接 神龙链接
AI 生成 POC 高级

未找到公开 POC。

登录以生成 AI POC

三、漏洞 CVE-2026-98507 的情报信息

请登录查看更多情报信息。

CVE-2026-98507 补丁与修复 (4)

同批安全公告 · Linux · 2026-10-18 · 共 435 条

CVE-2026-98548 9.8 CRITICAL Linux SCTP 协议 旧 Cookie 错误 数据包丢弃漏洞
CVE-2026-98490 9.8 CRITICAL Open vSwitch conntrack 模块 辅助函数释放后使用漏洞
CVE-2026-98464 9.3 CRITICAL Linux RISC-V KVM 定时器回调竞态条件漏洞
CVE-2026-98549 9.1 CRITICAL Linux TCP 重传队列边界合并漏洞
CVE-2026-98451 8.8 HIGH Samba SMB 客户端非普通文件句柄处理漏洞
CVE-2026-98466 8.2 HIGH KVM arm64 版本 hyp 栈页面越界访问漏洞
CVE-2026-98532 8.1 HIGH Linux IPv6 协议栈越界读取漏洞
CVE-2026-98454 8.1 HIGH SMB 客户端创建上下文越界读取漏洞
CVE-2026-98499 8.1 HIGH HID wacom 驱动越界读取漏洞
CVE-2026-98443 7.8 HIGH XFS 修复恢复 iunlink 桶时的游标和指针处理漏洞
CVE-2026-98436 7.8 HIGH AMD XDNA 设备缓冲区导出禁用漏洞
CVE-2026-98510 7.8 HIGH Intel Xe DRM 竞态条件漏洞
CVE-2026-98515 7.8 HIGH Nouveau 驱动双重释放漏洞
CVE-2026-98442 7.8 HIGH Linux 内核 act_ct 扩展重分配导致 UAF 漏洞
CVE-2026-98524 7.8 HIGH RDS IB 映射 MR 失败时 SG 列表未清零漏洞
CVE-2026-98487 7.8 HIGH Linux 网桥 MDB 远程拒绝服务漏洞
CVE-2026-98520 7.8 HIGH Linux 内核 drm/amdkfd 释放后使用漏洞
CVE-2026-98441 7.8 HIGH Linux Kernel 网络调度器竞态条件漏洞
CVE-2026-98517 7.8 HIGH Linux 内核 nouveau 驱动 UAF 漏洞
CVE-2026-98491 7.8 HIGH Open vSwitch 连接跟踪数据项修改漏洞

显示前 20 条,共 435 条。 查看全部 &rarr; →

IV. Related Vulnerabilities