前回は、マルウェアがどのような動きをするのかについて改めて整理しました。最終回は、今まで整理した情報を元に、どのように機密情報を守るかを具体的な方法でまとめていきたいと思います。
物理PC環境でのマルウェア感染

一般的な物理PC環境におけるマルウェア感染のステップについてもう少し簡素化し、要点を絞ります。
通常、PC環境からインターネットに接続する際には、ファイアウォール等のセキュリティ製品が配置されています。これらは、インターネットと内部のセグメントの境界に置くタイプになります。ファイアウォールにより、必要な通信は許可されているため、その通信を通じてPCにマルウェアが感染してしまうのは防ぐことが不可能です。
このような境界型セキュリティ方式では、PC同士の通信をコントロールすることができません。そのため、一度PCにマルウェアが感染してしまうと、PC同士の通信は自由なので、マルウェアがシステム把握をすることや感染拡大をするのは簡単にできてしまいます。
しかしながら、業務においてPC間の通信は必要でしょうか。答えはNOです。ほとんどの業務は、PCから業務サーバーにアクセスして行います。そのため、一部のP2P通信をするようなソフトウェア(Skype等のメッセンジャーソフトウェア)以外は、PC間通信は不要といえます。ただ、これらをコントロールできないため、それがマルウェアの感染パスの温床となってしまっている現実があります。
仮想デスクトップならではの対策

今回のインターネット分離では、インターネットセグメントは仮想デスクトップで検討されていることがほとんどです。そのため、ネットワーク仮想化を併用すれば、内部セグメントを1台1台のVDIごとに細かく分割して保護することができます。これをマイクロセグメンテーションと呼びます。業務において必要ないのであれば、VDI間の通信を許可しないことにより、もしマルウェアに感染したとしても、その1台のみにマルウェアの被害を最小化することができます。
さらに大きなポイントは、VDIごとにファイアウォールが設置されているのと同じなので、もしマルウェアがVDI間でシステム把握や拡散をしようとした際に、許可されていない通信ということで、ファイアウォールのドロップログが発生するということです。
マルウェアを既存ソリューションでは100%防げない、つまり気づけないという中で、このような仕組みを実装していれば、ファイアウォールのドロップログが発生すると、そのVDIでは何が起きているかわからないものの、不必要な通信をしようとしたVDIがいるということは理解することができます。
このマイクロセグメンテーションを実現するネットワーク仮想化技術として、VMwareはNSXという製品を提供しています。
マイクロセグメンテーションを利用したインシデントレスポンスフロー

2までは、マイクロセグメンテーションを利用しなくても同様ですが、そこからが大きく異なります。
- 攻撃者はゼロデイのマルウェアを利用して、標的型攻撃を仕掛けてきます。
- しかしながら、多重防御のセキュリティソリューションでも防げないものが感染してしまう。
- 一度感染したマルウェアは、機密情報への通信を確立するために、システムを把握するためのスキャンを開始する
- しかしながら、マイクロセグメンテーションにより、感染を最小化するだけでなく、ファイアウォールのドロップログを発生させる
4がインシデントレスポンスにおけるインシデント認知となります。これがマイクロセグメンテーションがなければ、おこなえなかったことになります。
さらに、防御側も運用が変わってきます。いろいろなセキュリティログを統合分析するのではなく、マルウェアの動きを利用したファイアウォールのドロップログに注視した運用をおこなうことになります。
- 常にVDI間の通信のファイアウォールドロップログを元に初動対策を取れる準備をしておく
- ファイアウォールドロップログが発生した場合に、まずは該当VDIの通信を止めて、C&Cサーバーへのアクセスを停止させる
- 他セキュリティソリューションのログの解析時も、闇雲におこなうのではなく、ファイアウォールドロップログのアクセス元、アクセス先を基軸としたログ解析を行うことにより、感染範囲の特定と報告内容をまとめることができる
- マイクロセグメンテーションにより、感染が最小化されているので、レスポンス範囲が限定化できる
このように不確実で膨大な作業量だった防御側の運用を、確実で効率の良いものに大きく変わることになります。
インシデントレスポンスフローの比較

マイクロセグメンテーションがあるかないかで、インシデントレスポンスフローがどのように変わるか整理したいと思います。
多層防衛により、脅威をブロックできれば、それがインシデント認知になり、レスポンスを打つことができます。しかしながら、多層防衛を突破されてしまうと、インシデント認知の方法が限定されます。
外部機関から指摘された場合は、これがインシデント認知になりますが、ほとんどの場合、これは情報漏えい済みと言えるでしょう。また、ログの統合分析も見つけられるかどうかの確実性が弱く、発見できたとしても時間がかかり、既に情報漏えい済みということも多いでしょう。ただ、この2つの場合は気づけているのでまだ良い方です。脅威に気づけないことも多く、情報漏えいしたことにすら気づけないという悲惨な現状にもなりかねません。

マイクロセグメンテーションが提供する価値は、VDIごとに設置されたファイアウォールのドロップログによる攻撃の認知と初動対策の迅速化が図れることです。インシデント認知ができなければ、その後のフローが全く機能しません。また、ドロップログによる疑義端末の特定と感染の最小化が実現されます。さらに、疑義端末が判明しているので、統合ログ解析の基軸とすることができます。
このようにマイクロセグメンテーションは、他のセキュリティソリューションと比べて、標的型攻撃を中に入れないというよりは、感染しても情報漏えいをさせないというアプローチになります。今回インターネット分離を導入いただいた自治体で、実は半分以上がこのマイクロセグメンテーションを実装しています。これは多層防衛にお金をかけるくらいであれば、いかに早く脅威に気づいて情報漏えいを防ぐかということを重要視をしているからではないかと思います。
セキュリティ観点における画面転送方式の選択

最後のまとめの前に、今までお話してきたセキュリティの観点において、VDIとSBC方式ではどちらの方式が望ましいのでしょうか。答えはVDIです。
まずは、マイクロセグメンテーションを実装する場合には、1OSを複数ユーザーで共有するSBC方式では、ファイアウォールのドロップログで疑義SBCを特定できたとしても、そのSBCを利用しているどのユーザーがそれを引き起こしているかについては、別の方法・ソリューションを使って特定する必要があります。VDIであれば、特定したVDIがそのままユーザーにつながるので、セキュリティ粒度が細かいといえるでしょう。
また、リフレッシュ頻度についてもVDIのほうが有利です。VDIの場合は、ログオフしたらすぐにリフレッシュできるので、マルウェアに感染していたとしても、残存期間が最小で済みます。SBCの場合は、ユーザーが共有しているため、どうしても一度誰も接続していない状態にしてからリフレッシュをしなければならないので、リフレッシュ頻度が週次や月次となりがちで、マルウェアが情報漏えいするために充分な時間を与えてしまうこととなります。
最後に
今回がvForumで講演した内容の全容となります。最後に要点を箇条書きにしてまとめて終わりたいと思います。

- インターネット分離はやる目的(何から守るか、何を守るか)を明確にする
- 標的型攻撃はその特性から、多層防衛により、100%防ぐことができない前提に立つ
- マイクロセグメンテーションにより、インシデント認知をおこなう
- インシデントに対して、被害範囲を最小化し、レスポンス範囲も限定できる
- つまりは本当に守りたい機密情報を守ることができる