製品・ソフトウェアに関する情報
LinuxのLinux Kernelにおける初期化されていないリソースの使用に関する脆弱性
Title LinuxのLinux Kernelにおける初期化されていないリソースの使用に関する脆弱性
Summary

Linuxカーネルにおいて、Bluetoothのvirtio_btドライバーでrx pkt_typeヘッダー長の検証に関する脆弱性が修正されました。virtbt_rx_handle()関数は受信したskbから先頭のpkt_typeバイトを読み取り、残りのデータをすべてのevent/ACL/SCO/ISOタイプに対してhci_recv_frame()に渡しますが、残りのペイロードがタイプごとの固定HCIヘッダーサイズ以上であるかを確認していませんでした。特にACLデータパケットの処理時に初期化されていないバッファデータを読み取る可能性があり、不正なメモリ参照が起こる恐れがありました。本脆弱性はパケット長とpkt_type情報が信頼できない場合に発生し得るもので、対応としてpkt_typeに応じた最低限のヘッダー長を検証し、不足する場合はログを制限しつつパケットを破棄するように修正されました。これにより、不正なパケットによるカーネルのメモリ破壊や予期せぬ動作を防止します。

Possible impacts ・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 ・当該ソフトウェアが扱う情報について、書き換えは発生しません。 ・当該ソフトウェアが完全に停止する可能性があります。 
Solution

リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。

Publication Date May 28, 2026, midnight
Registration Date June 12, 2026, 2:48 p.m.
Last Update June 12, 2026, 2:48 p.m.
CVSS3.0 : 警告
Score 5.5
Vector CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Affected System
Linux
Linux Kernel 5.15.78 以上 5.15.209 未満
Linux Kernel 6.0.8 以上 6.1 未満
Linux Kernel 6.1
Linux Kernel 6.1.1 以上 6.1.175 未満
Linux Kernel 6.13 以上 6.18.30 未満
Linux Kernel 6.19 以上 7.0.7 未満
Linux Kernel 6.2 以上 6.6.140 未満
Linux Kernel 6.7 以上 6.12.88 未満
Linux Kernel 7.1
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
その他
Change Log
No Changed Details Date of change
1 [2026年06月12日]
  掲載
June 12, 2026, 2:48 p.m.

NVD Vulnerability Information
CVE-2026-46186
Summary

In the Linux kernel, the following vulnerability has been resolved:

Bluetooth: virtio_bt: validate rx pkt_type header length

virtbt_rx_handle() reads the leading pkt_type byte from the RX skb
and forwards the remainder to hci_recv_frame() for every
event/ACL/SCO/ISO type, without checking that the remaining payload
is at least the fixed HCI header for that type.

After the preceding patch bounds the backend-supplied used.len to
[1, VIRTBT_RX_BUF_SIZE], a one-byte completion still reaches
hci_recv_frame() with skb->len already pulled to 0. If the byte
happened to be HCI_ACLDATA_PKT, the ACL-vs-ISO classification
fast-path in hci_dev_classify_pkt_type() dereferences
hci_acl_hdr(skb)->handle whenever the HCI device has an active
CIS_LINK, BIS_LINK, or PA_LINK connection, reading two bytes of
uninitialized RX-buffer data. The same hazard exists for every
packet type the driver accepts because none of the switch cases in
virtbt_rx_handle() check skb->len against the per-type minimum HCI
header size before handing the frame to the core.

After stripping pkt_type, require skb->len to cover the fixed
header size for the selected type (event 2, ACL 4, SCO 3, ISO 4)
before calling hci_recv_frame(); drop ratelimited otherwise.
Unknown pkt_type values still take the original kfree_skb() default
path.

Use bt_dev_err_ratelimited() because both the length and pkt_type
values come from an untrusted backend that can otherwise flood the
kernel log.

Publication Date May 28, 2026, 7:16 p.m.
Registration Date May 29, 2026, 4:13 a.m.
Last Update June 2, 2026, 2:17 a.m.
Related information, measures and tools
Common Vulnerabilities List