概要
スペクター(Spectre)は、2018 年 1 月に公開された CPU の投機実行(Speculative Execution)に関する脆弱性を指す。CPU が分岐予測で先読み実行した結果が破棄されても、キャッシュに痕跡が残り、サイドチャネル攻撃で機密情報(パスワード / 暗号鍵)を盗める問題。Spectre / Meltdown 公開以降、Retbleed(2022)/ Zenbleed(2023)/ Downfall(2023)/ Inception(2023)等の派生脆弱性が連続して発見され、CPU セキュリティの根源的問題として認知される。Intel / AMD / ARM の全 CPU が影響、マイクロコード + カーネルパッチで対策中だが性能 5-30% 低下を招く。
主要 CPU 脆弱性年表
| 年 | 脆弱性 | 対象 | 発見者 |
|---|
| 2018-01 | Spectre v1(Bounds Check Bypass) | Intel/AMD/ARM | Google Project Zero |
| 2018-01 | Spectre v2(Branch Target Injection) | Intel/AMD/ARM | 同上 |
| 2018-01 | Meltdown(Rogue Data Cache Load) | Intel | 同上 |
| 2018-05 | Spectre v3a / v4 | Intel | 同上 |
| 2018-05 | Foreshadow(L1 Terminal Fault) | Intel | KU Leuven |
| 2019-05 | MDS(ZombieLoad、RIDL、Fallout) | Intel | Vrije Universiteit |
| 2019-08 | SWAPGS Attack | Intel | Bitdefender |
| 2020-06 | CrossTalk | Intel | VU Amsterdam |
| 2022-07 | Retbleed | Intel/AMD | ETH Zurich |
| 2023-07 | Zenbleed | AMD Zen 2 | Tavis Ormandy |
| 2023-08 | Downfall(Gather Data Sampling) | Intel | Daniel Moghimi |
| 2023-08 | Inception | AMD Zen 3/4 | ETH Zurich |
| 2024-10 | RowPress / RowHammer 派生 | DRAM | 学術 |
| 2025 | Branch Privilege Injection 派生 | Intel | 継続発見 |
攻撃の仕組み(簡略)
1. CPU が「もし条件 A なら」のコードを投機実行
2. 実行結果(メモリアクセス)がキャッシュに残る
3. 条件 A が false で投機実行は破棄
4. しかしキャッシュには痕跡が残る
5. 攻撃者がキャッシュタイミングで秘密情報推定
主要対策
マイクロコードレベル
| 対策 | 説明 |
|---|
| IBRS(Indirect Branch Restricted Speculation) | 分岐予測の権限分離 |
| STIBP(Single Thread Indirect Branch Predictors) | HT 隔離 |
| IBPB(Indirect Branch Predictor Barrier) | バリア命令 |
| Retpoline | 投機返値の回避 |
| eIBRS(拡張 IBRS) | Intel 11 世代以降 |
OS / カーネルレベル
| 対策 | 説明 |
|---|
| KPTI(Kernel Page Table Isolation) | ユーザ↔カーネル分離 |
| BHB Buffer Clear | 分岐履歴クリア |
| L1D Cache Flush | コンテキストスイッチ時 |
| Process Isolation | コンテナ / VM 強化 |
ハードウェア設計レベル
| 対策 | 採用 |
|---|
| AMD Zen 4 設計 | Spectre v2 ハードウェア耐性 |
| Intel 12-15 世代 | eIBRS、ハードウェア対策 |
| Apple M シリーズ | ARM v9、設計時から対策 |
| ARM Cortex-X4 / X5 | BHB クリア標準 |
性能影響
| ワークロード | 性能低下 |
|---|
| 一般 PC 用途 | 1-5% |
| データベース(IO 多い) | 10-15% |
| 仮想化(VM 切替) | 15-30% |
| Web サーバ(コンテキスト切替) | 5-10% |
| ゲーム | 1-3%(CPU バウンドのみ) |
| 機械学習推論 | 1-5% |
OS 別対策状況(2026 年)
Linux
# 脆弱性確認
cat /proc/cpuinfo | grep bug
# bugs : cpu_meltdown spectre_v1 spectre_v2 ...
# 対策有効化(カーネルブートパラメータ)
spectre_v2=on retbleed=auto spec_store_bypass_disable=on
Windows
# PowerShell で脆弱性チェック
Install-Module SpeculationControl
Get-SpeculationControlSettings
macOS
Apple Silicon は設計時から対策、Intel Mac はマイクロコード更新済み。
個人 PC への影響
- パッチ済みなら実害ほぼ無し: マイクロコード + OS 更新で対策
- 性能低下: 古い CPU ほど顕著、新世代は最適化済
- 未対策 PC: 物理アクセス + 高度技術が必要、一般ユーザはリスク低
- クラウド環境: VM / コンテナ間情報漏洩のリスク、Cloud 各社は対策済
ベンチマークでの差(実例)
| CPU | パッチ前 | パッチ後 | 低下率 |
|---|
| Intel i7-7700K(古い) | 100% | 88% | -12% |
| Intel i9-12900K | 100% | 96% | -4% |
| AMD Ryzen 5 5600X | 100% | 97% | -3% |
| AMD Ryzen 9 7950X | 100% | 99% | -1% |
| Apple M3 | 100% | 100% | 0% |
関連用語との違い
| 用語 | 違い |
|---|
| マルウェア | 主にソフト、Spectre は CPU レベル |
| 暗号化攻撃 | アルゴリズム攻撃、Spectre はサイドチャネル |
| Rowhammer | DRAM 攻撃、別系統だが同レベルの根源問題 |
| Heartbleed | OpenSSL 脆弱性、ソフトウェア層 |
よくある質問
Q1: 自分の PC は安全?
A: Windows Update / macOS / Linux カーネル更新を維持していれば対策済。古い CPU + 古い OS の組合せのみリスク高。古い PC 引退の判断材料。
Q2: Apple M シリーズは本当に安全?
A: 設計時から対策で耐性高。ただし完璧ではなく、2024 年に GoFetch(DMP 攻撃)が報告。Apple 修正パッチで緩和、根本対策はハードウェア更新待ち。
Q3: 投機実行を無効化できる?
A: 可能だが性能 30-50% 低下、現実的でない。脆弱性 vs 性能のトレードオフで、業界はマイクロコード対策 + 設計改善で対応。
まとめ
- 2018 年公開の CPU 投機実行脆弱性群、業界の根源問題
- 2026 年も Retbleed / Zenbleed / Downfall 等の派生発見継続
- マイクロコード + OS パッチで対策、Apple M シリーズが設計優位