九州工業大学大学院 情報工学府 情報創成工学専攻 13675019 重田一樹 IaaS型クラウドの普及 ◦ ユーザの仮想マシン(ユーザVM)をクラウド内で実行 サーバの維持・管理・導入コストの削減 二種類の攻撃者への対策を考える必要がある ◦ 外部攻撃者 ◦ 内部攻撃者 クラウド管理者は信頼できるとは限らない 管理VM ユーザVM クラウド ネットワーク経由でユーザVMに侵入される ◦ VM内のIDSは侵入と同時に無効化される恐れがある IDSオフロード手法が提案されている ◦ 管理VMにIDをオフロードし、ユーザVMを外から監視 Livewire [Garfinkel et al.’03], … 例:ユーザVMのメモリ上のシステム情報を直接取得 ◦ ユーザVMに侵入されてもIDSを無効化されない 管理VM ユーザVM IDS メモリ ディスク ネットワーク ユーザVMに侵入されなくても攻撃を受ける ◦ VMのメモリ、ディスク、ネットワークの情報を直接盗む ユーザVMを安全に実行する機構が提案されている ◦ VMのメモリを暗号化したり、アクセスを制限したりすること で管理VMへの情報漏えいを防ぐ CloudVisor [Zhang et al.’11], VMCrypt [Tadokoro et al.12], SSC [Butt et al .’12] 管理VM ユーザVM 暗号化 アクセス制限 メモリ 仮想マシンモニタ(VMM)など クラウド 内部攻撃者が存在する状況ではIDSオフロードの安 全性を保証するのは難しい ◦ オフロードしたIDSは内部攻撃者に容易に無効化される IDSを停止・改ざんしてからユーザVMに侵入 ◦ VMの安全な実行機構を共存させることができない メモリ上のデータを取得できないと、オフロードしたIDSはユーザVM の情報を取得できない 管理VM ユーザVM IDS クラウド クラウド外部の監視ホストにIDSをオフロードし、ネッ トワーク経由でユーザVMを監視する ◦ クラウド管理者からIDSを無効化されるのを防ぐ ◦ VMの安全な実行機構と共存できる 監視ホストにのみユーザVMのメモリへのアクセスを許可 IDS ユーザVM 監視ホスト クラウド IDSリモートオフロードを実現するシステム ◦ 監視ホスト上でIDSを動作させ、クラウド内のVMMを経由 してユーザVMを監視 ◦ VMMがユーザVMの情報を取得 ◦ 管理VMでの情報漏洩や改ざんを防ぐ IDS 管理VM ユーザVM VMM 監視ホスト クラウド 既存技術を用いてVMMの正しさを保証 ◦ 起動時のリモートアテステーション 起動時にVMMのハッシュ値を計算し検証サーバで検証 信頼できる上級クラウド管理者が正しいハッシュ値を登録 ハードウェア(TPM)による担保 ◦ VMM自身による実行時の保護 VMMのメモリ保護機能によりVMM実行時の改ざんを防ぐ 管理VM ユーザVM VMM TPM ハードウェア クラウド 検証 サーバ VMMからユーザVMのメモリ情報を取得 ◦ リクエスト:IDSが必要とするメモリのアドレスとサイズ ◦ レスポンス:暗号化されたメモリデータ 管理VMなどでの改ざんを防ぐ ◦ RTモジュールで<リクエスト,レスポンス>のMACを計算 ◦ そのMAC値とRTランタイムが計算したMAC値と比較 IDS RTランタイム 管理VM リクエスト ユーザVM データ RTサーバ レスポンス VMM RTモジュール 監視ホスト クラウド VMMでキャプチャしたパケットを取得 ◦ ユーザVMが送受信するパケットはVMMを経由 ◦ 監視ホスト上のtapデバイスに書き込み ◦ IDSはtapから従来通りにパケットを取得 RTモジュールで<パケット、連番>のMACを計算 ◦ RTランタイムで検証 IDS tap 管理VM RTランタ イム RT サーバ RTモジュール 監視ホスト ユーザVM パケット パケット パケット クラウド VMM NBDを用いてユーザVMのディスク情報を取得 ◦ NBD:リモートのディスクを仮想的なブロックデバイスとして 見せるツール ディスクはユーザVM内のOSが暗号化 ◦ RTランタイムで暗号化されたディスクを復号し、IDSに参照させ る IDS 復号 管理VM NBD サーバ ユーザVM 暗号化 ディスク 暗号化 ディスク 監視ホスト 暗号化 VMM クラウド VM Shadow [飯田ら’10]をRemoteTransに対応 ◦ 既存のIDSをオフロードするための実行環境 ◦ ディスク監視機構を用いてファイルシステムを提供 ◦ メモリ監視機構を用いてprocファイルシステムを提供 ユーザVM内の実行中のプロセス情報など ◦ ネットワーク監視機構を用いてtapデバイスを提供 VM Shadow tap IDS ユーザVM shadow procfs RTランタイム 監視ホスト クラウド RemoteTransの性能を調べる実験を行った ◦ Shadow procfsの構築時間を測定 比較対象 ◦ 実際のIDSの性能を測定 ・管理VMへの従来のオフロード ・オフロードせずユーザVMで実行 CPU Intel Xeon E3-1290 メモリ 16GB Linux 3.13.0 CPU Intel Xeon E3-1270 メモリ 16GB ギガビット イーサネット (LAN) 管理VM Linux 3.2.0 メモリ 8GB ユーザVM Linux 2.6.27.35 メモリ 4GB Xen 4.1.3 監視ホスト 監視対象ホスト ユーザVMのメモリ情報を取得してShadow procfs を構築する時間を測定 ◦ 従来のIDSオフロードの3.5倍程度の時間がかかった ◦ メモリアクセスと通信が大きなボトルネックとなっている 実運用環境では通信が最大のボトルネックとなる 構築時間, 1.28 実行時間 従来のIDSオフロード 1.2 RemoteTrans 4.3 Shadow procfsの構築時間(秒) データ取得, 通信, 1.09 復号, 0.27 暗号化, 0.19 1.00 MAC検証, 0.47 Shadow procfs構築時間の内訳(秒) chkrootkitとTripwireの実行時間を測定 ◦ chkrootkitはメモリとファイルを監視 ◦ Tripwireはディスク監視のみ ◦ RemoteTransが最も性能がよくなった ディスク読み込み性能が高いため 70 63.4 50 40 50.0 38.9 30 20 10 25 実行時間(分) 実行時間(秒) 60 27.8 30 20 15 15.7 19.1 従来のオフロード 10 オフロードなし 5 0 0 chkrootkitの実行時間(秒) RemoteTrans Tripwireの実行時間(秒) Snortが攻撃を検知するまでにかかる時間を測定 ◦ ユーザVMに対してポートスキャンを実行 ◦ RemoteTransでは2.3秒程度検知が遅くなった パケットを監視ホストに送る必要があるため 異常検知が少し遅れてもさほど問題ではない 3 2.611 2.5 検知時間(秒) 2 RemoteTrans 1.5 従来のオフロード オフロードなし 1 0.5 0 0.373 0.364 CloudVisor [Zhang et al.’11] ◦ 信頼できないVMMの下で動くセキュリティモニタによりVM のメモリを保護 ◦ VMの外から監視を行うことはできない VMCrypt [Tadokoro et al.’12] ◦ ユーザVM内の特定のデータだけを管理VMに見せられる ◦ 監視したいが見せたくないデータには対処できない Self-Service Cloud [Butt et al.’12] ◦ クラウド管理者が干渉できない各ユーザ専用の管理VMに IDSをオフロード可能 ◦ その管理VM内のシステムの脆弱性が攻撃される恐れ IDSをクラウド外部の監視ホストにオフロードする IDSリモートオフロードを提案 ◦ 内部攻撃者によるIDSの無効化を防ぐ ◦ VMの安全な実行機構との共存が可能 IDSリモートオフロードを実現するシステム RemoteTransを開発 ◦ 実際のIDSを効率よく動作させることができた 今後の課題 ◦ IDSリモートオフロードのオーバヘッド削減
© Copyright 2024 ExpyDoc