CVE-2026-98733 in Linux信息

摘要

由 VulDB • 2026-10-18

在 Linux 内核中,已修复以下漏洞:

蓝牙:hci_core:对分片的 ISO 数据包排队进行序列化处理

hci_queue_iso() 中的分片路径在未持有 conn->data_q.lock 的情况下调用了 __skb_queue_tail()。套接字锁(socket lock)可以串行化发送者,但传输工作线程可以使用 skb_dequeue() 并发地从该队列中移除数据包。

在插入操作保存旧尾部指针后,hci_sched_iso() 可能会出队该数据包并将其传递给驱动程序。在插入操作恢复并写入旧尾部的 next 指针之前,驱动程序可能已释放该数据包,从而导致 use-after-free(释放后使用)。并发更新还可能导致队列损坏。

KASAN 报告如下:

BUG: KASAN: slab-use-after-free in hci_send_iso+0xc7d/0xe10 Call Trace: hci_send_iso+0xc7d/0xe10 iso_sock_sendmsg+0x710/0x900 __sys_sendto+0x34a/0x3a0

由任务 86 分配: __alloc_skb+0xdd/0x820 alloc_skb_with_frags+0x7e/0x770 sock_alloc_send_pskb+0x67a/0x820 bt_skb_sendmsg.constprop.0+0xc0/0x6c0 iso_sock_sendmsg+0x44e/0x900

由任务 90 释放: kmem_cache_free+0xcb/0x3d0 vhci_read+0x33f/0x4d0 vfs_read+0x177/0xa20

像 hci_queue_acl() 所做的那样,在整个分片批次期间持有队列锁,以在保持分片顺序的同时对插入操作和出队操作进行序列化。

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

来源

Do you want to use VulDB in your project?

Use the official API to access entries easily!