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

目标: 1000 元 · 已筹: 1336

100%

CVE-2026-12365— Zephyr SMP时序竞态导致延迟工作队列取消时出现释放后使用漏洞

CVSS 5.8 · Medium

影响版本矩阵 1

厂商产品版本范围状态
zephyrprojectzephyr2.6.0< 4.5.0affected
获取后续新漏洞提醒登录后订阅

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

漏洞信息

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

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

Vulnerability Title
Use-after-free in Zephyr delayable work-queue cancellation under SMP timing race
来源: CVE Program / CVE List V5
Vulnerability Description
A use-after-free exists in the Zephyr second-generation work queue (kernel/work.c) in the handling of delayable work timeouts. When a delayable work item's timeout has been dequeued and its handler work_timeout() is in flight (blocked acquiring the work-queue spinlock), a concurrent cancellation does not wait for that handler to finish. In unschedule_locked() the pre-fix code called z_abort_timeout(), which for an already-announcing record returns -EINVAL without removing it; cancel_async_locked() then observes the work as idle, so even k_work_cancel_delayable_sync() and k_work_flush_delayable() return without blocking on the in-flight handler. Because those are the APIs the kernel header documents as the safe way to cancel before freeing a k_work_delayable, a caller that frees the object immediately after a successful sync cancel can race the still-pending handler. work_timeout() subsequently dereferences the freed record: it reads to->dticks via z_is_timeout_handler_canceled() and, if the freed slot has been reused so the bail check fails, performs a read-modify-write of wp->flags (K_WORK_DELAYED_BIT) and submits work against a stale dw->queue pointer — a use-after-free read and write. The k_work API is kernel-mode only (no __syscall entry point), so this is a kernel-internal concurrency defect rather than a userspace privilege escalation. Triggering it requires an SMP build and a subsystem that schedules and then frees (or reschedules) a delayable work item in the narrow window while its timeout is announcing; an attacker able to influence the timing of such teardown (for example via connection churn driving subsystem timers) has a plausible but probabilistic path. The impact is kernel memory corruption or crash (denial of service). The fix makes unschedule_locked() wait, by spinning on z_try_abort_timeout() returning -EAGAIN while releasing and re-acquiring the work spinlock, until any in-flight handler completes before returning, and switches work_timeout() to atomic K_WORK_DELAYED_BIT ownership. This closes both the free-then-handler use-after-free and the related reschedule early-fire race.
来源: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:H
来源: CVE Program / CVE List V5
Vulnerability Type
释放后使用
来源: CVE Program / CVE List V5

受影响产品

厂商产品影响版本CPE订阅
zephyrprojectzephyr 2.6.0 ~ 4.5.0 -

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

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

未找到公开 POC。

登录以生成 AI POC

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

登录查看更多情报信息。

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

CVE-2026-12365 厂商安全公告 (1)

同批安全公告 · zephyrproject · 2026-08-14 · 共 4 条

CVE-2026-123668.8 HIGHZephyr k_timer 使用后释放漏洞
CVE-2026-123648.4 HIGHLinux内核z_log_msg_static_create日志系统漏洞,导致内核内存泄露与拒绝服务
CVE-2026-123634.2 MEDIUMLoRaWAN 分片传输中因索引0导致越界写入漏洞

IV. Related Vulnerabilities

V. Comments for CVE-2026-12365

暂无评论


发表评论