仮想計算機を用いたファイルア クセス制御の二重化 滝澤裕二 光来健一 柳澤佳里 千葉 滋 (東京工業大学) デスクトップPCへの攻撃 攻撃の手口 ウィルスメールの自動実行 P2P での攻撃ソフトの配布 攻撃の被害 機密情報の流出 銀行の暗証番号(パスワードなど) 顧客情報 実行ファイルの改ざん トロイの木馬の設置 OSのアクセス制御による防御 ユーザ認証 ログイン時にパスワード認証 ファイルシステムによる制御 ユーザIDとパーミッションによる制御 一般ユーザは管理者のファイルを書き換えら れない 例:ウィルスが実行ファイルを書き換えるのを防げ る OSにも脆弱性が存在 脆弱性の例 Bluetoothスタックの脆弱性により一般ユーザ が特権を取得 sendmsg関数でオーバーフローを起し任意の コードを実行可能 パッチが適用されていない状況も・・・ ゼロデイアタック パッチを当てると動かなくなるアプリがある ユーザのセキュリティ意識が低い OSの制御をバイパスされる OSが攻撃を受けるとアクセス制御が機能 しなくなる ユーザ認証をバイパスされた場合 管理者に成りすまされる 管理者は全てのファイルにアクセスできる ファイルアクセス制御をバイパスされた場合 全てのファイルに無条件にアクセスされる 提案:SAccessor 仮想計算機(VM)を用いてファイルアクセ ス制御を二重化 ファイルアクセスとそれ以外のアクセスを別々 のVMで実行 それぞれのVMのOSでアクセス制御 実用性を考慮した機能を提供 ファイルサーバを別のVMで動かすだけでは実 用的にはならない SAccessorのアーキテクチャ 1台のマシン上に2つのVMを用意 ファイルサーバを動作させる認証VM ユーザがログインする作業VM 認証VM(Dom0) 作業VM(DomU) GuestOS(Linux) Network File GuestOS(Linux) System APP FILE APP VMM(Xen) ユーザは作業VMに ログインして作業 SAccessorのファイルアクセス制 御 2つのVMが独立にファイルアクセス制御 認証VMはユーザと直接やりとりして認証 認証VMは認証した情報を使ってアクセス制御する 作業VMがクラックされてもバイパス不可能 作業VMは従来のOSによるファイルアクセス制御 作業VMがクラックされるまでは正常に機能 認証 認証VM(Dom0) 作業VM(DomU) GuestOS(Linux) ファイルアクセス GuestOS(Linux) 要求 FILE APP アクセス権 データ転送 アクセス権 APP チェック チェック SAccessorにおける認証 認証VMが認証ダイアログを表示 ユーザ名とパスワードによる認証 作業VMを介さないので安全 作業VM内の攻撃者は認証できない 認証ダイアログにアクセスできない 作業VMにパスワードを盗まれることがない シームレスな認証ダイアログ VNCを用いて作業VMの画面を認証VMのウィンド ウとして全画面表示 ユーザには作業VMの画面だけが見える 認証ダイアログは作業VMの画面に重ねて表示 認証VMの画面 認証VMが表示する 作業VMの画面 1台のマシン上で両VMを動かすことで シームレスに認証が行える 認証ダイアログの判別 ダイアログにシークレット文字列を表示 作業VMから偽ダイアログを表示される恐れ 認証VMにあらかじめ文字列を登録 作業VMにいる攻撃者からは見ることはできない シークレット文字列 アクセスされるファイル 認証頻度の制御 認証の頻度を抑えるポリシを記述可能 認証頻度が高くなると利便性が低下 認証ダイアログが大量に出される ファイルやディレクトリをまとめたグループ毎に 認証 認証に有効期間を設定 認証の有効期間内では認証は省略 <DSW> [3600] /home/takizawa/DSW/main.tex (rw) /home/takizawa/DSW/intro.tex (rw) </DSW> 作業VMのキャッシュ 認証の有効期間の切れたファイルキャッ シュはフラッシュさせる 作業VMにあるファイルキャッシュは認証なしで アクセス可能 認証VMから作業VMにフラッシュを命令 有効期間内のファイルは認証なしでアクセス可 セキュリティの低下はない 認証VM キャッシュのフ ラッシュを命令 File 作業VM ファイル キャッシュ setuidされたプログラムの扱い は困難 一般ユーザが管理者のファイルにアクセス 管理者のパスワードが必要 SAccessorでの対応 認証VMにsetuidされたプログラムの実行を依頼 作業VM上のプログラムを置き換えておく 一般ユーザのパスワードで認証 ファイルキャッシュが作業VMに残らない 標準入出力はSSH経由 作業VMのルートディレクトリにchrootして実行 ファイル入出力のため システムファイルのアクセス制御 一般ユーザが判断するのが難しい 管理者のパスワードが必要なことも デフォルトのポリシを用意し認証は省略 実行ファイルは読み取りのみ ログファイルは追記だけ 実際に実行ファイルは読み込み、ログファイル は追記のみ ポリシの登録 認証VMからウィンドウを表示してポリシを編集 認証VMにポリシ編集用ウィンドウを表示 作業VMに潜入した攻撃者は編集不可能 ポリシの内容をユーザに確認させてから認証 認証 認証VM ポリシ ポリシの 編集要求 ポリシの 編集・確認 作業VM APP ポリシ編集用 ウィンドウを表示 SAccessorの有効性 ユーザに機密ファイルを守る 顧客情報へのアクセス は認証が必要 ウェブブラウザが悪意 のあるコードを実行して も顧客情報は守られる 有効期間(秒) パーミッション <仕事>[3000] ~takizawa/顧客情報.xls (rw) ~takizawa/資料.pdf (r) </仕事> グループ名 グループに属するファイル <ウェブブラウザ> /usr/bin/firefox (r) /usr/firefox/* (r) </ウェブブラウザ> 実行ファイルの書き換えを防ぐ ポリシ例 Emacsの書き換えの みダイアログを表示 <emacs> /usr/bin/emacs (r) 通常使用ではダイアロ /usr/libexec/emacs/* (r) </emacs> グはでない Emacsのアップデート 時には認証を成功さ せる アップデート時以外の 認証は拒否 攻撃と考えられる <emacs>[60] /usr/bin/emacs (w) /usr/libexec/emacs/* (w) </emacs> Limitation 認証の有効期間内のファイルは守れない 認証の有効期間内のファイルは認証なしでア クセス可能 作業VMのファイルキャッシュに偽の内容を 書き込む攻撃 ファイルの改ざんと同じ被害を受ける可能性 関連研究 Proxos[OSDI’06 Richard Ta-Min et al.] システムコールを隔離されたVMで実行 SVFS[SISW’05 Xin Zhao et al.] VMによって異なるアクセス権を与える プログラマがポリシを作成しなければならない 重要ファイルへの書き込みは特別なVMへログインが必要 Plan9[Bell Labs] 管理者のファイルはファイルサーバーに物理的に接 続されたコンソールからのみ 守るのは管理者のファイルだけ まとめ・今後の課題 SAccessorを提案 ファイルアクセスの二重化 従来の二重化システムの問題点を解決 今後の課題 setuidされたプログラムの入出力を認証VMの ウィンドウを通してできるようにする
© Copyright 2024 ExpyDoc