仮想計算機で動作するプログラムによる通信処理を不可視化する通信処理制御法について,性能改善を行った.また,アプリケーションに与える影響を測定により明らかにした. 提案手法は,仮想計算機モニタとしてXenを用い,仮想計算機上で動作するオペレーティングシステムとしてLinuxを想定した環境において,仮想計算機上のプログラムによる通信処理を仮想計算機モニタにより検知し,別の仮想計算機上で動作うるプログラムに代理実行させることで,保護対象の仮想計算機上のプログラムやオペレーティングシステムからは,通信を行っていないように見せる.これにより,仮想計算機上で攻撃者が活動可能になったとしても,通信処理の内容から重要サービスを特定することを困難にし,攻撃による被害の拡大を抑制する手法である. 本手法について,代理実行におけるオーバヘッドの原因を分析して2つの要因を示した.1つ目は代理実行する間における保護対象仮想計算機の停止回避であり,対処として重要サービス以外のプロセスにCPU使用権を譲るシステムコールを重要サービスに実行させる手法を実現した.2つ目は代理実行プロセスによる代理実行依頼取得の遅延である,対処として仮想計算機モニタによるイベント通知機構を用いた遅延削減を実現した.また,性能評価により対処の効果を明らかにした. また,提案手法によるシステムコール検知処理が攻撃者に把握されることで,提案手法による監視を攻撃者に検知される可能性があるため,この問題への対処の検討を行った.提案手法では重要サービスにおけるシステムコール発行を起点として代理実行処理を行う.システムコールの発行検知にはデバッグ例外を用いており,これを設定するためのデバッグレジスタを攻撃者に監視されると提案手法が検知される可能性がある.そこで,デバッグレジスタの読み出しと書き込みを攻撃者から隠蔽する手法を検討し実現した.
|