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

目标: 1000 元 · 已筹: 1359 元

100%

CVE-2026-90181— ublk 内核模块资源分配失败重试循环

一分钟漏洞结论

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

在 Linux 内核中,以下漏洞已得到修复: ublk:在 xarray 分配失败时避免拆卸(teardown)重试循环 函数分批删除匹配的山茶花树(maple tree)范围。但在删除前,它会先将每个范围暂存到一个临时的 xarray 中,以便在释放山茶花树锁之后能够解除页面固定(unpin)。 这个临时 xarray 是在持有山茶花树锁的情况下,使用 进行填充的。如果在调用 之前存储操作失败,当前范围将保留在树中,且该辅助函数返回 false。随后,外层的 循环会立即重试同一范围。只要原子分配持续失败,拆卸路径

AI 预测 5.5 利用难度: 困难 EPSS 0.21% · P11

可能的 ATT&CK 技术 1 AI

T1563 · Remote Service Session Hijacking

影响版本矩阵 6

厂商产品 版本范围状态
Linux Linux 309e02dccf64e1b7bd2067abedc270e33b0aadf3< b9cc6cc74daf6fef533dbe65d8cee779fea69600 affected
309e02dccf64e1b7bd2067abedc270e33b0aadf3< 4fd66a7f829f3f38f92a79081f0f2688aed644f0 affected
7.1 affected
< 7.1 unaffected
7.2.6≤ 7.2.* unaffected
7.3-rc1≤ * unaffected
获取后续新漏洞提醒 登录后订阅

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

漏洞信息

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

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

Vulnerability Title
ublk: avoid teardown retry loop on xarray allocation failure
来源: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: ublk: avoid teardown retry loop on xarray allocation failure __ublk_shmem_remove_ranges() removes matching maple tree ranges in batches, but first stores each range into a temporary xarray so that the pages can be unpinned after dropping the maple tree lock. That temporary xarray is filled under the maple tree lock with xa_store(..., GFP_ATOMIC). If the store fails before mas_erase(), the current range is left in the tree and the helper returns false. The outer ublk_shmem_remove_ranges() loop then immediately retries the same range. While the atomic allocation keeps failing, the teardown path has no forward progress. The issue can be reproduced with radix_tree_node failslab injection after a SHMEM_ZC buffer has already been registered: # Kernel config: # CONFIG_BLK_DEV_UBLK=y # CONFIG_DEBUG_FS=y # CONFIG_FAULT_INJECTION=y # CONFIG_FAULT_INJECTION_DEBUG_FS=y # CONFIG_FAILSLAB=y echo 10 > /proc/sys/vm/nr_hugepages mkdir -p /tmp/htlb mount -t hugetlbfs none /tmp/htlb fallocate -l 4M /tmp/htlb/ublk_buf dev_id=$(kublk add -t null --shmem_zc \ --htlb /tmp/htlb/ublk_buf | awk -F '[ :]' '/dev id/ {print $3}') echo 1 > /sys/kernel/slab/radix_tree_node/failslab echo Y > /sys/kernel/debug/failslab/cache-filter echo Y > /sys/kernel/debug/failslab/ignore-gfp-wait echo 1 > /sys/kernel/debug/failslab/interval echo -1 > /sys/kernel/debug/failslab/times echo 100 > /sys/kernel/debug/failslab/probability kublk del -n "$dev_id" On the unfixed kernel the delete command was still running after 3 seconds. Disabling failslab made it return. The fault-injection stack showed: should_failslab kmem_cache_alloc_lru_noprof __xas_nomem __xa_store xa_store __ublk_shmem_remove_ranges ublk_cdev_rel ublk_ctrl_del_dev Remove the allocation from the teardown loop. Keep the existing batch limit, but collect {base_pfn, nr_pages} pairs in a fixed-size stack array. Once a matching range is found, the range is erased from the maple tree before dropping the lock, so each successful scan makes progress without depending on any GFP_ATOMIC allocation. With the same failslab settings, the fixed kernel completed "kublk del -n $dev_id" successfully in about 45 ms.
来源: CVE Program / CVE List V5
CVSS Information
N/A
来源: CVE Program / CVE List V5
Vulnerability Type
N/A
来源: CVE Program / CVE List V5

受影响产品

厂商 产品 影响版本 CPE 订阅
Linux Linux 309e02dccf64e1b7bd2067abedc270e33b0aadf3 ~ b9cc6cc74daf6fef533dbe65d8cee779fea69600 -
Linux Linux 7.1 -

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

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

未找到公开 POC。

登录以生成 AI POC

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

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

CVE-2026-90181 补丁与修复 (1)

同批安全公告 · Linux · 2026-09-17 · 共 600 条

CVE-2026-90235 9.8 CRITICAL 内核sunrpc xprtsock并发读取修复
CVE-2026-90104 9.8 CRITICAL NFSv4.1 解码前未清空调用列表
CVE-2026-90173 9.8 CRITICAL SMB SmbDirect 释放完成队列漏洞
CVE-2026-92489 9.8 CRITICAL Linux内核 xfrm 双重释放漏洞
CVE-2026-90151 9.8 CRITICAL NFSv4客户端分配失败回调处理漏洞
CVE-2026-90110 9.4 CRITICAL inetpeer 随机化RB树节点比较
CVE-2026-90230 9.1 CRITICAL Linux内核Nvme-target堆越界读取漏洞
CVE-2026-90414 9.1 CRITICAL IB/isert拒绝声明超出实际接收数据的PDU
CVE-2026-90413 9.1 CRITICAL IB/isert 登录PDU数据长度校验漏洞
CVE-2026-90380 8.8 HIGH MT76驱动 mt792x 使用释放后内存漏洞
CVE-2026-93042 8.8 HIGH Linux内核dmaengine模块资源耗尽漏洞
CVE-2026-90425 8.8 HIGH Linux内核 5.x 内核漏洞
CVE-2026-90240 8.8 HIGH Linux内核 IOMMU 别名拆除时刷新缓存错误
CVE-2026-90381 8.8 HIGH Linux内核mt76驱动无线信道切换漏洞
CVE-2026-90329 8.8 HIGH Linux 内核 HID 驱动探测清理同步漏洞
CVE-2026-90357 8.8 HIGH mt76驱动MT7915无线局域网远程拒绝服务漏洞
CVE-2026-90379 8.8 HIGH Linux 内核 mt76 驱动系统崩溃漏洞
CVE-2026-90162 8.8 HIGH Linux ksmbd 锁授予UAF/双重释放竞态漏洞
CVE-2026-93189 8.8 HIGH Linux HID核心使用已释放内存漏洞
CVE-2026-90255 8.8 HIGH Linux内核 Bluetooth 漏洞

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

IV. Related Vulnerabilities

V. Comments for CVE-2026-90181

暂无评论


发表评论