Presentation is loading. Please wait.

Presentation is loading. Please wait.

九州工業大学大学院 情報工学府 情報創成工学専攻 11675501 塩田裕司.  仮想マシン( VM )は必要なときだけ動かすこと が多い ◦ クラウドでもデスクトップでも ◦ 長期間使わない VM が存在する  VM の再開時に攻撃を受ける可能性が高くなる ◦ 停止中に OS やアプリケーションの脆弱性が発見されるこ.

Similar presentations


Presentation on theme: "九州工業大学大学院 情報工学府 情報創成工学専攻 11675501 塩田裕司.  仮想マシン( VM )は必要なときだけ動かすこと が多い ◦ クラウドでもデスクトップでも ◦ 長期間使わない VM が存在する  VM の再開時に攻撃を受ける可能性が高くなる ◦ 停止中に OS やアプリケーションの脆弱性が発見されるこ."— Presentation transcript:

1 九州工業大学大学院 情報工学府 情報創成工学専攻 11675501 塩田裕司

2  仮想マシン( VM )は必要なときだけ動かすこと が多い ◦ クラウドでもデスクトップでも ◦ 長期間使わない VM が存在する  VM の再開時に攻撃を受ける可能性が高くなる ◦ 停止中に OS やアプリケーションの脆弱性が発見されるこ とが多い ◦ 長期間停止している VM ではセキュリティアップデート が適用されない VM アップデート A アップデート B アップデート C VM 停止 再開 危険

3  VM の再開後にアップデートを行うのが一般的だ が、危険性が高い ◦ ネットワーク経由の攻撃を受ける  アップデータをダウンロードするためにネットワークに接 続  接続後、即座に攻撃を受ける可能性がある ◦ 無防備な時間が長い  アップデートの処理に時間がかかる  完了するまでは攻撃にさらされる サーバ 仮想マシン アップデー タ 仮想 ディスク 仮想 ディスク 攻撃者

4  VM を再開する前にアップデートする手法も提案 されている ◦ 例: VM の仮想ディスクを直接更新 ◦ 完全に停止した VM が対象  サスペンド状態の VM には適用できない ◦ VM をサスペンドするとある瞬間の状態が保存される ◦ サスペンド状態で更新すると仮想ディスクが壊れる オンラインオフラインオンライン アップデート シャットダ ウン ブート 停止状態 サスペンドレジューム サスペンド状態

5  サスペンド状態の VM のオフラインアップデート ◦ オフラインでアップデートをエミュレーション  仮想ディスクが壊れるのを防ぐ  前処理・後処理のスクリプト実行を遅らせる ◦ VM のレジューム後にエミュレーション結果を反映  VM をネットワークに接続せずに安全に実行可能  オンライン時には短時間でアップデートを完了 更新ファイル の保存 更新ファイル の保存 スクリプト の保存 スクリプト の保存 更新ファイル の反映 スクリプト の実行 スクリプト の実行 サスペン ド レジュー ム アップデートのエミュレー ト エミュレーション結果の反 映 オフライン オンライン

6  VM Shadow [ 飯田ら ’11] を用いてアップデータ実 行のエミュレーション環境を構築 ◦ 既存のアップデータを実行できる  VM 内のデータベースを参照 ◦ システムコールと proc ファイルシステムをエミュレート  VM のメモリを解析 ◦ VM の仮想ディスクへのアクセスを提供 アップデー タ VM Shadow ホスト OS 仮想 ディスク 仮想 ディスク 仮想マシン

7  Aufs を用いて仮想ディスクの更新をエミュレー ション ◦ 保存用ディレクトリを仮想ディスクの上に重ねる  仮想ディスクを書き換えから守る ◦ 保存用ディレクトリには以下が書き込まれる  追加されたファイル( A )  変更されたファイル( B’ )  削除されたことを表す whiteout ファイル(.wh. ファイル C ) 仮想ディス ク ファイル A ファイル B’ ファイル B ファイル C.wh. ファイル C 保存用ディレク トリ アップデー タ

8  保存用ディレクトリを仮想ディスクへの更新情報 として抽出 ◦ すべての更新ファイルは保存用ディレクトリに作成され る  whiteout ファイルから削除リストを作成 ◦ 保存用ディレクトリを検索して、 whiteout ファイルのパ ス名を取得 仮想ディス ク ファイル A ファイル B’ ファイル B 保存用ディレク トリ ファイル C.wh. ファイル C 削除リス ト 抽出

9  アップデータに含まれるスクリプトは実行せず に保存 ◦ アップデータによっては前処理や後処理を行うスクリ プトを含んでいる ◦ プログラムを実行する execve システムコールをエミュ レーション  スクリプトを実行する代わりに保存 execve スクリプ ト アップデー タ VM Shadow 保存用ディレク トリ 保存

10  VM のレジューム直後に VM 自身に仮想ディスクへ の更新を行わせる ◦ 保存用ディレクトリのアーカイブを VM に送る  仮想ネットワーク経由 ◦ VM 上でアーカイブを展開し、ファイルの追加・変更を 行う ◦ 削除リストに基づいてファイルを消去 ホスト OS 仮想マシ ン ファイル A ファイル B ファイル B’.wh. ファイル C 削除リス ト ファイル C Tar ファイ ル Tar ファイ ル ファイル A ファイル B’.wh. ファイル C 削除リス ト

11  エミュレーション時に保存しておいたスクリプト を実行 ◦ スクリプトは更新ファイルと一緒に VM に送られる ◦ 前処理スクリプト  設定ファイルの保存やサーバの停止など  仮想ディスクの更新の前に行う ◦ 後処理スクリプト  新しい設定ファイルの作成やサーバの再起動など  仮想ディスクの更新の後で行う 前処理 仮想ディスク の 更新 仮想ディスク の 更新 後処理

12  OUassister と従来手法でパッケージのアップデー ト時間を比較 ◦ nginx ウェブサーバのインストール・アンインストール ◦ OpenSSL のバージョンアップ ◦ Ubuntu のパッケージリストの更新  アップデート処理の内訳とアップデート時間の関 係を調査 CPU: Intel Xeon E5630 2.53GHz メモリ : 6GB NIC: ギガビットイーサネット Xen 4.1.3 ドメイン 0: 4 CPU 、メモリ 5.3GB 、 Ubuntu 12.04 ドメイン U: 1 CPU 、メモリ 512MB 、 Ubuntu 12.04

13  オンラインでのアップデート時間を 11 〜 57% に短 縮 ◦ nginx ウェブサーバのアップデート: 21 秒前後 →2.5 秒 ◦ OpenSSL のバージョンアップ: 10.4 秒 →5.9 秒 ◦ パッケージリストの更新: 12.5 秒 →2.6 秒  アップデート時間の合計は長くなる場合もあった ◦ OpenSSL のバージョンアップ、パッケージリストの更新

14  OpenSSL のバージョンアップとパッケージリスト の更新では更新ファイルの合計サイズが大きい ◦ オンラインになってからの VM への転送に時間がかかる ◦ オフラインでの更新ファイルの抽出にも時間がかかる アップデートの 内容 更新ファ イル数 削除ファ イル数 更新ファイ ルサイズ (MB) スクリプト 数 インストール 1490449 アンインストー ル 4168409 バージョンアッ プ 20311102 パッケージリス ト 811108-

15  停止状態の VM のオフラインアップデート ◦ NetChk Protect [VMware, Inc.]  オフラインでダウンロードしたアップデータを仮想ディス クに保存  VM の起動時にアップデータを実行 ◦ Nuwa [Zhou et al.’10]  オフラインでアップデータを実行して仮想ディスクを更新  アップデータのスクリプトを書き換えてできるだけ実行  サスペンド状態の VM のオフラインアップデート ◦ Offline Virtual Machine Servicing Tool [Microsoft]  アップデート専用環境で VM をレジュームしてアップデート  専用環境を構築してメンテナンスする必要がある

16  サスペンド状態の VM のオフラインアップデート を可能にする OUassister を提案 ◦ オフライン時にアップデータ実行をエミュレーション  VM Shadow と Aufs を用いて更新されたファイルを抽出  前処理・後処理スクリプトを保存 ◦ レジューム後にエミュレーション結果を反映  スクリプトを実行  オンライン時のアップデート時間を削減  今後の課題 ◦ 可能な範囲でのスクリプトのオフライン実行 ◦ Windows アップデートへの対応


Download ppt "九州工業大学大学院 情報工学府 情報創成工学専攻 11675501 塩田裕司.  仮想マシン( VM )は必要なときだけ動かすこと が多い ◦ クラウドでもデスクトップでも ◦ 長期間使わない VM が存在する  VM の再開時に攻撃を受ける可能性が高くなる ◦ 停止中に OS やアプリケーションの脆弱性が発見されるこ."

Similar presentations


Ads by Google