CVE-2026-12365

5.8
0.05.010.0
年份
2026
发布日期
2026年8月14日
受影响设备
0
CVSS 评分
5.8

CVE-2026-12365 是什么?

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.

CVSS Vector Breakdown

CVSS 3.1
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:H
AV
Attack Vector
Local

Requires local access — attacker must be logged in or have physical access to the device.

AC
Attack Complexity
High

Exploit requires specific conditions, timing, or configuration to succeed.

PR
Privileges Required
Low

Basic user account required (e.g. standard login without admin rights).

UI
User Interaction
None

No user interaction required. Exploit runs without any victim action.

S
Scope
Unchanged

Exploiting the vulnerability only affects the vulnerable component itself.

C
Confidentiality Impact
Low

Some sensitive information is disclosed, but attacker has limited access.

I
Integrity Impact
Low

Attacker can modify some data, but scope or consequence is limited.

A
Availability Impact
High

Complete denial of service. The component becomes fully unavailable.

常见问题

CVE-2026-12365 的严重程度如何?

CVE-2026-12365 的 CVSS 评分为 5.8/10,评级为 Medium。 请查阅受影响产品列表并应用厂商补丁。

CVE-2026-12365 的 CVSS 分数意味着什么?

CVSS(通用漏洞评分系统)将漏洞严重性评为 0.0 至 10.0。CVE-2026-12365 得分为 5.8/10(Medium)。9.0–10.0 为严重,7.0–8.9 为高危,4.0–6.9 为中危,4.0 以下为低危。

哪些设备受到 CVE-2026-12365 影响?

受 CVE-2026-12365 影响的已确认设备列表显示在上方 受影响设备部分。请将您的固件版本与供应商安全公告进行比对,并应用最新补丁。

如何修复或缓解 CVE-2026-12365?

应用供应商提供的最新固件或软件更新。查看上方参考资料部分获取官方公告和补丁说明。如果没有补丁,请考虑禁用受影响的功能或将设备与不受信任的网络隔离。