インフラセキュリティの処方箋

第42回 2018年1月~MeltdownとSpectre~現代的なCPUのしくみに根差した脆弱性 / 外部ネットワークを使うためのちょっとした注意

この記事を読むのに必要な時間:およそ 2 分

1月に入ってほどなく,Intel CPUに脆弱性が存在する旨の情報が公開されました。

情報が公開されてからしばらくは情報が錯綜していましたが,現在は(まだ一部のPoC類は)公開されていないものの,議論も収束した感があります。

Meltdown and Spectre
https://meltdownattack.com/

脆弱性の概要と影響

2018年1月3日に,Project Zeroより以下のblogが公開されました。

Reading privileged memory with a side-channel
https://googleprojectzero.blogspot.jp/2018/01/reading-privileged-memory-with-side.html

このblogでは,MeltdownとSpectreという2つの脆弱性に関する情報を公開しています。MeltdownとSpectreの脆弱性は,以下のことを行われる恐れがあるとあります。

MeltdownとSpectre

MeltdownとSpectre

Meltdown

本来CPUにより保護され,参照できないはずの,他のプロセスやカーネルのメモリ領域を読み出せる。上記blog中「Variant 3: rogue data cache load (CVE-2017-5754)」に対応する。

Spectre

本来CPUに保護され,参照できないはずの,他のプロセスのメモリ領域を読み出せる。上記blog中,⁠Variant 1: bounds check bypass (CVE-2017-5753)」「Variant 2: branch target injection (CVE-2017-5715)」に対応する。

現時点で影響を受けるのは,プログラムに書かれた順序で命令実行をするのではなく,CPU内で実行順序を入れ替える「アウトオブオーダ実行」などの投機的実行をサポートするプロセッサとされています。このため,少なくともCPUについては,Pentium Pro(1995年リリース)以降のものが本脆弱性の影響を受けるとされます。

本脆弱性はあくまで命令の投機的実行に根差した脆弱性です。このため,たとえばアウトオブオーダ実行をサポートしない Intel Atomプロセッサ(2011年9月に出荷開始されたSaltwellマイクロアーキテクチャのものまで)は本脆弱性の影響を受けません。

本脆弱性の影響を考慮すべき環境

本脆弱性は,OSによる対処とCPUのマイクロコードを入れ替える対処が関係ベンダからリリースされています。

Windows Client Guidance for IT Pros to protect against speculative execution side-channel vulnerabilities
https://support.microsoft.com/en-us/help/4073119/protect-against-speculative-execution-side-channel-vulnerabilities-in

対処したほうがよいのはわかっているのですが,性能に影響を与える投機実行の部分に手が入るため,以下のような特性を持つシステムでは,少し慎重になってもよいというのが筆者の意見です。いずれの条件も,ユーザ側ではなくサーバ側では普通にありうるものと考えています。

  • 限られたユーザが決められたプログラムを動作させるようなシステム
  • ギリギリの性能設計を行っているシステム
Intelによる性能検証結果
https://newsroom.intel.com/wp-content/uploads/sites/11/2018/01/Blog-Benchmark-Table.pdf

逆に,ユーザが自分の都合でさまざまなプログラムを動作させうる可能性がある場合には,本脆弱性の対応を行うべきでしょう。特に,SpectreのようにJavascriptでもトリガ可能な脆弱性の場合,対処しないことは悪意あるWebサイトやプラグイン等を経由した情報窃取のリスクとなります。

著者プロフィール

宮本久仁男(みやもとくにお)

某SIerに勤務する,どこにでもいる技術者。

OSやネットワーク技術に興味を持ち,その延長でセキュリティ技術にも興味を持って,いろんな調査や研究を手がけてます。

自分で思考を巡らしたり検証したり,というのももちろん好きで,あれこれやってます。もちろん他の人に迷惑はかけない範囲で……ですが。

博士(情報学),技術士(情報工学)。

URL:http://d.hatena.ne.jp/wakatono/

監訳書の1つ:実践Metasploit

コメント

コメントの記入