振る舞い検知型IPSの技術解説

後編 “振る舞い検知”の裏側にある技術


出雲 教郎
日本ラドウェア株式会社
技術本部 ソリューション・アーキテクト
2009/6/1

前編「従来型IPSの課題と解決策」では、ボットネットやゼロデイアタックなどの脅威に対し、IPSがどのように対処しているのかを解説しました。後編では攻撃トラフィックがネットワーク上でどう振る舞うかを具体的に紹介します(編集部)

 振る舞い検知のアルゴリズムは、その対象となる脅威ごとに統計となる情報を決め、いくつかの統計情報を相関分析して判定する。ネットワーク全体への脅威としては、DoS攻撃、DDoS攻撃が挙げられるが、主にトランスポート層のプロトコルであるTCPやUDP、またネットワーク層のIPプロトコルの特性を悪用したものが多い。クライアントコンピュータの脅威としては、ワームやマルウェア、ボットの拡散行為が挙げられ、サーバコンピュータの脅威としては不正アクセスやアプリケーションへの過剰アクセス攻撃が挙げられる。

 後編では、まずネットワークの振る舞い分析として、その代表的な通信方式であるTCPプロトコル、UDPプロトコルに対し、振る舞い検知型IPSがどのように統計情報を学習し、分析して処理しているかを解説する。そのあとクライアントの振る舞い分析手法、サーバの振る舞い分析手法を続けて解説しよう。

 ネットワークの振る舞いを分析する

 TCP通信では「SYN」、「ACK」、「FIN」などのフラグを付けてパケットを送信することにより、トランスポート層における接続の一貫性を保証する通信を実現している。振る舞い検知型IPSでは、TCP通信の振る舞いを分析するにあたり、各TCPセッションごとにどのフラグがどの程度使われているかを調べる。具体的には、「SYN」フラグに対しての「ACK」フラグの出現量、また「FIN」フラグの出現割合がどの程度になっているかを統計して分析する。

【注】
ここでは詳細に説明しないが、TCP通信ではシーケンス番号など、そのほかにもいくつかのメカニズムを用いている。

図1 TCP通信のセッション確立まで

 TCPプロトコルでは、最初にセッションを開始するときだけ「SYN」フラグが付加されたパケットを送受信し、セッションを確立したあとはアプリケーションのデータが入ったパケットや、「ACK」フラグが付けられた応答パケットをやりとりする。通常の通信におけるこれらのフラグの送受信回数を、それぞれのTCPセッション当たりで統計を取ると、セッションにおける各フラグのパーセンテージはおおむね同じ比率に落ち着く。

 振る舞い検知のアルゴリズムでは、このTCPセッションにおけるフラグの分散具合と、ベースラインに対するトラフィックレートの変動率を相関分析し、攻撃が行われているかを判断する。SYNフラッディングが発生した場合は、そのTCPセッションの中でSYNパケットが100%になるため、トラフィックの量が増加したこととあわせて攻撃と判定し、該当するパケットを抜き出してフィルタを作成する。

 正常なアクセスがスパイクした場合は、通常、そのセッションの中でSYNフラグのついたパケットは2回しか送受信されず、そのほとんどがアプリケーションのデータパケットである。そのように正常なフラグの分散比率であれば、例えアクセスが殺到(トラフィックがスパイク)したとしても攻撃と誤判定することはない。

 UDPプロトコルの場合は、接続の一貫性を保証するものではないため、TCPプロトコルのようなフラグは存在しない。しかし、UDPパケットを受信したホストは、受信が正常に行われていないときにICMPパケットを使い、状況を送信者に通知する。UDPプロトコルに対する振る舞い検知アルゴリズムは、各UDPセッションに対するさまざまなICMPパケットの数を統計し、トラフィックの推移とあわせて相関分析を行う。

1/3

Index
後編 “振る舞い検知”の裏側にある技術
Page1
ネットワークの振る舞いを分析する
  Page2
クライアントの振る舞いを分析する
サーバの振る舞いを分析する
  Page3
フィードバックループによる最適化
ターゲットはソフトウェアの脆弱性からサービスの脆弱性へ

Security&Trust記事一覧


Security&Trust フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Security & Trust 記事ランキング

本日 月間