著者
瀬貫 真菜 石黒 健太 河野 健二
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2022-OS-155, no.5, pp.1-9, 2022-05-19

マルチテナント型のクラウド環境において,ハイパーバイザは仮想マシンの隔離と安全性を保証しているものの,ハイパーバイザにも多くの脆弱性が報告されており,特にデバイスエミュレータはその温床となっている.デバイスエミュレータはその複雑さから修正パッチの開発が容易ではなく,脆弱性の発見からパッチの適用までに長い時間を要することが多い.本論文では,デバイスエミュレータを対象に一時的に脆弱性を防ぐ手法を提案する.デバイスエミュレータの脆弱性を突く攻撃では,通常の I/O 処理では行われることのない I/O 要求を行うことが多い.そこで,脆弱性を突く不正攻撃に特有の I/O 要求を拒否する I/O フィルタの仕組みを導入する.I/O フィルタでは,特定の脆弱性を突くための特徴的な I/O 要求が記述でき,その記述に合致する I/O 要求を拒絶する.このフィルタはデバイスの内部構造を理解することなく記述可能であるため,修正パッチの作成より容易であることが期待できる.実際に CVE-2015-3456 (VENOM),CVE-2016-7909 など 4 個の脆弱性を防ぐフィルタの記述が可能であり,通常時の仮想マシンの動作を阻害することはなく,実行時オーバーヘッドも最大 8% 程度であることを示す.
著者
安野 直樹 石黒 健太 河野 健二
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2019-OS-145, no.15, pp.1-6, 2019-02-21

仮想化環境では物理 CPU の個数よりも多くの仮想 CPU を利用することが一般的になっている.ゲスト環境は仮想 CPU がプリエンプトされることは想定せずに実装されているため,仮想 CPU のプリエンプトにより仮想時間の不連続性が発生する.スピンロック中などに仮想時間がとぎれると Pause Loop Exit (PLE) というイベントが発生し,仮想マシンモニタに通知が行われる.現状の仮想化環境では PLE が多発することがあることが知られており,本研究では KVM を対象にその要因を定量的に分析する.その結果,1) プロセッサ間割込み (IPI) 処理におけるバリア同期,2) スピンロックの獲得待ち,3) タイムスタンプベースの待機処理.という 3 つのケースで PLE が多発していることを示す.さらに,KVM では PLE の多発を避けるように仮想 CPU スケジューリングを行っているものの,現状では十分に機能していないことを示す.