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

目标: 1000 元 · 已筹: 1359 元

100%

CVE-2026-97595— mac802154 sdata 使用后可见性漏洞

一分钟漏洞结论

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

在 Linux 内核中,已修复以下漏洞: mac802154:修复通过排队接收帧导致的 sdata 释放后使用(use-after-free)漏洞 RX 软中断生产者 会将接收到的信标(beacon)和 MAC 命令帧排队到 和 中,并调度一个工作队列上下文中的工作进程。在此过程中,它存储了原始的 (且 ),既没有增加引用计数,也没有加锁保护: 列表无锁保护:软中断生产者使用 向列表添加节点,而 工作进程使用 从列表中删除节点。由于缺乏同步机制,同一 phy 上的其他接口会损坏链表; 工作进程在接口可能已被释放后解

CVSS 7.5 · High EPSS 0.28% · P19

影响版本矩阵 12

厂商产品 版本范围状态
Linux Linux 57588c71177f0bfc08509c2c3a9bfe32850c0786< 4826fd8373f684f9952536333ad45b26acd3455d affected
57588c71177f0bfc08509c2c3a9bfe32850c0786< 4740ef0518c5e3bf31ebfb2288a6ac3b462ead06 affected
57588c71177f0bfc08509c2c3a9bfe32850c0786< 07f0214018d7241e3610c1be984c8abfce16c099 affected
57588c71177f0bfc08509c2c3a9bfe32850c0786< 3d1fde35f95d7f02a7dc473c51d81e8d9e992cfc affected
57588c71177f0bfc08509c2c3a9bfe32850c0786< 2f37fba846c9fdff5fc15b6d93656057ccd13031 affected
6.3 affected
< 6.3 unaffected
6.6.158≤ 6.6.* unaffected
… +4 条更多
获取后续新漏洞提醒 登录后订阅

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

漏洞信息

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

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

Vulnerability Title
mac802154: fix use-after-free of sdata via queued RX frames
来源: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: mac802154: fix use-after-free of sdata via queued RX frames The RX softirq producer ieee802154_subif_frame() queues received beacon and MAC-command frames onto local->rx_beacon_list / rx_mac_cmd_list and schedules a process-context worker, storing a raw mac_pkt->sdata (and skb->dev == sdata->dev) with neither a reference nor any locking: - the lists have no lock: the softirq producer list_add_tail()s while the mac_wq worker list_del()s, so sibling interfaces on the same phy corrupt the list; - the workers dereference the interface after it may have been freed. mac802154_rx_mac_cmd_worker() touches mac_pkt->sdata directly, and mac802154_rx_beacon_worker() -> mac802154_process_beacon() dereferences skb->dev (== sdata->dev). Removing an interface frees its sdata (netdev_priv) while a queued frame still points at it, so a later worker run is a use-after-free. Reproduced under KASAN by flooding a victim interface with MAC command frames and removing it (the beacon path is the same class via skb->dev): BUG: KASAN: slab-use-after-free in mac802154_rx_mac_cmd_worker+0x463/0x630 [mac802154] Read of size 4 at addr ffff888002f9ea18 by task kworker/u8:1/31 Workqueue: phy0-mac-cmds mac802154_rx_mac_cmd_worker [mac802154] Call Trace: mac802154_rx_mac_cmd_worker+0x463/0x630 [mac802154] process_one_work+0x611/0xe80 worker_thread+0x52e/0xdc0 kthread+0x30c/0x630 ret_from_fork+0x2fd/0x3e0 Fix both lists together: - add local->rx_lock and take it around every list access: the softirq producer (plain spin_lock, softirq context) and the workers and flush (spin_lock_bh, process context); - pin the interface for the lifetime of a queued frame with netdev_hold()/netdev_put(), so the worker can safely dereference sdata / skb->dev even while the interface is being removed; - dequeue under the lock at the head and loop-drain the whole list in the workers (they previously processed one frame per run and relied on a later enqueue to drain the rest); - drop not-yet-started frames of an interface before it is unregistered, from ieee802154_if_remove() (after the RCU grace period) and from the ieee802154_remove_interfaces() loop -- the latter is the whole-phy teardown path, which does not go through ieee802154_if_remove(). An in-flight worker that already dequeued a frame keeps its own netdev reference; unregister_netdevice() then waits it out in netdev_run_todo(), which runs at rtnl_unlock() (rtnl released) and after the interface has been closed, so it does not pin rtnl. A worker blocked in an association TX only delays that one interface's unregister (the usual "waiting for %s to become free"), it does not hold rtnl. netdev_hold() is used for this reason instead of a cancel_work_sync() under rtnl, which would block on the worker's unbounded MLME TX wait via ieee802154_sync_queue(). The mac-command worker additionally skips processing for a stopped interface (ieee802154_sdata_running()), avoiding a needless association response during teardown.
来源: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:A/AC:H/PR:N/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 57588c71177f0bfc08509c2c3a9bfe32850c0786 ~ 4826fd8373f684f9952536333ad45b26acd3455d -
Linux Linux 6.3 -

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

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

未找到公开 POC。

登录以生成 AI POC

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

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

CVE-2026-97595 补丁与修复 (5)

同批安全公告 · Linux · 2026-09-25 · 共 372 条

CVE-2026-100075 9.8 CRITICAL RDMA/srpt:srpt_alloc_rw_ctxs() 未释放计数器修复
CVE-2026-97957 8.8 HIGH hinic 邮箱段缓冲区溢出漏洞
CVE-2026-97527 8.8 HIGH qla2xxx SCSI驱动程序 NVMe未解决上下文列表竞争条件漏洞
CVE-2026-97528 8.8 HIGH QLogic qla2xxx驱动LS拒绝错误NVMe内存泄漏漏洞
CVE-2026-97555 8.8 HIGH smb客户端:修复DACL所有者/组重写中的堆溢出漏洞
CVE-2026-98115 8.8 HIGH ksmbd 注销期间会话安全排空漏洞
CVE-2026-97525 8.2 HIGH x86/mm/pat:内核页表分裂页表分配漏洞
CVE-2026-98130 8.1 HIGH SCTP定时器启动竞争条件漏洞
CVE-2026-97573 8.1 HIGH bnxt_en 驱动 bnxt_rx_ring_reset 缓冲区分配失败漏洞
CVE-2026-98069 8.1 HIGH Net/RDS rds_conn_shutdown() 快速路径锁获取漏洞
CVE-2026-98070 8.1 HIGH Linux RDS 模块远程代码执行漏洞
CVE-2026-97570 8.1 HIGH bnxt_en: 修复因SW TPA ID绑定问题导致的崩溃漏洞
CVE-2026-97911 7.8 HIGH Ethos-U SRAM区域大小与任务不匹配漏洞
CVE-2026-98023 7.8 HIGH VXLAN拒绝引用下一跳ID的动态FDB条目漏洞
CVE-2026-97910 7.8 HIGH ASoC: sprd 验证压缩缓冲区大小与固定分配
CVE-2026-98143 7.8 HIGH Armv8-M Ethos-U55加速器读取U65舍入模式为存储模式漏洞
CVE-2026-97903 7.8 HIGH exit: proc_flush_pid 线程 PID 持引越界漏洞
CVE-2026-97548 7.8 HIGH XFS rtrmap和rtrefcount _maxlevels_ondisk函数漏洞
CVE-2026-97584 7.8 HIGH AFS 候选清理中释放错误漏洞
CVE-2026-97594 7.8 HIGH landlock 源目录父级释放后使用漏洞

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

IV. Related Vulnerabilities

V. Comments for CVE-2026-97595

暂无评论


发表评论