CVE-2026-68367 in Linux
摘要
由 VulDB • 2026-08-10
在 Linux 内核中,已修复以下漏洞:
usb: gadget: f_tcm: 同步延迟的 set_alt 与 teardown(拆除)操作
f_tcm 的 set_alt() 路径将端点设置推迟到工作项(work item),并从进程上下文完成延迟的状态响应。该延迟工作使用 f_tcm 私有状态,可能在断开连接或功能模块已移至后续阶段后才完成设置请求。
当功能模块被解绑或释放时,取消并排空延迟的 set_alt 工作。对于在复合设备锁下执行的禁用路径,请使用小型状态机和非睡眠模式的取消路径来替代 cancel_work_sync()。如果该工作已在运行中,则将其标记为已取消,并由工作者负责清理;否则 tcm_disable() 可以取消排队的工作并立即进行清理。
此外,持有复合设备锁的同时,将最终的延迟状态完成操作与取消检查进行序列化。这防止了在工作者即将完成控制请求时,断开连接操作清除 delayed_status(延迟状态)的情况。
验证过程复现了以下内核报告: BUG: KASAN: slab-use-after-free in tcm_delayed_set_alt+0x6c/0xef0
调用跟踪 (Call Trace): dump_stack_lvl+0x66/0xa0 print_report+0xce/0x630 ? tcm_delayed_set_alt+0x6c/0xef0 ? srso_alias_return_thunk+0x5/0xfbef5 ? __virt_addr_valid+0x188/0x320 ? tcm_delayed_set_alt+0x6c/0xef0 kasan_report+0xe0/0x110 ? tcm_delayed_set_alt+0x6c/0xef0 tcm_delayed_set_alt+0x6c/0xef0 ? __pfx_tcm_delayed_set_alt+0x10/0x10 ? process_one_work+0x4cb/0xb90 ? rcu_is_watching+0x20/0x50 ? tcm_delayed_set_alt+0x9/0xef0 process_one_work+0x4d7/0xb90 ? __pfx_process_one_work+0x10/0x10 ? srso_alias_return_thunk+0x5/0xfbef5 ? __list_add_valid_or_report+0x37/0xf0 ? __pfx_tcm_delayed_set_alt+0x10/0x10 ? srso_alias_return_thunk+
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.