ハイパーバイザーにセキュリティを――VMSafe APIを利用するトレンドマイクロの「Deep Security」


 サーバーの仮想化が進むにつれて大きな問題になってきているのが、セキュリティだ。

 現状は、ハイパーバイザー上で仮想環境を構築しても、個々の仮想環境にアンチウイルスやファイアウォールなどを導入する必要がある。サーバー全体で見れば、同じセキュリティソフトを、構築された仮想環境分動作することになるわけだ。これでは、CPUやメモリのリソースを多量に消費するし、コストもかかる。

 そこで、ハイパーバイザーレベルでのセキュリティソフトが注目されている。今回の仮想化道場では、トレンドマイクロの「Deep Security」を紹介する。

vSphere 4.0が用意しているセキュリティAPI「VMSafe API」

 個々の仮想環境に同じセキュリティソフトを入れる、仮想ディスク上に、同じアンチウイルスソフトのパターンファイルが保存されていたり、物理ネットワークカードは1枚なのに、仮想化ネットワークごとにファイアウォールが存在したりする。こういうことは、システムのハードウェアリソースの面から見れば、無駄なこといえる。

 最も大きいのが、仮想環境ごとにセキュリティソフトを導入するため、導入したセキュリティソフト分のコストが必要になる点だろう。サーバーの仮想化により、ハードウェアコストやOSのコストが低下したとしても、仮想環境で動作させるアプリケーションにコストがかかるようになっては、仮想化のメリットを生かすことができない。

物理サーバーから仮想サーバー、クラウドへとIT環境は移行している。仮想化により、パッチやセキュリティ対策が大きな負担になってきているクラウドにおける最も大きな問題点は、セキュリティだ
仮想化環境におけるセキュリティの問題点仮想環境におけるセキュリティは、物理サーバーのセキュリティとは異なる視点が必要になる

 VMware vSphereでは、VMSafe APIというものがハイパーバイザーレベルに用意されている。ハイパーバイザー上にセキュリティソフトのためのAPIを用意し、サードパーティがハイパーバイザーレベルで動作するセキュリティソフトを開発できるようにしている。ある意味、ハイパーバイザーに穴を開けているともいえる。このため、VMSafe API自体がセキュリティホールにならないように、APIは一般公開せず、契約を交わしたサードパーティだけに公開している。

 VMSafe APIを利用したセキュリティソフトは、ハイパーバイザーに直接インストールされるのではなく、vSphere上にセキュリティソフトだけを動かす仮想アプライアンスを用意して、ハイパーバイザーのVMSafe APIとコミュニケーションすることになる。

 VMSafe APIをうまく使えば、個々の仮想環境上にはセキュリティソフトをインストールせずに、仮想環境のセキュリティを保つことができる。例えば、ウイルスをチェックする場合、ハイパーバイザー上でファイルをチェックするのと同じように、仮想ディスクをスキャンすることで、ウイルスチェックすることができる。

 vSphere 4.0には、vShieldという仮想化ネットワークを対象としたファイアウォールが用意されていた。しかし、8月31日から開催されていたVMwareのテクニカルカンファレンス「VMworld 2010」において、vShield Edge、vShield App、vShield Endpointなど新たに機能拡張されている(VMworld 2010で発表された新しいテクノロジーに関しては、今後解説する予定だ)。

 なお、現在、ハイパーバイザーレベルでのセキュリティAPIを提供しているのは、VMwareのvSphereだけだ。Xenに関しては、次世代のバージョンでハイパーバイザーレベルのセキュリティAPIを提供する予定だ。マイクロソフトのHyper-Vに関しては、来年リリースされるWindows Server 2008 R2 SP1でもサポートされてない。

VMSafe APIをサポートしたトレンドマイクロのDeep Security

 トレンドマイクロのDeep Securityは、ファイアウォール、IDS/IPS、Webアプリケーション保護、改ざん検知、セキュリティログの監視といった多層防御のセキュリティが実現している。

 Deep Securityは、vSphereなどのハイパーバイザーだけを対象にしたモノではない。通常の物理サーバーにエージェントを導入して、一括して管理することができる。もちろん、ハイパーバイザーレベルでのセキュリティAPIを持たない、Hyper-VやXen上で動作している仮想環境にも、エージェントをインストールすることで、侵入防止を行うことができる。

 vSphere上では、Deep Securityの仮想アプライアンスを導入して、vSphere上の仮想環境を保護することができる。vSphereの場合は、仮想環境にエージェントを導入しなくても、仮想環境の外にあるハイパーバイザーのレベルで多層防御を行うことが可能だ。ただし、ハイパーバイザーレベルでDeep Securityを使用した場合は、ファイアウォール、IDS/IPS、Webアプリケーション保護だけがサポートされている。

トレンドマイクロのDeep Securityは、物理サーバー、仮想サーバーを問わずにセキュリティを構築できる。さらに、1つのコンソールで、物理・仮想サーバーのすべてを管理できるエージェントをインストールすることで、5つのセキュリティがサポートされる

 Deep Securityのエージェントは、x86 CPUに対しては、Windows Server 2008/2003、Windows 2000 Server、Solaris 10(x86版)、Red Hat 4/5、SUSE Linux 9/10などのOS用がリリースされている(このほか、SPARC Solaris、UP-UX、AIXなどに向けてもリリースされている)。エージェント自体は、非常に小さなプログラムのため、個々の仮想環境にインストールしたとしても、それほど負荷にはならない。

 Deep Securityは、ネットワークからの侵入を防止する多層防御型のセキュリティシステムだ。このため、ウイルスチェックなどのエンドポイントを防御するための機能は用意されていない。やはり、ハイパーバイザーレベルでの統合的なセキュリティソリューションがそろそろ必要になってきているのだろう。

Deep Securityのエージェント。x86だけでなく、HP-UX、SPARC Solaris、AIXなどもリリースされているvSphere4のハイパーバイザーに対応したDeep Security仮想アプライアンスを利用すれば、仮想環境のOSにエージェントを入れなくても、ファイアウォール、IDS/IPS、Webアプリケーション防御の3つの機能がサポートされる。もちろん、仮想環境のOSにエージェントをインストールすれば、5つのセキュリティがサポートされる
Deep Securityの主要コンポーネントDeep Securityのエージェント。非常にコンパクトなプログラムのため、あまりCPUやメモリのリソースは消費しない

仮想環境上の古いシステムも的確に保護可能

外部へ公開しているWebサイトへの攻撃も、Deep Securityである程度防御可能という
エージェントが提供されていないOSでも、仮想環境で動かせれば、Deep Securityの仮想アプライアンスで防御することが可能

 ハイパーバイザーレベルでDeep Securityを利用するメリットとしては、古いOSやアプリケーションをセキュアに保てることが挙げられる。

 現在、Windows 2000 Serverは、サポート期限が終了している。このため、Windows 2000 Serverにおいては、今後セキュリティパッチなどはリリースされなくなる。しかし、Windows 2000 Serverは、多くの企業、官公庁、地方自治体などで使用されている。

 これは、多くのユーザーが、OSを購入したという意識ではなく、システムインテグレータからシステムを購入したという意識が強いからだ。このため、セキュリティやOSのアップデート、アプリケーションのアップデートなどは、インテグレータ任せで、ユーザーはシステムを単に利用しているだけだ。

 もちろん、企業によっては、きちんとシステムのアップデートや更新を考えている場合もあるが、多くの企業やユーザーは全く気にしていない。インターネットが普及する前の時代のように、ネットワークに接続していない孤立したハードウェアを利用している環境なら、それほどセキュリティに関しては問題視しなくても、何とかなった。

 しかし、多くのシステムがインターネットやイントラネットに接続されて利用されている現状では、システムのセキュリティに問題が起こることは大問題となる。重要でないシステムであっても踏み台として、企業や官公庁、地方自治体の重要なシステムへ侵入される可能性も否定できない。

 だからこそ、古いシステムでもセキュリティを高く保つ必要が出てきている。セキュリティに関しては、OSだけでなく、そのシステムで動作しているアプリケーションに関しても問題になる。OSは、セキュリティパッチが適応されていても、アプリケーションにSQLインジェクションやクロスサイトスクリプティングなどのセキュリティホールがあれば、簡単にシステムに侵入されてしまう。

 また、古いシステムでは、ソースコードや仕様書が残っておらず、どのように構築されているのか分からない、最悪の場合は開発会社自体が倒産して、誰もメンテナンスしていない、という状態になっている。こういった状態でも、セキュリティを保つことが必要になってきているのだ。

 そこで注目するのが、vSphere上で動作するDeep Securityだ。現在動作しているシステムをP2Vで仮想化し、Deep Securityが監視している環境で動かせば、仮想化したOSやアプリケーションにセキュリティホールがあっても、ある程度システムへの侵入を防止することができる。100%の侵入防止が可能といいたいところだが、侵入の仕方も多岐にわたっているため、もしかすると完全に防止することはできないかもしれない。

 それでも、セキュリティホールが開いたシステムを運用するよりも、IDS/IPS機能により、仮想的にパッチを当てて、特定のパケットを監視してブロックできるようになれば、セキュリティをある程度高く保つことができる。

 もちろん、Deep Securityを使っても、永遠にセキュリティを高く保てるというわけではない。やはり、根本的にセキュリティレベルを引き上げるには、システムの全面的なバージョンアップが必要になる。つまり、古いシステムでDeep Securityを使えば、システムの全面移行にかかる時間を稼ぐことができる、というわけだ。Deep Securityを使いながら、システムを運用しつつ、数年かけて、システムを新しいOS環境に移行したり、システム自体を作り替えたりすることができる。

 

 前述したように、VMware vSphere 4.1では、vShield Edge、vShield App、vShield Endpointといったセキュリティシステムが提案されている。しかしこれらのフレームワークで、実際にエンドポイントを守るアンチウイルスソフトなどは、トレンドマイクロやシマンテック、マカフィーなどのセキュリティ専門ベンダーが提供することになるだろう。

 仮想化環境における統合的なセキュリティに関しては、VMwareが一歩進んでいるが、次世代のXenでもサポートされるだろう。今後、ハイパーバイザーは、単にどれだけパフォーマンスが高いかといったことから、統合的なセキュリティフレームワークをキチンと備えているのか、といった点も選択のポイントになるかもしれない。

関連情報