| タイトル | LinuxのLinux Kernelにおける解放済みメモリの使用に関する脆弱性 |
|---|---|
| 概要 | Linuxカーネルにおいて、以下の脆弱性が修正されました。ALSAの6fireドライバにおける切断時のuse-after-freeの問題です。usb6fire_chip_abort()内で、chip構造体はsnd_card_newにより割り当てられたカードのプライベートデータ(struct sfire_chipのサイズ)として管理されています。snd_card_free_when_closed()が呼ばれ、開かれているファイルハンドルがなくなると、カードとその内部のchipは同期的に解放されます。しかし、その後chip-card = NULLへの書き込みが解放済みのスラブメモリに対して行われてしまいます。コールトレースは以下の通りです。usb6fire_chip_abortはsound/usb/6fire/chip.cの59行目(インライン)、usb6fire_chip_disconnectは182行目、usb_unbind_interfaceはdrivers/usb/core/driver.cの458行目などにあります。修正内容は、カードのライフサイクル管理をusb6fire_chip_abort()からusb6fire_chip_disconnect()に移動することです。カードポインタをローカルに保存し、tear down前にsnd_card_disconnect()を最初に呼び出して新規のオープンを防止します。URBはchipが有効な間に中断され、最後にsnd_card_free_when_closed()を呼び出すことで、カード解放後にchipへのアクセスが発生しないようにしました。 |
| 想定される影響 | 当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 |
| 対策 | リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。 |
| 公表日 | 2026年4月24日0:00 |
| 登録日 | 2026年4月30日12:33 |
| 最終更新日 | 2026年4月30日12:33 |
| CVSS3.0 : 重要 | |
| スコア | 7.8 |
|---|---|
| ベクター | CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| Linux |
| Linux Kernel 6.12 以上 6.12.83 未満 |
| Linux Kernel 6.13 以上 6.18.24 未満 |
| Linux Kernel 6.19 以上 6.19.14 未満 |
| Linux Kernel 6.6.136 未満 |
| Linux Kernel 7.0 以上 7.0.1 未満 |
| No | 変更内容 | 変更日 |
|---|---|---|
| 1 | [2026年04月30日] 掲載 |
2026年4月30日12:33 |
| 概要 | In the Linux kernel, the following vulnerability has been resolved: ALSA: 6fire: fix use-after-free on disconnect In usb6fire_chip_abort(), the chip struct is allocated as the card's Call trace: Fix by moving the card lifecycle out of usb6fire_chip_abort() and into |
|---|---|
| 公表日 | 2026年4月25日0:16 |
| 登録日 | 2026年4月25日4:07 |
| 最終更新日 | 2026年4月27日23:16 |