VMのメモリ暗号化による クラウド管理者への情報漏洩の防止

Slides:



Advertisements
Similar presentations
九州工業大学 塩田裕司 光来健一.  仮想マシンは必要なときだけ動かす使い方が一般 的 ◦ 一台の計算機上に複数の計算機を仮想的に作成できる ◦ デスクトップ  異なる OS を使用するため作成 ◦ サーバ  最大負荷に合わせた数の仮想マシンを作成  長期間使わない仮想マシンも存在する VM.
Advertisements

九州工業大学大学院 情報工学府 情報創成工学専攻 塩田裕司.  仮想マシン( VM )は必要なときだけ動かすこと が多い ◦ クラウドでもデスクトップでも ◦ 長期間使わない VM が存在する  VM の再開時に攻撃を受ける可能性が高くなる ◦ 停止中に OS やアプリケーションの脆弱性が発見されるこ.
ファイルキャッシュを考慮したディスク監視のオフロード
セキュリティ機構のオフロードを考慮した仮想マシンへの動的メモリ割当
クラウド上の仮想マシンの安全なリモート監視機構
クラウドにおける ネストした仮想化を用いた 安全な帯域外リモート管理
Xenを用いたクラウドコンピュー ティングにおける情報漏洩の防止
IaaS 仮想マシン(VM)をネットワーク経由で提供 負荷に応じてVM数や性能を変更できる ハードウェアの導入・管理・維持コストの削減
中村孝介(九州工業大学) 光来健一(九州工業大学/JST CREST)
KVMにおけるIDSオフロードのための仮想マシン監視機構
仮想マシンの並列処理性能に対するCPU割り当ての影響の評価
クラウドにおけるライブラリOSを用いた インスタンス構成の動的最適化
ファイルシステムキャッシュを 考慮した仮想マシン監視機構
メモリ暗号化による Android端末の盗難対策
XenによるゲストOSの解析に 基づくパケットフィルタリング
クラウドにおけるアプリケーション単位での VM構成の動的最適化
帯域外リモート管理を継続可能な マイグレーション手法
大きな仮想マシンの 複数ホストへのマイグレーション
ファイルシステムキャッシュを 考慮したIDSオフロード
ネストした仮想化を用いた VMの安全な帯域外リモート管理
帯域外リモート管理の継続を 実現可能なVMマイグレーション手法
VMマイグレーションを可能にするIDSオフロード機構
IaaS型クラウドにおける キーボード入力情報漏洩の防止
クラウドの内部攻撃者に対する安全なリモートVM監視機構
アスペクト指向プログラミングを用いたIDSオフロード
サスペンドした仮想マシンの オフラインアップデート
AMD64の仮想化技術を利用した 仮想マシンモニタの実装
KVMにおける仮想マシンの 内部監視機構の実装と性能評価
仮想マシン間にまたがる プロセススケジューリング
Xenによる ゲストOSの監視に基づく パケットフィルタリング
セキュリティ機構のオフロードを考慮した 仮想マシンのスケジューリング
仮想マシンモニタによる きめ細かい パケットフィルタリング
VMのメモリ暗号化によるクラウド管理者への情報漏洩の防止
VM専用仮想メモリとの連携による VMマイグレーションの高速化
IaaS型クラウドにおける インスタンス構成の動的最適化手法
仮想マシン間プロセススケジューリングの 実環境への適用にむけて
暗号化された仮想シリアルコンソールを 用いたVMの安全な帯域外リモート管理
リモートホストの異常を検知するための GPUとの直接通信機構
シャドウデバイスを用いた 帯域外リモート管理を継続可能なVMマイグレーション
仮想メモリを用いた VMマイグレーションの高速化
複数ホストに分割されたメモリを用いる仮想マシンの監視機構
ネストしたVMを用いた 仮想化システムの高速なソフトウェア若化
仮想計算機を用いたサーバ統合に おける高速なリブートリカバリ
仮想シリアルコンソールを用いた クラウドの安全なリモート管理
クラウドにおけるIntel SGXを用いた VMの安全な監視機構
IaaS環境におけるVMのメモリ暗号化による情報漏洩の防止
クラウドにおけるVMリダイレクト攻撃を防ぐためのリモート管理機構
未使用メモリに着目した 複数ホストにまたがる 仮想マシンの高速化
仮想マシンを用いた 既存IDSのオフロード
Intel SGXを利用するコンテナの マイグレーション機構
Intel SGXを用いた仮想マシンの 安全な監視機構
軽量な仮想マシンを用いたIoT機器の安全な監視
複数ホストにまたがって動作する仮想マシンの障害対策
VMMのソフトウェア若化を考慮した クラスタ性能の比較
信頼できないクラウドにおける仮想化システムの監視機構
Cell/B.E.のSPE Isolationモードを用いた監視システム
仮想マシンの監視を継続可能なマイグレーション機構
仮想マシンと物理マシンを一元管理するための仮想AMT
仮想化システムのソフトウェア若化のための軽量なVMマイグレーション
仮想マシンに対する 高いサービス可用性を実現する パケットフィルタリング
Cell/B.E. のSPE上で動作する 安全なOS監視システム
VMリダイレクト攻撃を防ぐための 安全なリモート管理機構
ゼロコピー・マイグレーションを 用いた軽量なソフトウェア若化手法
仮想化システムの 軽量なソフトウェア若化のための ゼロコピー・マイグレーション
強制パススルー機構を用いた VMの安全な帯域外リモート管理
IPmigrate:複数ホストに分割されたVMの マイグレーション手法
複数ホストにまたがるVMの メモリ使用状況に着目した高速化
Virtual Machine Introspectionを可能にするVMCryptの拡張 田所秀和 光来健一 (九州工業大学)
強制パススルー機構を用いた VMの安全な帯域外リモート管理
管理VMへの キーボード入力情報漏洩の防止
Presentation transcript:

VMのメモリ暗号化による クラウド管理者への情報漏洩の防止 田所 秀和 (東工大) 内田 昴志 (九工大) 光来 健一 (九工大/JST CREST) 千葉 滋 (東工大)

クラウドコンピューティングの普及 ネットワークを通して計算機やソフトウェアなどのサービスを提供 Infrastructure as a Service (Iaas) 仮想マシン(VM)を提供 クラウド管理者とゲストOSの管理者は異なる クラウド管理者が信用できるとは限らない 従来はマシンの管理者とOSの管理者は同じ サービス

クラウド管理者への情報漏洩 クラウド管理者はユーザVMのメモリから情報を盗むことが可能 例:パスワード、ファイルキャッシュの内容 ハイパーバイザ型の場合 クラウド管理者は特権VMを使いユーザVMを管理 特権VMはユーザVMのメモリを読み書き可能 特権VM ディスク ユーザVM 保存 仮想マシンモニタ メモリ読み込み 漏洩 メモリ サスペンド

VMCrypt: VMメモリの暗号化 特権VMによるアクセス時にVMMがユーザVMのメモリを暗号化 漏えいして困る情報ではない 特権VM ディスク ユーザVM 保存 VMCrypt VMM 暗号化メモリ メモリ 暗号化 サスペンド

安全なサスペンド・レジューム Xen上の準仮想化Linuxの場合 4種類の非暗号化ページ ドメイン0 shared_info start_info page table P2M table 暗号化 メモリ サスペンドされるドメインU レジュームされたドメインU ディスク 保存 復元 非暗号化ページ

VMメモリの暗号化・復号化 ドメイン0によるメモリマップ時に暗号化、アンマップ時に復号化 VMMがページテーブルの変更を検出 ハイパーコール(マップ時) ページフォールト(アンマップ時) ドメインUのメモリを上書きして暗号化 暗号化鍵はVMM内に保持 ドメインUの停止中に行う ドメイン0 ドメインU VMCrypt VMM マシンページ

VMメモリの暗号化・復号化 ドメイン0によるメモリマップ時に暗号化、アンマップ時に復号化 VMMがページテーブルの変更を検出 ハイパーコール(マップ時) ページフォールト(アンマップ時) ドメインUのメモリを上書きして暗号化 暗号化鍵はVMM内に保持 ドメインUの停止中に行う ドメイン0 ドメインU VMCrypt VMM マシンページ マップ時に暗号化

VMメモリの暗号化・復号化 ドメイン0によるメモリマップ時に暗号化、アンマップ時に復号化 VMMがページテーブルの変更を検出 ハイパーコール(マップ時) ページフォールト(アンマップ時) ドメインUのメモリを上書きして暗号化 暗号化鍵はVMM内に保持 ドメインUの停止中に行う ドメイン0 ドメインU VMCrypt VMM マシンページ アンマップ時に復号化

非暗号化ページの識別(1/2) shared_infoページ start_infoページ VMMとドメインUの情報共有に使用 ブート時はrsiレジスタ、レジューム時はedxレジスタ ドメインU VMM ドメイン0 start_info shared_info

非暗号化ページの識別(2/2) P2M(Physical to Machine)テーブル ページテーブル サスペンド時はshared_infoからテーブルをたどれる レジューム時に識別するためにテーブル情報を保存 暗号化してドメインUの空きメモリに保存 ページテーブル サスペンド時はVMMが管理するページタイプで識別 レジューム時はP2Mテーブルと同様に実装予定 現在はドメイン0から通知 ドメインU ドメイン0 P2M ページテーブル shared_info

再設計:非暗号化ページの識別 非暗号化ページを識別するビットマップを管理 ドメインUの空きメモリ上に用意 VMMにより暗号化 ブート時にVMMがビットマップを作成 ページテーブルはCR3レジスタからたどる 実行時にビットマップを更新 例:ページテーブルの拡張 ドメイン0に監視させたいページも登録可能 サスペンド・レジューム時の識別の 単純化 これまではマップ時に毎回非暗号化判定 shared_info start_info page table p2m table 暗号化 ページ ビット マップ

実験 サスペンド・レジュームの実行時間を測定 暗号化サスペンドに時間がかかる メモリ割り当て量を変化 XORで暗号化・復号化 非暗号化ページの判定が ページ数の2乗の計算量 ビットマップを作ることで 改善できる CPU: Xeon 2.67GHz 8コア メモリ: 12Gb VMM: Xen 4.0.1 Dom0: Linux 2.6.32.24 DomU: Linux 2.6.32.25

関連研究 Trusted Cloud Computing [Santos et al. HotCloud'09] VMを管理者が信頼できるサイトにだけ移動させる 信頼できないサイトでは動かせない Domain Disaggregation [Murray et al. VEE'08] ドメイン作成専用のドメインBを用意 管理者はドメインBから情報を盗める Bitvisor [Shinagawa et al. VEE'09] VMMがディスクやネットワークを暗号化 メモリは暗号化しない

まとめと今後の課題 クラウド管理者への情報漏洩を防ぐVMCryptを提案 今後の課題 特権VMのアクセス時にVMMがVMのメモリを暗号化 Xenへプロトタイプ実装 今後の課題 非暗号化ページ識別の実装を完成させる ライブマイグレーションへの対応 ドメインを動かしたままメモリアクセス 完全仮想化に対応 VRAMなど多くのメモリにドメイン0がアクセス