ニュース
» 2018年10月30日 08時00分 公開

キャッシュを複数のバケットに分割:MITの研究チーム、「Meltdown」や「Spectre」の脆弱性に新しい対策を考案

マサチューセッツ工科大学(MIT)のComputer Science and Artificial Intelligence Laboratory(CSAIL)の研究チームが、「Meltdown」や「Spectre」のような脆弱性を悪用しにくくする新しいアプローチ「DAWG(Dynamically Allocated Way Guard)」を開発した。

[@IT]

 米国マサチューセッツ工科大学(MIT)は2018年10月18日(米国時間)、MITのComputer Science and Artificial Intelligence Laboratory(CSAIL:コンピュータサイエンス人工知能研究所)の研究チームが、「Meltdown」や「Spectre」などのCPUの脆弱(ぜいじゃく)性を悪用しにくくする新しいアプローチを開発したと発表した。

 MeltdownやSpectreは、現代的なCPUのアーキテクチャに起因する脆弱性で、2018年1月に明らかになったもの。例えば暗号ライブラリ自体に脆弱性がなかったとしても、暗号キーを盗みとられてしまう。IntelやAMD、Armの幅広いCPUが影響を受けることが分かり、業界で大きな反響を呼んだ。

 研究チームが開発した「DAWG(Dynamically Allocated Way Guard)」というアプローチは、MeltdownやSpectreのようにCPUの投機的実行を悪用する攻撃を防ぐことを第一の目的としている。

 MeltdownやSpectreは投機的実行後にキャッシュに残った記録から不正に情報を読み出す。これを防ぐために、キャッシュを複数のバケット(bucket)に分割する仕組みを採用した。さらにバケットのサイズが時間とともに変動する。研究チームによれば、DAWGはクラウドコンピューティングのセキュリティ向上に直ちに活用できるという。

 DAWGが採用したのは、「セキュアウェイパーティショニング」と呼ばれるアプローチの一種。このアプローチは、Intelが2016年から投機的実行の悪用を防ぐために採用している「Cache Allocation Technology(CAT)」技術の弱点を克服しようとするものだ。

 DAWGは投機的実行の結果、ヒットキャッシュ、ミスしたキャッシュ、キャッシュのメタデータの更新において、他の保護ドメインからのアクセスを完全に分離する(攻撃者のコードが置かれたドメインからのアクセスを防ぐ)。これはCATよりも幅広い攻撃に対応できることを意味する。さらに研究チームはテストの結果、DAWGのパフォーマンスがCATに匹敵することも確認した。

 研究者は次のように述べている。「われわれは、DAWGが重要な前進だと考えている。リソースを効率的かつ動的に割り当てる優れた方法を、コンピュータアーキテクトやクラウドプロバイダーなどのITプロフェッショナルに提供するからだ。DAWGのアプローチは、情報共有がどこで行われるべきで、どこで行われるべきでないかという明確な境界を確立する。機密情報を扱うプログラムが、データを安全に保持できるようにするためだ」

 DAWGはまだ、投機的実行を悪用する全ての攻撃を防げるわけではない。だが、研究チームは実験の結果、仮想マシン内にある暗号化ライブラリに対する攻撃など、投機的実行とは無関係の攻撃も防げることを実証した。

 研究チームは現在、DAWGの改良に取り組み、投機的実行を悪用する既知の攻撃を全て防止できるよう改善を続けている。DAWGが能力を発揮するにはOSに加えてCPUのキャッシュを担当する回路に最小限の変更が必要だ。データ侵害が将来発生する可能性を最小限に抑えるために、Intelのような企業にDAWGのアイデアが採用されることを期待しているという。

 なお、研究チームはDAWGについてまとめた論文を、2018年10月20〜24日に福岡で開催されたコンピュータ関連の年次学会「IEEE/ACM International Symposium on Microarchitecture(MICRO)」で発表した。

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。