1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【セキュリティ】Spectre / Meltdownとは?サイドチャネル攻撃の代表例を解説

Last updated at Posted at 2025-08-20

はじめに

2018年に発表された「Spectre」と「Meltdown」は、現代のCPUに潜む設計上の脆弱性を突いたサイドチャネル攻撃の代表例です。
単なる理論的な話ではなく、研究者による実際の攻撃コード(PoC)が公開されている実証済みの脆弱性であり、世界中のOSやクラウドサービスに影響を与えました。

本記事では、Spectre/Meltdownの仕組み・影響・対策を整理します。


1. サイドチャネル攻撃とは

暗号やCPUのアルゴリズム自体を破るのではなく、副次的な情報(処理時間、キャッシュ、電力消費など)を利用して秘密を推測する攻撃を指します。

Spectre/Meltdownは、この「サイドチャネル攻撃」の一種です。


2. Spectre / Meltdown の概要

(1) 投機的実行とは?

CPUは高速化のために「分岐の結果を予測」し、先回りして命令を実行します(投機的実行)。
予測が外れた場合は結果を破棄しますが、キャッシュの痕跡は残ってしまうという問題があります。

(2) Meltdown

  • 主にIntel CPUが対象
  • 本来アクセスできないカーネルメモリを、投機的実行を経由してユーザープロセスから読み出せてしまう
  • 権限分離の崩壊につながる深刻な脆弱性

(3) Spectre

  • Intel / AMD / ARM など広範囲のCPUが対象
  • 投機的実行をわざと誤誘導し、任意のメモリをキャッシュに読み込ませる
  • 他プロセスやサンドボックスを越えてデータを盗み出せる可能性がある

3. 実際に攻撃は起きたのか?

  • PoC(実証コード)は存在
    • 研究者が公開したコードにより、秘密情報を読み出すことが可能であることが実証済み
    • JavaScript経由でのブラウザ攻撃PoCもGoogleが確認
  • 大規模な攻撃事例は未報告
    • 当時は「野生環境での攻撃事例」は確認されていない
    • ただしPoCが存在する以上、悪用は十分に可能

4. 影響範囲

  • PC、スマートフォン、クラウドサーバーを含むほぼすべてのモダンCPUが影響を受ける。
  • 特にクラウド環境では「他ユーザの情報が漏洩する」リスクが深刻。

5. 対策

OS / ソフトウェア

  • KPTI (Kernel Page Table Isolation) によるカーネルメモリ分離
  • コンパイラ修正(投機的実行を制御するバリア命令の挿入)
  • ブラウザ側でのタイマー精度の低下投機実行防止策

ハードウェア

  • 新世代CPUでは、投機的実行の管理を改善し対策が組み込まれている

トレードオフ

  • 一部の対策では数%〜数十%の性能低下が報告されている

6. 図解(Mermaid)


まとめ

  • Meltdown:カーネルメモリを直接読み出す脆弱性(Intel中心)。
  • Spectre:投機的実行を誤誘導し、他プロセスからデータを漏洩。
  • 研究者によるPoCが存在し「理論ではなく実証済み」の攻撃。
  • 大規模攻撃事例は未報告だが、クラウド環境などでは特に注意が必要。

参考リンク

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?