| Title | LinuxのLinux Kernelにおける解放済みメモリの使用に関する脆弱性 |
|---|---|
| Summary | Linuxカーネルにおいて、以下の脆弱性が修正されました。KVMのx86に関して、MMIOフラグメントのスクラッチフィールドを使用して小さな書き込み値を保持します。エミュレートされたMMIO書き込みサービスがユーザースペースに戻る際、データペイロードのサイズが8バイト以下(つまり単一のチャンクに収まる場合)は、フラグメントを直接ソース値に指すのではなく、MMIOフラグメントのスクラッチフィールドに書き込み予定の値をコピーします。これにより、エミュレータがスタック上のローカル変数をソースとして書き込みを開始し、書き込みがページ境界をまたぎ、かつ両方のページがMMIOページである場合に発生するuse-after-freeバグの一種が修正されます。KVMのABIは物理的に連続したMMIOリクエストのみを許可するため、MMIOページをまたぐアクセスは2つのフラグメントに分割され、ユーザースペースに一度に1つずつ送信されます。KVMは最初のフラグメントの後にKVM_RUN応答でユーザースペースMMIOを完了しようとすると、2つ目のフラグメントを検出して2回目のユーザースペース退出を生成し、スタック上の変数を参照します。この問題は、2回目のKVM_RUNが別のタスクによって実行された場合に最も顕著で、その場合は開始したタスクのスタックが実際に解放されたデータとして現れます。バグはKASANのuse-after-freeエラーで検出され、具体的なスタックトレースが示されます。このバグはKVM-Unit-Testでも再現可能で、complete_emulated_mmio()内で大きなスタック変数をゴミ値で上書きするようKVMを改変して再現されます。スクラッチフィールドの使用は8バイト以下の書き込みに限定され、より大きなアクセスや読み取りはエミュレータの実装詳細に影響を与えません。将来的な変更に備えて整合性チェックも追加されています。 |
| Possible impacts | 当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃により、他のソフトウェアにも影響が及ぶ可能性があります。 |
| Solution | リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。 |
| Publication Date | April 24, 2026, midnight |
| Registration Date | April 30, 2026, 11:05 a.m. |
| Last Update | April 30, 2026, 11:05 a.m. |
| CVSS3.0 : 重要 | |
| Score | 8.8 |
|---|---|
| Vector | CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H |
| Linux |
| Linux Kernel 3.5 以上 6.6.136 未満 |
| Linux Kernel 6.13 以上 6.18.24 未満 |
| Linux Kernel 6.19 以上 6.19.14 未満 |
| Linux Kernel 6.7 以上 6.12.83 未満 |
| Linux Kernel 7.0 以上 7.0.1 未満 |
| No | Changed Details | Date of change |
|---|---|---|
| 1 | [2026年04月30日] 掲載 |
April 30, 2026, 11:05 a.m. |
| Summary | In the Linux kernel, the following vulnerability has been resolved: KVM: x86: Use scratch field in MMIO fragment to hold small write values When exiting to userspace to service an emulated MMIO write, copy the This fixes a class of use-after-free bugs that occur when the emulator The issue is most visible if the second KVM_RUN is performed by a separate ================================================================== CPU: 1 PID: 984 Comm: syz-executor417 Not tainted 5.10.0-182.0.0.95.h2627.eulerosv2r13.x86_64 #3 The buggy address belongs to the page: Memory state around the buggy address: The bug can also be reproduced with a targeted KVM-Unit-Test by hacking Limit the use of the scratch fields to 8-byte or smaller accesses, and to |
|---|---|
| Publication Date | April 25, 2026, 12:16 a.m. |
| Registration Date | April 25, 2026, 4:07 a.m. |
| Last Update | April 29, 2026, 5:42 a.m. |
| Configuration1 | or higher | or less | more than | less than | |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 3.5 | 6.6.136 | |||
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.7 | 6.12.83 | |||
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.13 | 6.18.24 | |||
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.19 | 6.19.14 | |||
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 7.0 | 7.0.1 | |||