Meltdown
Meltdown とは何ですか?
Meltdownアウトオブオーダー実行と権限チェックの遅延を悪用し、非特権コードがカーネルメモリを読み出せるようにするマイクロアーキテクチャ脆弱性(CVE-2017-5754)。
Meltdown は 2018 年 1 月に Spectre と同時に公表され、多くの Intel CPU と一部の ARM CPU に影響しました。欠陥は、ページ権限を侵害する load 命令が例外発生前に値を後続の一過性命令へ伝播し、依存する load がキャッシュに痕跡を残して保護されたバイトを露呈する点にあります。ユーザーモードのプロセスがカーネル全空間を毎秒メガバイト単位で吸い出せました。主な緩和策は OS 側のカーネルページテーブル分離(KPTI/KAISER)で、加えてマイクロコード更新と後続 CPU でのシリコン再設計が行われました。現在は最新ハードウェアとパッチ済みカーネルでほぼ収束していますが、見えないアーキテクチャ前提が壊滅的なセキュリティ事故を生み得ることを示しました。
● 例
- 01
脆弱な Intel CPU 上で非特権プロセスから /etc/shadow を出力する PoC。
- 02
2018 年初頭にクラウドで実施された KPTI 展開によるテナント越境カーネル読み取りの抑止。
● よくある質問
Meltdown とは何ですか?
アウトオブオーダー実行と権限チェックの遅延を悪用し、非特権コードがカーネルメモリを読み出せるようにするマイクロアーキテクチャ脆弱性(CVE-2017-5754)。 サイバーセキュリティの 脆弱性 カテゴリに属します。
Meltdown とはどういう意味ですか?
アウトオブオーダー実行と権限チェックの遅延を悪用し、非特権コードがカーネルメモリを読み出せるようにするマイクロアーキテクチャ脆弱性(CVE-2017-5754)。
Meltdown からどのように防御しますか?
Meltdown に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。
Meltdown の別名は何ですか?
一般的な別名: Rogue Data Cache Load。