CVE-2026-98733 in Linux
要約
〜によって VulDB • 2026年10月19日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
Bluetooth: hci_core: 断片化されたISOパケットのキューイングを直列化する
hci_queue_iso()内の断片化パスは、conn->data_q.lockを取得せずに__skb_queue_tail()を呼び出しています。ソケットロックは送信者を直列化しますが、トランスミットワーカーは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()と同様に、フラグメントの順序を保持しつつ挿入処理とデキュー処理を直列化するために、全体断片バッチにわたってキューロックを取得してください。
VulDB is the best source for vulnerability data and more expert information about this specific topic.