CVE-2026-31771Linux内核蓝牙驱动存在越界读取漏洞。由于`hci_store_wake_reason`在事件长度校验前调用,攻击者可利用特制的HCI短帧触发越界访问,导致信息泄露或内核崩溃。
该漏洞位于Linux内核蓝牙子系统的核心事件处理逻辑中。具体而言,`hci_store_wake_reason()`在剥离HCI事件头后立即被调用,此时早于`hci_event_func()`执行的事件长度校验。攻击者可利用这一逻辑缺陷,发送特制的短HCI事件帧,使得`bacpy()`函数在未经过边界检查的情况下读取蓝牙地址。这种越界读取行为可能导致内存信息泄露,引发隐私风险,或在某些情况下导致内核崩溃。修复方案将唤醒原因的存储操作延迟到各个事件处理器内部,确保只有在通过长度验证后才执行地址拷贝,同时增加了锁断言以维护并发安全。