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

目标: 1000 元 · 已筹: 1336

100%

CVE-2026-52991— sched/psi 文件释放与压力写入间竞态条件漏洞

EPSS 0.19% · P8
获取后续新漏洞提醒登录后订阅

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

漏洞信息

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

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

Vulnerability Title
sched/psi: fix race between file release and pressure write
来源: 美国国家漏洞数据库 NVD
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: sched/psi: fix race between file release and pressure write A potential race condition exists between pressure write and cgroup file release regarding the priv member of struct kernfs_open_file, which triggers the uaf reported in [1]. Consider the following scenario involving execution on two separate CPUs: CPU0 CPU1 ==== ==== vfs_rmdir() kernfs_iop_rmdir() cgroup_rmdir() cgroup_kn_lock_live() cgroup_destroy_locked() cgroup_addrm_files() cgroup_rm_file() kernfs_remove_by_name() kernfs_remove_by_name_ns() vfs_write() __kernfs_remove() new_sync_write() kernfs_drain() kernfs_fop_write_iter() kernfs_drain_open_files() cgroup_file_write() kernfs_release_file() pressure_write() cgroup_file_release() ctx = of->priv; kfree(ctx); of->priv = NULL; cgroup_kn_unlock() cgroup_kn_lock_live() cgroup_get(cgrp) cgroup_kn_unlock() if (ctx->psi.trigger) // here, trigger uaf for ctx, that is of->priv The cgroup_rmdir() is protected by the cgroup_mutex, it also safeguards the memory deallocation of of->priv performed within cgroup_file_release(). However, the operations involving of->priv executed within pressure_write() are not entirely covered by the protection of cgroup_mutex. Consequently, if the code in pressure_write(), specifically the section handling the ctx variable executes after cgroup_file_release() has completed, a uaf vulnerability involving of->priv is triggered. Therefore, the issue can be resolved by extending the scope of the cgroup_mutex lock within pressure_write() to encompass all code paths involving of->priv, thereby properly synchronizing the race condition occurring between cgroup_file_release() and pressure_write(). And, if an live kn lock can be successfully acquired while executing the pressure write operation, it indicates that the cgroup deletion process has not yet reached its final stage; consequently, the priv pointer within open_file cannot be NULL. Therefore, the operation to retrieve the ctx value must be moved to a point *after* the live kn lock has been successfully acquired. In another situation, specifically after entering cgroup_kn_lock_live() but before acquiring cgroup_mutex, there exists a different class of race condition: CPU0: write memory.pressure CPU1: write cgroup.pressure=0 =========================== ============================= kernfs_fop_write_iter() kernfs_get_active_of(of) pressure_write() cgroup_kn_lock_live(memory.pressure) cgroup_tryget(cgrp) kernfs_break_active_protection(kn) ... blocks on cgroup_mutex cgroup_pressure_write() cgroup_kn_lock_live(cgroup.pressure) cgroup_file_show(memory.pressure, false) kernfs_show(false) kernfs_drain_open_files() cgroup_file_release(of) kfree(ctx) of->priv = NULL cgroup_kn_unlock() ... acquires cgroup_mutex ctx = of->priv; // may now be NULL if (ctx->psi.trigger) // NULL dereference Consequently, there is a possibility that of->priv is NULL, the pressure write needs to check for this. Now that the scope of the cgroup_mutex has been expanded, the original explicit cgroup_get/put operations are no longer necessary, this is because acquiring/releasing the live kn lock inherently executes a cgroup get/put operation. [1] BUG: KASAN: slab-use-after-free in pressure_write+0xa4/0x210 kernel/cgroup/cgroup.c:4011 Call Trace: pressure_write+0xa4/0x210 kernel/cgroup/cgroup.c:4011 cgroup_file_write+0x36f/0x790 kernel/cgroup/cgroup.c:43 ---truncated---
来源: 美国国家漏洞数据库 NVD
CVSS Information
N/A
来源: 美国国家漏洞数据库 NVD
Vulnerability Type
N/A
来源: 美国国家漏洞数据库 NVD

受影响产品

厂商产品影响版本CPE订阅
LinuxLinux 0e94682b73bfa6c44c98af7a26771c9c08c055d5 ~ 03dc070fa0fc3cb4068693f468ccd5f8a7e58282 -
LinuxLinux 5.2 -

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

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

未找到公开 POC。

登录以生成 AI POC

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

登录查看更多情报信息。

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

CVE-2026-52991 其他参考 (2)

同批安全公告 · Linux · 2026-06-24 · 共 219 条

CVE-2026-52980Linux内核公平调度器初始化时未清除相对截止期漏洞
CVE-2026-52992adfs_validate_bblk() 未验证 nzones 漏洞
CVE-2026-52993TIPC tipc_buf_append() 双重释放漏洞
CVE-2026-52990fsnotify inode引用泄漏漏洞
CVE-2026-52988netfilter: nf_tables 在提交阶段使用 splice_list_rcu() 加入钩子列表
CVE-2026-52989nvmet-tcp 传播 nvmet_tcp_build_pdu_iovec() 错误到调用者
CVE-2026-52987AMD GPU 驱动用户队列验证中双重释放漏洞
CVE-2026-52986netfilter nf_conntrack_sip 漏洞
CVE-2026-52985netdevsim 虚拟网卡 iphdr结构体未初始化漏洞
CVE-2026-52984Linux netem 队列限制检查漏洞
CVE-2026-52982Realtek RTL8150 网卡 use-after-free 漏洞
CVE-2026-52983Airoha网络驱动TX路径BQL失衡漏洞
CVE-2026-52981内核neigh模块skb所有权管理漏洞
CVE-2026-52979net: psp: 创建关联时检查设备注销
CVE-2026-52968KVM s390 PCI GAIT表索引双重缩放指针算法定位漏洞
CVE-2026-52972crypto: af_alg - AEAD附加数据长度限制漏洞
CVE-2026-52970nft_ct: obj eval缺失expect put导致漏洞
CVE-2026-52969KVM: kvm_reset_dirty_gfn() 回绕偏移拒绝漏洞
CVE-2026-52971ena: get_timestamp中潜在Use-after-Free漏洞
CVE-2026-52967SMB客户端符号链接无限循环及越界读取漏洞

显示前 20 条,共 219 条。 查看全部 → →

IV. Related Vulnerabilities

V. Comments for CVE-2026-52991

暂无评论


发表评论