Jump to content 日本-日本語

製品  >  HP ProLiant サーバ  >  技術情報  >  White Paper

whitepaper

HP Virus Throttleテクノロジ: Microsoft® Windows®環境での悪意のあるコードに対するステルス保護

HP ProLiant サーバ

目次

概要
  はじめに
  ウイルスおよびワームの特徴
 

HP ProLiantサーバにおけるVirus Throttleテクノロジ

  HP Virus Throttleの速度
  結論
  関連情報

PDFファイル ダウンロード

このホワイトペーパーのPDFファイルをこちらからダウンロードしてご覧下さい。
(PDFファイル、406KB)
コンテンツに進む

概要

本文書では、ウイルス対策ソフトウェアをすり抜けて急速に拡散しようとするワームやウイルスの複製を最小限に抑えるHP Virus Throttleテクノロジの仕組みについて説明します。 Virus Throttleは、悪意のあるコードをその動作に基づいて検出し、拡散速度を鈍化させることができます。この機能により、IT担当者は、ウイルス感染の対応に十分な時間を使うことができます。 Virus Throttleは、個々のマシンがすでに受けた被害に注目するのではなく、他のシステムへの被害を最小限に抑えるという点で、悪意のあるコードとの戦いにおける新たなパラダイムを提示します。 Virus Throttleテクノロジは、Microsoft® Windows® 2000、Windows 2003 Server、RedHat Enterprise LinuxおよびSUSE Linux Enterprise Serverの動作するサーバで、ProLiant Essentials Intelligent Networking Packの一部として提供されています。
本文書では、主にWindows OSの環境について説明します。


はじめに

Windowsベースのサーバは、悪意のあるコンピュータウイルスやワームからの執拗な攻撃を受けています。 現在、発見されているウイルスとワームの数は9万を超えており、毎年1万ずつ増え続けていると見られています。 ウイルス対策ソフトウェアのアプローチは、既知の署名のあるウイルスに対してだけ有効です。これは、せいぜい、ほとんどのマシンを部分的な保護状態に置くことができるという程度です。 ウイルス感染が起きると、被害は個々のマシンに止まりません。発生する大量のトラフィックによってネットワークがダウンする可能性があります。
Virus Throttleテクノロジは、ウイルス対策ソフトウェアとは異なる方法で悪意のあるコードに対抗します。 未知のウイルスやワームにマシンが感染すると、Virus Throttleはそのマシンからの送信接続を制限し、感染の拡大を大幅に遅らせます(図1)。これにより管理者は、対応のために十分な時間を得ることができます。 また、急速に拡散する悪意のあるコードにより発生する、ネットワークトラフィックへの負荷を減少させます。 Virus Throttleは、ウイルス署名なしで動作するので、広範囲に導入すれば、ネットワーク インフラストラクチャに、既知または未知の脅威に対する耐性を持たせることができます。
 
図1. ウイルスの攻撃に対する迅速な対応によって感染による影響(感染マシン数)を緩和
図1. ウイルスの攻撃に対する迅速な対応によって感染による影響(感染マシン数)を緩和

ウイルスおよびワームの特徴

一般に、ウイルスは、ホストプログラムに自分自身を添付することで、コンピュータからコンピュータへの伝染を試みます。 ユーザは、感染したファイルを共有したり電子メールで送信したりすることで、ホストプログラムを伝送してしまいます。 一方、ワームは、ユーザの関与なしでネットワークをスキャンして自身を複製します。 ワームとウイルスによる主な脅威は、それらが短時間で莫大な数のホストを感染させることです。 一度感染すると、それらのホストは、大規模なサービス拒否(DoS)攻撃、機密情報の盗取や破壊、および大量のトラフィックによるネットワークの混乱を仕掛けるために使用されることがあります。

悪意のあるコードがWindows環境で拡散する仕組み

基本的に、人間やウイルス対策ソフトウェアが対応可能な速度よりも速く脆弱なマシンに接続したときに悪意のあるコードが拡散してしまいます。1台のマシンが悪意のあるコードに感染すると(図2)、以下のいずれかまたは複数の方法で他のマシンに感染を試みます。
  • 後で他のユーザによって共有または要求される可能性のある実行可能ファイル(.exe)に感染する
  • サーバおよびクライアント上の電子メールアドレスの位置を特定し、感染した添付ファイルを大量にメール送信する
  • (場合によってはバッファオーバーフロー技術を使用して) Webサーバ プロセスを乗っ取り、感染をさらに試みる
  • ローカルエリアネットワーク(LAN)上のファイルサーバやその他のシステムに増殖する
 
図2. 典型的なワームの増殖
図2. 典型的なワームの増殖
  ウイルスおよびワームの増殖は、ネットワーク トラフィックに深刻な影響を与えます。 正常な状態では、マシンは所定の秒数の間に、比較的低いレートでマシンの短いリストに接続を行います。通常は、1秒当たり1接続(cps)です。 これに対して、感染したシステムは、できるだけ多くの異なるマシンに異常に高いレートで接続を試みます。 最も悪名高いウイルスの1つであるW32/Nimda-A (Nimda)は、上記のすべての方法を使用して推定400 cpsのレートで拡散しました。 2003年1月のW32/SQLSlam-A (SQLSlammer)ワームでは、30分間で世界中の約7万5,000台のサーバが感染しました。 感染したサーバは、SQL ServerまたはMSDE 2000の脆弱性のあるバージョンを実行していました。

署名ベースのウイルス対策アプローチの限界

現在のウイルス対策ソフトウェアのアプローチは、ウイルス署名ベースの検出方法を使用して既知の脅威がシステムに侵入することを防止しています。 ウイルス署名は、ウイルスの指紋であり、悪意のあるコード内の固有のビット列です。 新しいウイルスやワームが現れるたびに、熟練のプログラマがそれに対して新しいウイルス署名を作成します。 ウイルス対策ソフトウェアは、ウイルス署名を使用して悪意のあるコードが存在するかどうかをスキャンします。
署名ベースのウイルス対策アプローチには、いくつかの限界があります。 第1に、ウイルス署名はケースバイケースで作成されるため、基本的に事後対応だということです。 第2に、ウイルス署名の作成者は、所定時間内で限られた数の署名しか作成することができません。したがって、未知の悪意のあるコードは、その署名がリリースされるまで妨害を受けずに拡散することができます。 第3に、最近のワームやウイルスには複数の変種があります。 ポリモーフィック型コードとして知られる形態のウイルスは、ウイルス対策ソフトウェアに検出されないよう変異するため、大きな脅威になっています。 1つのウイルス署名を使用して、すべての変種を停止することはできません。
ハッカーは、ソフトウェア製品の大小の脆弱性を常に発見しています。したがって、IT管理者は、常に怠ることなくパッチとアップグレードをインストールしなければなりません。 IT管理者がパッチの適用を怠ると、有害なワームがITインフラストラクチャに大きな損害を与えることがあります。 2003年1月に襲ったSQLSlammerワームの場合、Microsoft社は2002年7月に最初のパッチを提供していましたが、多くのIT管理者はそのパッチをインストールしていませんでした。 たとえ管理者がパッチを正しくインストールしていても、ハッカーたちは別の抜け穴を発見しています。 彼らは、パッチが修正する予定だった脆弱性を特定して、それを悪用するためにパッチのリバースエンジニアリングを行っています。

HP ProLiantサーバにおけるVirus Throttleテクノロジ

Virus Throttleテクノロジは、Microsoft® Windows® 2000、Windows 2003 Server、RedHat Enterprise LinuxおよびSUSE Linux Enterprise Serverが動作するHP ProLiantサーバ向けの、ProLiant Essentials Intelligent Networking Pack (INP)の一部として提供されています。 Virus Throttleは、バックグラウンドで動作し、管理者の設定するパラメータに基づいて新しいシステムへの送信接続レートを制限します。 Virus Throttleは、ウイルスに似た動作が発生すると、増殖の速度を低下させ、IT管理者に通知します。 Virus Throttleは、悪意のあるコードの拡散を食い止めるためにウイルス署名を必要としないという、新たなウイルス対策のパラダイムを提示します。

Virus Throttleの仕組み

Virus Throttleテクノロジは、マシンの正常な動作を妨げることなく、新しいマシンへのTCP接続レートを制限します(図3)。 接続要求があると、Virus Throttleは、データパケットの送信先ホストを最近接続されたホストの作業セット(短いリスト)と比較します。 その送信先ホストが作業セットにある場合は、そのホストへのすべてのパケットが直ちに処理されます。 その送信先ホストが作業セットにない場合は、そのホストへのすべてのパケットは遅延キューに送信されます。 遅延キュー内のパケットは、レートリミッタによって決められた一定の間隔でリリースされ、処理されます。 レートリミッタは、(管理者が設定した)時間間隔ごとに1つのホストアドレスのみが処理されることを保証します。 パケットが新しい送信先ホストに対して処理されるときは、同じホストへの他のすべてのパケットが処理されます。
新しいホストへの要求頻度がレートリミッタのあらかじめ設定された頻度よりも多い場合は、遅延キューのサイズがあらかじめ設定されたしきい値(最高基準)まで大きくなる場合があります。 この状態になると、Virus Throttleは、WMIイベントを発行し、管理者にウイルスに似た動作として警告します。 システムにProLiant Insightエージェントがインストールされている場合は、SNMPトラップも送信されます。 遅延キューのサイズが最低基準を下回ると、Virus Throttleは、WMIイベント(および該当する場合はSNMPトラップ)を発行し、ウイルスに似た動作が停止したことを示します。
 
図3. ウイルスの抑制
図3. ウイルスの抑制

HP Virus Throttleの設定

管理者は、ユーザフレンドリなWindows GUI(図4)で設定を行うことで、Virus Throttleの感度を制御することができます。 これらの設定には、遅延キューサイズ、最低基準、最高基準、作業セットのサイズ、および遅延キューから接続要求がリリースされるまでの遅延期間があります。 Virus Throttleは、すべてのTCPプロトコル インスタンスにバインドします。したがって、複数のネットワーク インタフェース カード(NIC)のあるシステムは、Virus Throttleの複数のインスタンスを持つことになります。 管理者は設定を1回行うだけで、その設定がVirus Throttleのすべてのインスタンスに適用されます。
 
図4. ProLiant Essentials INP における[HP Virus Throttle Status and Configuration]ウィンドウ
図4. ProLiant Essentials INP における[HP Virus Throttle Status and Configuration]ウィンドウ
  マシンを効果的に抑制するには、その正常なネットワークトラフィックがウイルスのアクティビティ(高い送信接続レートと新しいホストへの頻繁な接続)と似たものであってはいけません。 ウイルスの抑制に適したプロトコルは、たとえば、SMTP(ポート25)、IMAP(ポート143)、Webプロキシ(ポート8088)など、同じホストへの接続を繰り返すものです。
構成パラメータによって遅延キューがネットワークトラフィックの一般的な範囲の最高基準を超える結果にならない場合は、送信先ホストが変更するプロトコルでも抑制することができます。 HP Labsは、さまざまなプロトコルに対するVirus Throttle設定の効果をシミュレートするテストを行いました(図5)。 グラフ上の3本の線は、それぞれ異なる送信先ポートのネットワークトラフィックに対応します。 テストの結果では、最善のパラメータ設定は、作業セットを最小にし、許容レートを最低にしたものであることが示されました。多くは、この場合に各線が水平になります。 たとえば、httpに対する最善のパラメータ設定は、作業セットが5で許容レートが1の場合になります。
 
図5. 異なるTCP送信先ポートに対するThrottleパラメータ設定
図5. 異なるTCP送信先ポートに対するThrottleパラメータ設定
  図6のGUIの[ステータス]タブをクリックすると、管理者は、構成パラメータに基づく統計を表示させることができます。 ウィンドウの一番下で、管理者は、[集計]モードを選択してVirus Throttleのすべてのインスタンスに対する統計を表示させるか、 [個別]モードを選択して個々のインスタンスの統計を表示させることができます。
 
図6. Virus Throttleの統計
図6. Virus Throttleの統計

ウイルスに似た動作の検出

個別のVirus Throttleインスタンスが遅延キューの最高基準を超過すると、ウイルスに似た動作が検出され、警告が送信されます。 そのアクティビティは、その遅延キューのサイズが最低基準を下回るまで続きます。 たとえば、図7は、現在遅延キューにあるパケット数(194)が図4に示す最高基準(160)を超過しているため、Virus Throttleがウイルスに似た動作についてのステータスメッセージを表示している様子を示しています。 Virus Throttleは、WMIイベントを発行して管理者に直ちに通知します。 システムにProLiant Insightエージェントがインストールされている場合は、SNMPトラップも送信されます。
 
図7. ウイルスに似た動作の通知
図7. ウイルスに似た動作の通知
  Virus Throttleは、現在遅延キューにあるパケット数が最低基準を下回った場合に、ウイルスに似た動作が停止したことを示すステータスメッセージを表示し(図8参照)、WMIイベントを(ProLiantエージェントがインストールされている場合はSNMPトラップも)管理者に発行します。
 
図8. ウイルスに似た動作の停止の通知
図8. ウイルスに似た動作の停止の通知

HP Virus Throttleの速度

HP Labsによるテスト1 では、Virus Throttleが、実際のワーム(NimdaおよびSQLSlammerを1秒未満で対応)と、さまざまなレートでスキャンするように設定されたテスト用のワームを、非常に効率的に検出、低速化、および停止することが示されました(表1)。 このテストでは、Virus Throttleが、ワームの世界的な拡散、およびその結果として生成されるネットワークトラフィック量を大幅に減少させることが実証されました。

  表 1. Virus Throttleが実際のワームおよびさまざまなレートでスキャンするテスト用ワームを停止する平均時間
 
ウイルス 接続/秒 停止時間(秒) 行われた接続数
Nimda 120 0.25 1
SQLSlammer 850 0.02 0
テストウイルス 2

106.00

104
テストウイルス 10 11.20 11
テストウイルス 60 1.40 1
テストウイルス 100 0.90 0
テストウイルス 200 0.02 0
1 2003年8月4〜8日に米国ワシントンD.Cで開催された、第12回 USENIXセキュリティ シンポジウムの議事録©Copyright Hewlett-Packard Company 2003

結論

Virus Throttleテクノロジは、悪意のあるコードをそのネットワーク上の動作に基づいて識別し、そのようなプログラムがシステムに侵入することを防ぐ代わりに、出て行くことを防ぐという点で、署名ベースのウイルス対策アプローチと異なるパラダイムです。
Virus Throttleは、ウイルスの動作によって作動するため、署名の更新やパッチを待たなくても、既知および未知の脅威に対応することができます。 Virus Throttleを使用すると、高い接続レートを示すシステムからのトラフィックを低速化することで、ネットワーク インフラストラクチャの機能を維持することができます。 Virus Throttleは、ワームに似たふるまいを検出すると、イベントログWMIイベントおよびSNMPトラップ警告を提供します。 Virus Throttleのアプローチが最も大きな意味を持つのは、問題が危機的状況になる前に、ITスタッフに対応する時間を与えることです。 Virus Throttleは、広範囲に導入することで、ウイルスの拡散を抑制することができます。

関連情報

詳細については、以下のリソースを参照してください。
 
Virus Throttling』 ホワイトペーパー、HP Labs、 UK、 (英語)
Resilient Infrastructure for Network Security』 ホワイトペーパー、HP Labs、 UK、 (英語)
Implementing and testing a virus throttle』 ホワイトペーパー、HP Labs、 UK、 (英語)

© Copyright 2005 Hewlett-Packard Development Company, L.P. 本文書に記載の事項は、予告なく変更されることがあります。HP製品およびサービスの保証は、各製品およびサービスに添付された保証書に記載の明示保証のみとなります。追加保証に違反すると解釈される事項は、本文書に一切記載されていません。HPは、本文書に記載の技術上、編集上の過失または不作為に対し、法的責任はありません。
MicrosoftおよびWindowsはMicrosoft Corporationの米国における登録商標です。
TC050406TB/2005
印刷用画面へ印刷用画面へ
プライバシー ご利用条件・免責事項