今年度は、クラウドの管理者がログインする特権を持った仮想マシン(特権VM)を経由した情報漏洩を防げるようにした。まず、クラウドの利用者が使うVM(ユーザVM)のメモリからの情報漏洩の防止に取り組んだ。特権VMに暗号化されたユーザVMのメモリを見せられるようにするために、VMを実現しているハイパーバイザの中に暗号化・復号化の処理を追加した。具体的には、特権VMがユーザVMのメモリにアクセスしようとした際にはハイパーバイザが自動的にメモリ内容の暗号化を行う。アクセスを終了すると復号化を行うため、ユーザVMは暗号化されていないメモリにアクセスすることができる。 我々の調査の結果、特権VMはユーザVMの起動やサスペンド・レジュームのためにユーザVMのメモリの一部を参照したり、書き換えたりする必要があることが分かった。そこで、ハイパーバイザがこのようなメモリ領域を認識できるようにし、当該メモリ領域についてはユーザVMのメモリ暗号化を行わないようにした。これにより、特権VMへの情報漏洩を防ぎつつ、従来通りにユーザVMを起動したり、サスペンド・レジュームしたりすることが可能になった。 また、特権VMがユーザVMのメモリを参照するというアプローチに加えて、ハイパーバイザ自身が参照するという別のアプローチについても実装を行った。ハイパーバイザがユーザVMのサスペンドを行うことで、特権VMへの情報漏洩を防ぐことができた。また、ユーザVMのスケジューリングの変更や通信の監視についても、ハイパーバイザ内で行うようにすることで情報漏洩の危険性をなくすことができた。
|