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

目标: 1000 元 · 已筹: 1359 元

100%

CVE-2026-99215— Linux 内核电源供应核心回调中注销漏洞

一分钟漏洞结论

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

在 Linux 内核中,以下漏洞已得到修复: 电源:供电核心:防止在回调函数执行期间注销电源供应器 一旦电源供应器注册完成,其回调函数可能立即从其他上下文中被触发,例如由 TCPM 栈触发的 。如果在回调函数仍在运行时注销了该电源供应器,当回调函数尝试访问驱动程序数据时,该数据可能已被释放,从而导致“释放后使用”(use-after-free)漏洞。 此类问题例如发生在以下场景:电源供应器注册后,承载该设备的硬件总线(如 I2C)因其他故障设备而阻塞,导致核心仍在处理驱动程序启动时已排队的回调。此时若驱动程序开始执

AI 预测 7.8 利用难度: 中等
获取后续新漏洞提醒 登录后订阅

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

漏洞信息

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

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

Vulnerability Title
power: supply: core: prevent unregistering a power supply while a callback runs
来源: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: power: supply: core: prevent unregistering a power supply while a callback runs Once a power supply is registered, its callbacks can immediately start firing from other contexts, such as external_power_changed() triggered by the TCPM stack. If a power supply is unregistered while the callback is still running, the driver data can already be freed when the callback tries to access it, leading to a use-after-free. This happens e.g. when the hardware bus carrying the power supply device malfunctions (e.g. I2C is hogged down by another malfunctioning device) immediately after the power supply is registered, and thus the core is still processing the callbacks which were queued up when the driver starts the removal, leading in some cases to a kernel crash, e.g.: [ 11.645942] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000005 [ 11.646751] Mem abort info: [ 11.647006] ESR = 0x0000000096000004 [ 11.647338] EC = 0x25: DABT (current EL), IL = 32 bits [ 11.647806] SET = 0, FnV = 0 [ 11.648077] EA = 0, S1PTW = 0 [ 11.648356] FSC = 0x04: level 0 translation fault [ 11.648785] Data abort info: [ 11.649041] ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000 [ 11.649524] CM = 0, WnR = 0, TnD = 0, TagAccess = 0 [ 11.649981] GCS = 0, Overlay = 0, DirtyBit = 0 [ 11.650390] [0000000000000005] user address but active_mm is swapper [ 11.650955] Internal error: Oops: 0000000096000004 [#1] SMP [ 11.651460] Modules linked in: [ 11.651742] CPU: 1 UID: 0 PID: 144 Comm: kworker/1:2 Not tainted 7.2.0-rc6-g62a9297af2cd #1 PREEMPT [ 11.652553] Hardware name: Flipper One rev. F0B1C2 (DT) [ 11.653024] Workqueue: events power_supply_changed_work [ 11.653511] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 11.654135] pc : __power_supply_is_supplied_by+0x18/0x100 [ 11.654624] lr : __power_supply_am_i_supplied+0x40/0xb8 [ 11.655098] sp : ffff80008192bb30 [ 11.655399] x29: ffff80008192bb30 x28: 0000000000000000 x27: 0000000000000000 [ 11.656049] x26: 0000000000000000 x25: 0000000000000000 x24: 0000000000000000 [ 11.656695] x23: ffff0000c19f4200 x22: ffffdb2232ba4ea8 x21: ffff80008192bc28 [ 11.657344] x20: ffff0000c1eef000 x19: ffff80008192bc18 x18: 00000000a0886e62 [ 11.657991] x17: 000000040044ffff x16: 04500072b5503510 x15: 0000000000000000 [ 11.658639] x14: 0000000000000000 x13: 0000000000000220 x12: 0000000000000000 [ 11.659286] x11: 0000000000000000 x10: ffff0000c1fdb2b0 x9 : ffffdb2232ba5590 [ 11.659934] x8 : 00000000e5b906e6 x7 : ffff0000c2502778 x6 : ffffdb22339793d0 [ 11.660581] x5 : ffff80008192bc18 x4 : ffff0000c19cbca0 x3 : 0000000000000000 [ 11.661228] x2 : ffff0000c1fdaf40 x1 : ffffffffffffffed x0 : ffff0000c1eef000 [ 11.661878] Call trace: [ 11.662103] __power_supply_is_supplied_by+0x18/0x100 (P) [ 11.662596] __power_supply_am_i_supplied+0x40/0xb8 [ 11.663040] psy_for_each_psy_cb+0x20/0x40 [ 11.663416] class_for_each_device+0x110/0x150 [ 11.663825] power_supply_am_i_supplied+0x68/0x100 [ 11.664262] bq257xx_external_power_changed+0x58/0x140 [ 11.664733] __power_supply_changed_work+0x60/0x80 [ 11.665170] psy_for_each_psy_cb+0x20/0x40 [ 11.665545] class_for_each_device+0x110/0x150 [ 11.665953] power_supply_changed_work+0x98/0x1b8 [ 11.666382] process_one_work+0x164/0x4c0 [ 11.666758] worker_thread+0x19c/0x320 [ 11.667104] kthread+0x138/0x150 [ 11.667408] ret_from_fork+0x10/0x20 [ 11.667744] Code: d503233f a9bd7bfd 910003fd a90153f3 (f9400c34) [ 11.668294] ---[ end trace 0000000000000000 ]--- Add a read-write semaphore between external_power_changed() and power_supply_unregister() to prevent the latter from returning (and thus the driver from freeing its data) while the callback is still running.
来源: 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 bc1540561c9ede1efb6d7bf44804676d3d02a3cc ~ 2ac0256a28e15c4888fa394d1fe66cf7b1d58090 -
Linux Linux 4.1 -

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

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

未找到公开 POC。

登录以生成 AI POC

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

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

CVE-2026-99215 补丁与修复 (3)

同批安全公告 · Linux · 2026-10-28 · 共 117 条

CVE-2026-99143 Linux 内核 tracing 组件越界访问漏洞
CVE-2026-99129 SELinux BPF 令牌权限检查漏洞
CVE-2026-99130 Linux io_uring 拒绝服务漏洞
CVE-2026-99131 XFS 文件系统权限检查绕过漏洞
CVE-2026-99133 Linux 内核网络 IUCV 远程拒绝服务漏洞
CVE-2026-99132 XFS xfs_sync_sb_buf 缓冲区锁竞争漏洞
CVE-2026-99134 mac802154 数据竞争与空指针解引用漏洞
CVE-2026-99135 dm-integrity 大标签丢弃无限循环漏洞
CVE-2026-99137 CIFS 文件系统在无缓存句柄时更新 i_size 存在漏洞
CVE-2026-99136 dm-crypt 竞态条件漏洞
CVE-2026-99138 Linux TCP 协议栈 use-after-free 漏洞
CVE-2026-99140 tracing 模块缓冲区事件时间戳修复
CVE-2026-99139 TCP 协议栈 TCP_CONGESTION 选项后释放漏洞
CVE-2026-99141 内核 tracing 模块 print_graph_function_event 崩溃漏洞
CVE-2026-99142 Tracing 组件栈容量检查缺失漏洞
CVE-2026-99154 libiscsi 负任务索引拒绝漏洞
CVE-2026-99151 AMD Display 驱动 NULL 指针解引用漏洞
CVE-2026-99153 libiscsi 拒绝 PDU 验证逻辑漏洞
CVE-2026-99152 libiscsi 管理响应任务验证绕过漏洞
CVE-2026-99150 amdgpu 驱动程序资源管理漏洞

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

IV. Related Vulnerabilities