| タイトル | LinuxのLinux Kernelにおける不特定の脆弱性 |
|---|---|
| 概要 | Linuxカーネルにおいて、次の脆弱性が修正されました:ALSAのcaiaqドライバにおけるプローブ失敗時のusb_dev参照カウントリークの修正です。create_card() はusb_get_dev()でUSBデバイスの参照を取得し、対応するusb_put_dev()をsnd_cardの-private_freeデストラクタとしてcard_free()に保存します。しかし、-private_freeはinit_card()の終盤近くでのみ割り当てられます。init_card()内には複数の失敗ポイント(usb_set_interface()、エンドポイントタイプチェック、usb_submit_urb()、EP1_CMD_GET_DEVICE_INFOのやり取りおよびそのタイムアウト)が存在します。これらのどれかが失敗すると、init_card()はエラーを返し、snd_probe()がsnd_card_free(card)を呼び出します。-private_freeがまだNULLのため、card_free()は実行されず、usb_get_dev()で増やした参照カウントが減らされないまま、struct usb_deviceとそのディスクリプタ割り当てやdevice_privateがリークしてしまいます。syzbotは有効なaltsettingが0だけの不正なUAC3デバイスでこの問題を再現し、init_card()のusb_set_interface(usb_dev, 0, 1)呼び出しが-EIOで失敗しリークを引き起こします。-private_freeの割り当てをusb_get_dev()直後のcreate_card()内に移動し、snd_card_free()に至るすべてのエラーパスで参照カウントを均衡させるようにしました。card_free()の呼び出し先(snd_usb_caiaq_input_free、free_urbs、kfree)は、snd_card_new()によってチッププライベート領域がゼロ初期化されているため、部分的に初期化された状態でも問題なく動作します。 |
| 想定される影響 | ・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 ・当該ソフトウェアが扱う情報について、書き換えは発生しません。 ・当該ソフトウェアが完全に停止する可能性があります。 |
| 対策 | リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。 |
| 公表日 | 2026年5月27日0:00 |
| 登録日 | 2026年6月17日15:40 |
| 最終更新日 | 2026年6月17日15:40 |
| CVSS3.0 : 警告 | |
| スコア | 5.5 |
|---|---|
| ベクター | CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
| Linux |
| Linux Kernel 6.12.84 以上 6.12.86 未満 |
| Linux Kernel 6.18.25 以上 6.18.27 未満 |
| Linux Kernel 6.6.136 以上 6.6.140 未満 |
| Linux Kernel 7.0.2 以上 7.0.4 未満 |
| Linux Kernel 7.1 |
| No | 変更内容 | 変更日 |
|---|---|---|
| 1 | [2026年06月17日] 掲載 |
2026年6月17日15:40 |
| 概要 | In the Linux kernel, the following vulnerability has been resolved: ALSA: caiaq: fix usb_dev refcount leak on probe failure create_card() takes a reference on the USB device with usb_get_dev() However, ->private_free is only assigned near the end of init_card(), syzbot reproduces this with a malformed UAC3 device whose only valid Move the ->private_free assignment into create_card(), immediately |
|---|---|
| 公表日 | 2026年5月27日23:17 |
| 登録日 | 2026年5月28日4:13 |
| 最終更新日 | 2026年6月2日2:17 |