- 新たなSpectre亜種、JITコンパイラにおけるプロセッサの予測動作を悪用
- 研究者、Intel系Linuxシステムに対する実用的な攻撃を実証
- ベンダーは緩和策を公開、セキュリティチームは性能への影響を見極めている段階
数年前にチップメーカーが対応に追われた、あの恐ろしいSpectre脆弱性が再び姿を現したと、専門家らが指摘しています。
オランダのフリーエ大学アムステルダム(Vrije Universiteit)とイタリアのサンタンナ高等研究院(Scuola Superiore Sant’Anna)のセキュリティ研究者らが新たな報告書を公開し、「Branch Target Reuse(BTR)」と呼ぶ攻撃手法の詳細を明らかにしました。
研究者らはこれを、ジャストインタイム(JIT)コンパイラを標的とする、初の実用的なインプレース型Spectre v2攻撃と位置づけています。内容が複雑なため、順を追って整理します。
SpectreとMeltdown
現代のマイクロプロセッサには「投機的実行」と呼ばれる機能が備わっています。プログラムが次にどう動くかを予測して先回りで処理を読み込んでおき、その予測どおりになった場合に素早く実行できる仕組みです。
プロセッサは繰り返し現れるパターンを監視して記憶しようともします。しかしこの仕組みは、いわゆる「サイドチャネル攻撃」の入り口にもなります。攻撃者は、システムに直接アクセスする代わりに、処理時間や消費電力といった間接的な手がかりを観測して情報を盗み出せるのです。
2017年、セキュリティ研究者らは、投機的実行がサイドチャネル攻撃で悪用されうることを発見しました。ここから生まれた2つの脆弱性が、SpectreとMeltdownです。ほぼすべてのチップが影響を受けるほど広範囲に及び、深刻度も高かったため、業界全体がソフトウェアパッチによる修正に奔走しました。一部は成功したものの、全体としては成功というより混乱に近い結果でした。多くのチップの性能が大幅に低下し、完全に動作不能になったコンピューターもありました。
SpectreとMeltdownは最終的に修正されましたが、それ以降、模倣や亜種が数え切れないほど登場しています。今回新たに見つかったのが、Branch Target Reuse(BTR)と呼ばれる亜種です。
BTR
プロセッサは、繰り返し現れるパターンを「記憶」する際、分岐ターゲットバッファ(BTB)と呼ばれる領域に保存します。一方、「JIT」という要素もあります。ジャストインタイムの略で、プログラムの実行前ではなく実行中にコードをネイティブの機械語命令へ変換するコンパイラです。実際には、JITはメモリアドレスXにコードを生成し、その後それを何度も実行します。CPUはそのパターンを学習し、同じ動作を繰り返そうとします。
ところが、JITがそのコードを削除してアドレスXに別のコードを置くと、問題が始まります。CPUはそれでも、まずXへ分岐しようとするためです。これがBranch Target Reuseです。CPUは最終的に古い習慣がもう通用しないと気づきますが、研究者らはその間のわずかな隙を突くことに成功しました。
BTRが特に危険なのは、悪用するのに新たなマルウェアが不要な点です。攻撃者は、実行を別のバイトオフセットから開始すると、機械語のバイト列が異なる意味を持ちうるという性質を利用するだけで済みます。
論文では、Intel系Linuxカーネルを標的にできる2つの概念実証(PoC)エクスプロイトが詳述されています。cBPFが提供する定数バインディング防御を備えていても、rootパスワードのハッシュが漏えいします。想定される漏えい速度は、Intel Raptor Coveチップで5.7 KB/秒、Lion Coveで5.4 KB/秒です。The Registerによると、これは「遅いものの、権限のないユーザーが脆弱なシステムから機密性の高いパスワードハッシュを引き出すには十分」な速度です。
Linuxカーネルの開発者とOracleは緩和策を公開しました。これらのバグには2件のCVE、CVE-2026-64507とCVE-2026-64508が割り当てられています。Mozillaはサイト分離により重点を置く方針を決めました。IBPBはおそらく有効ですが、マシンの動作が遅くなります。研究者らは「ベンダーのパッチが利用可能になり次第、OSとソフトウェアを更新してください」と呼びかけています。「LinuxカーネルとOracleの双方がすでにパッチを公開しています」
Branch Target Reuseの論文はこちらのリンクから読めます。査読を経て、セキュリティ分野の主要な学術会議であるACM CCS 2026に採択されました。同会議は今年11月中旬、オランダのハーグで開催される予定です。