17
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

posted at

updated at

Meltdown, Spectre脆弱性に関するメモ

1月2日にKernel-memory-leaking Intel processor design flaw forces Linux, Windows redesign(The Register)で報道された脆弱性について、各種文献を読んだ結果をまとめます。
専門外かつ個人的なメモなので間違っている箇所が多くあると思います。すみません。

脆弱性の概要

  • GoogleのProject Zeroによって発見され、2017年6月1日に各ベンダに報告されていた。
  • 本来1月9日に公表される予定であったが、メディアに「憶測による報道」をされたため、現時点でProject ZeroやIntel等からまとまった情報が出てきている
  • CVE-2017-5753, CVE-2017-5715, CVE-2017-5754が関係
  • プロセッサの投機的実行に由来する脆弱性で、主にIntelのPentiumより後のCPUにある問題であるが、一定条件化でAMDやARMも影響を受けるとされる
  • 対策のためカーネルページテーブルアイソレーションという技術が導入されたが、これによりシステムコールの実行パフォーマンスが低下する1
  • この脆弱性により、ユーザープロセスやKVMゲスト上のプロセスからカーネルメモリを読み取られてしまう
  • PoCが存在するが現時点(2018/1/5)では公開されていない。将来公開される。
  • 追記 すでにこれらの脆弱性を実証できるコードが各所で公開されています。例: Meltdown , Spectre

文献など

英語の情報

Qiita上の情報

各OSでの対策

Linux

  • Linux-4.15-rc63, Linux-4.14.114(2018/1/2)にてページテーブルアイソレーションの機能がマージされた
  • KconfigでPAGE_TABLE_ISOLATIONを有効にする必要がある5

確認方法

  • uname -a等で、Linuxカーネルのバージョンが上記の脆弱性緩和策が適用されたもの(Linux-4.14.11以降, など)になっているか確認する
  • cat /proc/cpuinfoを実行し、表示される文字列にcpu_insecureが含まれていることを確認する(AMD製CPUの場合は必要ない)

Windows

最新のWindows 10の場合、2018/1/3のKB4056892に対策が含まれているのでないかと考えられる6

確認方法

KB4056892がインストールされていることを確認するには、設定 > システム > バージョン情報 より、OSビルドが16299.192となっていることを確認する

FreeBSD

現在対応中であり、対応日程は未定である7

macOS

すでに一部については(2017/12/6)の時点で対策が完了(macOS 10.13.2)しており、現在追加の緩和策をテストしている
Intel responds to CPU security flaw as macOS 10.13.2 said to include fix for Macs

ユーザーができる対策

  • OSを常に最新にアップデートする
  • Google Chromeを使用している場合は、Full Site Isolationを有効にする8

Register as a new user and use Qiita more conveniently

  1. You can follow users and tags
  2. you can stock useful information
  3. You can make editorial suggestions for articles
What you can do with signing up
17
Help us understand the problem. What are the problem?