共通脅威パターンの最後、5番目の「ウイルスのシステム内拡散、機能更新脅威」に対抗する設計と運用を考察していきます。4番までの対策で、外部C&Cとウイルス間の通信を遮断し、組織内の重要なサーバーにバックドアの感染を抑止できれば、残りはウイルスと設置されているバックドアを検知し、排除するという処置になります。

セグメントを分離してログを可視化、異常なログを拾い出す

 その端末がインターネットに直接接続していないから安心だということはありません。狡猾な方法でウイルスはバージョンアップや窃取・破壊活動を遂行します。また、P2Pを使ってウイルスが進化すると、パターンで検知するタイプのウイルス対策ソフトでは、合致パターンを見つけ出しにくくなり、検知や駆除は困難になってしまいます。

 前回の対策でデータの窃取と破壊を防ぐために、深奥部のサーバーをVLANなどで分離するように設計するという話をしました。これとは別に各部署でセキュリティレベルに応じてネットワークを分離しておく必要があります。例えば、管理系LANと一般系LANを分離するといったことです。これにより必要のない通信を止め、他部署で感染してしまったウイルスの蔓延を最低限に抑えることができます。

 さらにウイルス拡散に対する検知機能の設計が望まれます。ウイルスの検知は簡単ではありません。ウイルス対策ソフトのように、パターンに合致するかどうかの“存在”から検知するのではなく、その“行動”(通信内容や通信量)から検知するという考え方が必要です。行動を監視するには、まずはネットワーク設計ルールに違反する通信をログで調査するといった運用管理体制の整備が必要です(図5-1)。

図5-1●P2P到達範囲の限定設計の模式図
図5-1●P2P到達範囲の限定設計の模式図
[画像のクリックで拡大表示]

 まずウイルスの拡散を防止するために、スイッチなどの容量負荷監視を行ってください。明らかに通常とは異なる量のP2P通信がスイッチを行き来していれば、ウイルスの拡散行動が疑われます。

 新しいタイプの攻撃に使われるウイルスが行うP2P通信には次のような特徴があります。

■ウイルス間あるいは外部C&Cからの指令待機:システム内部に拡散したウイルス間でP2Pを使用した機能更新のための通信を行います。機能の更新によってセキュリティをかいくぐるための高性能化や偽装情報の更新が行われます。またバックドアを介した外部からの指示によってデータの窃取や送出、破壊活動を開始したり停止したりといった動作もします。情報収集の指示など動作の仕様を持つウイルスの例としては、StuxnetのMS-RPCによるP2Pがあります。

■クローズド部分に感染しているウイルスへの更新と指示:システムの深奥部、インターネットに対して直接HTTP接続できないセグメント上に感染している端末に対して、インターネットへの接続が可能な感染端末を経由して機能更新や情報窃取などの指示を送ります。感染した端末がインターネットから分離されているからといって、ウイルスが活動できなくはないですし、データの窃取や破壊といった活動も実行します。

 データを保持する重要なサーバーに対するアクセスについても、アクセスログを確認して監視します。窃取や破壊を回避したい重要なサーバーは、運用者だけが直接操作できるようにし、業務サーバー経由で一般利用者へ提供するというルール作りも必要でしょう。

 ウイルスはバックドアを通じた外部からの指示で、一斉バージョンアップなどシステム内のウイルス間でも通信を実行しようとします。この一斉バージョンアップを防ぐために、ネットワーク内で一般業務に使用しない不要なRPCを遮断するという対策も有効です。