| タイトル | LinuxのLinux Kernelにおける不特定の脆弱性 |
|---|---|
| 概要 | Linuxカーネルにおいて、以下の脆弱性が修正されました。bpf: PROBE_MEM32 ストアに対する定数ブラインドの修正です。BPF_ST | BPF_PROBE_MEM32 の即値ストアは bpf_jit_blind_insn() によって処理されておらず、bpf_jit_harden が1以上の場合にユーザー制御の32ビット即値がJITコンパイルされたネイティブコードにブラインドされずに残ってしまいます。根本原因は、convert_ctx_accesses() が検証時に BPF_ST|BPF_MEM を BPF_ST|BPF_PROBE_MEM32 に書き換え、bpf_jit_blind_constants() がJITコンパイル中に実行される前にこれが行われていることです。ブラインドの切り替えは BPF_ST|BPF_MEM(モード0x60)のみにマッチし、BPF_ST|BPF_PROBE_MEM32(モード0xa0)にはマッチしません。そのため、命令はブラインドされずに通過してしまっていました。bpf_jit_blind_insn() に既存の BPF_ST|BPF_MEM ケースと並べて BPF_ST|BPF_PROBE_MEM32 ケースを追加しました。ブラインド変換は同一で、ブラインドされた即値を mov と xor を使って BPF_REG_AX にロードし、その後即値ストアをレジスタストア(BPF_STX)に変換します。書き換えられた STX 命令は BPF_PROBE_MEM32 モードを保持しなければならず、これによりアーキテクチャのJITは正しいアリーナアドレッシング(x86-64では R12 ベース)を生成します。ここで BPF_STX_MEM() マクロは BPF_MEM モードをハードコードしているため使えません。そのため、命令を直接構築する必要があります。 |
| 想定される影響 | 当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 また、当該ソフトウェアが扱う情報について、書き換えは発生しません。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 |
| 対策 | リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。 |
| 公表日 | 2026年4月2日0:00 |
| 登録日 | 2026年4月27日10:52 |
| 最終更新日 | 2026年4月27日10:52 |
| 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.13 以上 6.18.21 未満 |
| Linux Kernel 6.19 以上 6.19.11 未満 |
| Linux Kernel 6.9 |
| Linux Kernel 6.9.1 以上 6.12.80 未満 |
| Linux Kernel 7.0 |
| No | 変更内容 | 変更日 |
|---|---|---|
| 1 | [2026年04月27日] 掲載 |
2026年4月27日10:52 |
| 概要 | In the Linux kernel, the following vulnerability has been resolved: bpf: Fix constant blinding for PROBE_MEM32 stores BPF_ST | BPF_PROBE_MEM32 immediate stores are not handled by The root cause is that convert_ctx_accesses() rewrites BPF_ST|BPF_MEM Add BPF_ST|BPF_PROBE_MEM32 cases to bpf_jit_blind_insn() alongside the The rewritten STX instruction must preserve the BPF_PROBE_MEM32 mode so |
|---|---|
| 公表日 | 2026年4月2日21:16 |
| 登録日 | 2026年4月27日12:21 |
| 最終更新日 | 2026年4月25日0:21 |
| 構成1 | 以上 | 以下 | より上 | 未満 | |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.9.1 | 6.12.80 | |||
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.13 | 6.18.21 | |||
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.19 | 6.19.11 | |||
| cpe:2.3:o:linux:linux_kernel:6.9:-:*:*:*:*:*:* | |||||
| cpe:2.3:o:linux:linux_kernel:7.0:rc1:*:*:*:*:*:* | |||||
| cpe:2.3:o:linux:linux_kernel:7.0:rc2:*:*:*:*:*:* | |||||
| cpe:2.3:o:linux:linux_kernel:7.0:rc3:*:*:*:*:*:* | |||||
| cpe:2.3:o:linux:linux_kernel:7.0:rc4:*:*:*:*:*:* | |||||
| cpe:2.3:o:linux:linux_kernel:7.0:rc5:*:*:*:*:*:* | |||||
| cpe:2.3:o:linux:linux_kernel:7.0:rc6:*:*:*:*:*:* | |||||
| cpe:2.3:o:linux:linux_kernel:7.0:rc7:*:*:*:*:*:* | |||||