強制パススルー機構を用いた VMの安全な帯域外リモート管理

Slides:



Advertisements
Similar presentations
ファイルキャッシュを考慮したディスク監視のオフロード
Advertisements

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

強制パススルー機構を用いた VMの安全な帯域外リモート管理 九州工業大学 二神翔太 鵜木智矢 光来健一

クラウドにおける帯域外リモート管理 IaaS型クラウドが普及 VMに対する帯域外リモート管理を提供 ユーザに仮想マシン(VM)を提供 雲の右側に「クラウド」とかく 仮想化システム ユーザ 仮想 デバイス ユーザVM 入出力 クラウド

帯域外リモート管理における情報漏洩 仮想化システムの管理者は信頼できるとは限らない 仮想デバイスから入出力を盗聴される可能性 サイバー犯罪の28%は内部犯行 [PwC '14] 管理者の35%が機密情報に無断でアクセス [CyberArk '09] 仮想デバイスから入出力を盗聴される可能性 仮想デバイスは仮想化システムの管理者が管理 容易にログインパスワードなどの機密情報を盗まれる 仮想化システム ユーザ 管理者 仮想 デバイス ユーザVM 入出力

従来のアプローチ [Egawa+'12] ユーザとハイパーバイザの間で入出力を暗号化 ? 仮想デバイスからの情報漏洩を防ぐ 仮想デバイスは暗号化された情報しか取得できない 仮想化システム内のハイパーバイザを信頼することにより安全性を担保 仮想化システム ハイパーバイザ ユーザ リモート管理 クライアント 入出力 仮想 デバイス 管理者 ユーザVM ?

従来のアプローチの問題点(1/2) ハイパーバイザを攻撃するのは比較的容易 仮想化システムの管理が困難 ハイパーバイザとその上で動作する管理コンポーネントは密接に結びついている 仮想化システムの管理が困難 信頼できない管理者はハイパーバイザを管理できない 少数の信頼できる管理者だけで管理しなければならない 仮想化システム    ハイパーバイザ 管理者 仮想 デバイス ユーザVM 信頼度 信頼度と人数の関係

従来のアプローチの問題点(2/2) 特定の仮想化システムにのみ適応可能 既存のリモート管理ソフトウェアが利用できない ハイパーバイザのみ信頼するには、ハイパーバイザが分離されている必要 既存のリモート管理ソフトウェアが利用できない 入出力の暗号化・復号化処理の追加が必要 仮想化システム Linux + KVM 仮想 デバイス ユーザVM Xenハイパーバイザ ユーザ リモート管理 クライアント

提案:VSBypass 仮想化システムの外側で帯域外リモート管理を実現 仮想デバイスを仮想化システムの外側で動作させる これをシャドウデバイスと呼ぶ 強制パススルーによりユーザVMの入出力を横取り シャドウデバイスで入出力処理を行う 仮想化システムの管理者への情報漏洩を防ぐ ユーザ 仮想化システム ユーザVM 入出力 シャドウ デバイス 仮想 デバイス 強制パススルー

VSBypassのシステム構成 ネストした仮想化を用いて、従来の仮想化システム全体をVM内で動かす このVMをクラウドVMと呼ぶ クラウドVMの下でクラウドハイパーバイザが動作 ユーザはシャドウデバイス経由で帯域外リモート管理を行う クラウドVM ユーザ 仮想化システム ユーザVM 入出力 シャドウ デバイス クラウドハイパーバイザ

脅威モデル クラウド事業者は信頼する 仮想化システムの中の管理者は信頼しない クラウドハイパーバイザ、シャドウデバイスを管理 リモート・アテステーションや実行時の整合性検証を行う 仮想化システムの中の管理者は信頼しない 仮想化システム内で帯域外リモート管理の盗聴を行う 仮想化システムの外側にはアクセスできない クラウドハイパーバイザ シャドウ デバイス 仮想化システム ユーザVM 管理者 クラウド 事業者

VSBypassの特徴(1/2) 仮想化システム内の管理者がシャドウデバイスを攻撃するのは困難 VMの強い隔離があるため 信頼できない管理者であっても仮想化システム全体を管理可能 仮想化システム内のハイパーバイザを信頼する必要がないため 仮想化システム ハイパーバイザ 管理者 ユーザVM 仮想 デバイス クラウドVM シャドウ デバイス

VSBypassの特徴(2/2) 仮想化システムにほとんど依存しない リモート管理ソフトウェアへの変更が不要 仮想化システム全体を仮想化し、強制パススルーを行うこで入出力を横取りするため リモート管理ソフトウェアへの変更が不要 入出力の暗号化を必要としないため ユーザ 仮想化システム ハイパーバイザ 管理者 ユーザVM 仮想 デバイス クラウドVM 既存の ソフトウェア

ネストした仮想化のオーバーヘッド ネストした仮想化によりユーザVMの性能が低下 オーバヘッドを減らす手法が提案されている 仮想化を二重に行うオーバヘッド オーバヘッドを減らす手法が提案されている Turtles Project [Azab et al.'10] 一般的な処理で6〜8%のオーバヘッド TinyChecker [Tan et al.'12] カーネルのコンパイル時に                      1.3%のオーバヘッド 仮想化システム ユーザVM クラウドVM

実装 VSBypassをXen 4.8に実装 2種類の帯域外リモート管理に対応 2種類の仮想化システムに対応 シャドウデバイス 強制パススルー機構 2種類の帯域外リモート管理に対応 SSH経由で仮想シリアルデバイスにアクセス VNC経由で仮想キーボード、仮想マウスにアクセス 仮想ビデオカードは実装中 2種類の仮想化システムに対応 Xen、KVM

シャドウデバイス プロキシVMを起動し、その仮想デバイスをシャドウデバイスとして利用 プロキシVMをユーザVMに対応づけ

強制パススルー ユーザVMの入出力アクセスをクラウドハイパーバイザが横取り 入出力を行うとクラウドハイパーバイザに直接VM Exit ポートI/O、メモリマップトI/Oの実行時 そのままクラウドハイパーバイザが処理 従来はゲストハイパーバイザに制御を移して処理 入出力 アクセス クラウドVM ユーザVM クラウドハイパーバイザ 仮想デバイス ゲストハイパーバイザ VM Exit

シャドウデバイスでの入出力処理 シャドウデバイスに入出力要求を送信 シャドウデバイスからの応答をユーザVMに返す ユーザVMからプロキシVMを見つける クラウドVMからプロキシVMに要求をリダイレクト シャドウデバイスからの応答をユーザVMに返す プロキシVMからクラウドVMに応答をリダイレクト プロキシ VM クラウドVM用の仮想デバイス クラウドVM ユーザVM 入出力 アクセス シャドウ デバイス 応答 要求 クラウドハイパーバイザ

仮想割り込みの処理 シャドウデバイスで発生した仮想割り込みをユーザVMに挿入 クラウドVM内の割り込みサーバに割り込み情報を送信 割り込みを挿入するハイパーコールを実行 割り込みサーバを経由しても情報は漏洩しない 割り込みには機密情報は含まれないため シャドウ デバイス クラウドVM 割り込み サーバ ユーザVM 仮想割り込み ゲストハイパーバイザ ハイパーコール

リングバッファを用いた通信 ウルトラコールと呼ばれる機構を用いてメモリを共有 割り込みサーバがリングバッファを定期的にポーリング 直接クラウドハイパーバイザを呼び出す 仮想化システムに依存しない 割り込みサーバがリングバッファを定期的にポーリング 仮想化システムに書き込み                   通知機構の追加が不要 ウルトラコール シャドウ デバイス クラウドVM 割り込みサーバ クラウドハイパーバイザ リングバッファ メモリ共有要求 割り込み情報

実験 目的 実験環境 帯域外リモート管理の入力の盗聴が防げることを確認 VSBypassを用いた帯域外リモート管理の性能を測定 クラウド側 クライアント側 CPU Intel Xeon E3-1290v2 E3-1226v3 メモリ 8GB クラウドVM 4GB 3GB ユーザVM 2GB 1GB 仮想化 システム Xen 4.8.0 KVM 2.4.1 OS Linux 3.13 Linux 4.2 CPU Intel Xeon E3-1290v2 メモリ 8GB OS Linux 3.13

比較対象 以下の3つのシステムについて比較した 従来システム 仮想化システム VSBypass 仮想 ユーザVM クラウドVM デバイス クラウドハイパーバイザ シャドウ デバイス 仮想化システム ユーザVM クラウドVM VSBypass 仮想化システム 仮想 デバイス ユーザVM 仮想クラウド環境 クラウドVM クラウドハイパーバイザ

帯域外リモート管理の入力の盗聴 仮想化システム内の仮想デバイスにおいて入力を盗聴 VSBypassでは入力した文字を盗聴できなかった ユーザVMの仮想シリアルコンソールに文字を入力 SSHクライアントを使用 ユーザVMの仮想キーボードに文字を入力 VNCクライアントを使用 VSBypassでは入力した文字を盗聴できなかった 従来システムでは盗聴できた

応答時間 リモート管理クライアントに文字を入力してから出力されるまでの時間を測定 (Xen)従来より1.3ミリ秒長くなった 仮想クラウド環境より2ミリ秒高速化 (KVM)Xenと同じ傾向であることがわかった

スループット ユーザVMでテキストファイルを表示する時間を測定 (Xen)従来より2%だけ低下 (KVM)従来より89%低下 仮想クラウド環境より大幅に性能向上 (KVM)従来より89%低下 仮想クラウド環境よりも低いので、VSBypassの実装上の問題と考えられる

関連研究 デバイス・パススルー CloudVisor [Zhang et al.'11] VMが物理デバイスに直接アクセス 仮想デバイスの保護はディスクのみ FBCrypt [Egawa et al.‘12],SCCrypt [Kourai et al.’15] 帯域外リモート管理の入出力を暗号化 準仮想化された仮想デバイスにも対応

まとめ 仮想化システムの外側で帯域外リモート管理を実現するVSBypassを提案 今後の課題 強制パススルーによりユーザVMの入出力を横取り ネストした仮想化を利用 シャドウデバイスで安全に処理 仮想シリアルデバイス、仮想キーボード、仮想マウスに対応 今後の課題 VNCを用いた帯域外リモート管理への完全対応 仮想ビデオカードの出力を正常に処理できていない