Location via proxy:
[ UP ]
[Report a bug]
[Manage cookies]
No cookies
No scripts
No ads
No referrer
Show this form
Submit Search
XS Japan 2008 App Data Japanese
•
0 likes
•
743 views
The Linux Foundation
Follow
Koichi Onoue: Controlling System Calls and Protecting Application Data in Virtual Machines
Read less
Read more
1 of 26
Download now
More Related Content
XS Japan 2008 App Data Japanese
1.
仮想マシン内のシステムコール制御 とアプリケーションのデータ保護 尾上 浩一*
大山 恵弘** 米澤 明憲* * 東京大学 ** 電気通信大学
2.
アプリケーションの保護 • セキュリティシステムの適用が一般に普及 –
サンドボックスシステム – 侵入検知・防止システム(IDS・IPS) – アンチウィルスシステム 機密データ セキュリティ アプリケーション 制御 システム OSカーネル
3.
セキュリティシステムも攻撃され得る! • 他のアプリケーションと同じ実行空間で稼働
アプリケーション1 が乗っ取られた! 機密データ アプリケーション1 セキュリティ アプリケーション2 制御 システム OSカーネル
4.
仮想マシンモニタ(VMM)を
利用することが効果的 • VM単位の隔離 アプリケーション アプリケーション – たとえあるVMが 奪取されても、 OS OS VMMや他のVMを (ゲスト OS) (ゲスト OS) 奪取することは困難 仮想マシン 仮想マシン (VM) (VM) • VMの物理メモリや ディスクなどの物理計 算資源への操作を制御 仮想マシンモニタ (VMM) – VMMはVMよりも高い 特権レベルで稼働 ハードウェア
5.
本研究の目標 • VMの外側からアプリケーションの安全性を
向上させたい – VMMとセキュリティシステムを協調させ、 アプリケーションの振る舞い制御とアプリケーショ ンに関連するデータ保護を実現したい 制御対象VM 制御VM アプリケーション セキュリティ システム VMM
6.
本研究のアプローチ • 制御対象VMの外側からアプリケーションが発行した
システムコールの実行を制御 – アプリケーションプロセス単位で実行を制御 • VMMと制御VMが、アプリケーションに関連する メモリ・ファイル操作を制御 – メモリ上、仮想ディスク上のアプリケーションに 関連するデータの漏洩・不正改竄の防止 利用者が指定したアプリケーションのみ実行を制御 準仮想化を利用した Xen を用いて提案システムを構築
7.
制御対象VMの外側からの システムコールの実行制御
8.
セキュリティシステムの運用比較
VMを使わない VMの外側で 場合 稼働させる場合 × ○ セキュリティシステム 容易 困難 への攻撃 ○ × セキュリティシステム の制御単位 OSレベル ハードウェアレベル
9.
システムコールの実行制御の目標
VMを使わない VMの外側で 場合 稼働させる場合 × ○ セキュリティシステム への攻撃 容易 困難 ○ × セキュリティシステム の制御単位 OSレベル ハードウェアレベル Semantic gap 本研究の目標
10.
本研究のアプローチ • VMの外側からシステムコールの実行を制御 –
ゲスト OS カーネルの情報を利用 • セキュリティポリシーに基づいた制御 制御対象VM 制御VM セキュリティ ポリシー アプリケーション セキュリティ システム VMM
11.
アプリケーションの実行状態の取得 • VMMが捕捉時に取得できるイベント・実行状態 –
イベント :特権命令、割り込みなど – 実行状態:レジスタ、メモリ上の値 Semantic gap • セキュリティシステムが必要とする情報 – イベント :システムコール – 実行状態:プロセス、システムコール番号など
12.
本研究におけるセキュリティポリシー • システムコール名と引数情報を
用いたパターンマッチ ... open default: allow fileEq(“/etc/passwd”) or filePrefixEq(“/etc/cron.d”) deny(EPERM) ...
13.
アプリケーションに関連する メモリ・ファイル操作制御
14.
アプリケーションデータ保護の目標 • 制御対象のアプリケーション(制御対象)の
データの漏洩・不正改竄の防止 – ptraceやカーネルモジュールなどを利用した攻撃 メモリ 仮想ディスク 制御対象 制御対象の データ 制御対象の 機密データ 不正改竄 漏洩 アプリケーション OSカーネル VM 乗っ取られたプログラム
15.
本研究のアプローチ • 制御対象のメモリ・ディスク上の実体を制御対象
外のプログラム(制御対象外)から隠蔽 – OSカーネルも制御対象外に含まれる • メモリ上のデータ – コード、データ、スタック領域など ➔制御対象の物理メモリ領域を多重化 • ディスク上のデータ – 実行ファイル、設定ファイルなど ➔異なるVMで管理
16.
OSによるメモリ管理 仮想アドレス空間
物理アドレス空間 OSによる アドレス変換 アプリケーション アプリケーション
17.
VMMによるメモリ管理
VMMの 制御対象VMの 制御対象VMの 仮想アドレス空間 物理アドレス空間 物理アドレス空間 gPA → (gVA) (gPA) (hPA) hPA アプリケーション アプリケーション アプリケーション gVA → hPA VMMによるアドレス変換 17
18.
本研究におけるメモリ上のデータ保護
(1/2) • カーネルレベル・ユーザレベルで 異なる物理アドレス領域を見せる VMMの 制御対象VMの 制御対象VMの 仮想アドレス空間 物理アドレス空間 物理アドレス空間 (gVA) (gPA) (hPA) アプリケーション Dummy アプリケーション アプリケーション ユーザレベルでの実行中に参照可能な領域 カーネルレベルでの実行中に参照可能な領域 – Overshadow[Chen et al., 2008] – [Rosenblum et al.,2008]
19.
本研究におけるメモリ上のデータ保護
(2/2) • 制御対象アプリケーションに関する カーネルレベル・ユーザレベル間の切り換え が発生したとき、ページテーブルを切り換える – 例外・割り込み処理 – システムコール処理
20.
本研究におけるディスク上の
データ保護(1/5) • 異なるVMで制御対象ファイルの実体を管理 – 実行ファイル、設定ファイル、 データベースファイルなど – 制御対象はセキュリティポリシーで指定 制御VM 制御対象VM セキュリティ ポリシー セキュリティシステム アプリケーション 設定ファイル 設定ファイル 実行ファイル 実行ファイル VMM
21.
本研究におけるディスク上の データ保護(2/5)
制御VM 制御対象VM メモリ セキュリティシステム 設定ファイル の読込 設定ファイル アプリケーション VMM
22.
本研究におけるディスク上の データ保護(3/5)
制御VM 制御対象VM メモリ セキュリティシステム read を捕捉 設定ファイル アプリケーション VMM
23.
本研究におけるディスク上の
データ保護(4/5) read の 制御VM 制御対象VM エミュレート メモリ セキュリティシステム 設定ファイル アプリケーション VMM
24.
本研究におけるディスク上の データ保護(5/5)
制御VM 制御対象VM メモリ セキュリティシステム 設定ファイル read の実行結果 を通知 アプリケーション VMM
25.
まとめ • VMの外側からアプリケーションを保護する
セキュリティシステムの提案 – アプリケーションの振る舞いの制御 • システムコールの実行制御 – メモリ・ディスク上のデータ保護 • メモリ上のデータ:VMMによる物理メモリ領域の多重化 • ディスク上のデータ:異なるVMで管理
26.
終
Download