疑似環境で試してみよう!InterTrack
トレースバック運用実験
さまざまなトレースバックシステムを相互接続してトレースバック網を構築するInterTrackについて、第2回ではアーキテクチャの解説を行いました。
最終回となる今回は、InterTrackのソフトウエアと、(財)日本データ通信協会 テレコム・アイザック推進会議の主導のもと、実施予定のトレースバック運用実験の紹介を行います。
ソフトウエアとしてのInterTrack
原稿執筆時点(2009年2月)で、InterTrackの開発自体はほぼ終わり、InterTrackをオープンソースとして公開するためのパッケージング作業をしています。近日中に「IP Traceback : A mechanism to find attack paths」(http://iplab.naist.jp/research/traceback/)にて公開予定です。ちょっと気が早いですが、ここからはソフトウエアとしてのInterTrackをごくごく簡単に解説していきたいと思います。
詳しい内容を知りたい方は上記のWebサイトにInterTrackのマニュアルである、「できるInterTrack~設定ガイド~」と「できるInterTrack~運用ガイド~」がPDFファイルとして掲載してあるので、それらのマニュアルを参照してください。
InterTrackのプログラム群を実行するには、Linuxを用いることを推奨しています。お勧めはDebian 4.0 Releaseです。
InterTrackのパッケージには、第2回で説明したInterTrackを構成する各機能のサンプルプログラムが含まれています。
サンプルプログラム間の関係は図1のようになります。それぞれのサンプルプログラムの機能と役割について説明しましょう。
まず、ITM(Inter-domain Traceback Manager)のサンプルプログラムです。ITMは複数の組織を接続するためのソフトウエアです。1組織内に1つしか設置しません。
転送方式にFloodモード(要求元以外のすべての隣接するITMにリクエストを転送)、Strictモード(AS境界探査で経路の上流側にあると判定されたASにあるITMにのみにリクエストを転送)、Hybridモード(Strictモードでまず動作し、隣接してなければFloodモードにFallbackしてリクエストを転送)の3つの転送ストラテジを実装しています。BGP的に隣接していないASの間であってもITM間をピアリングしてFloodモードやHybridモードで動かせば、トレースバック網を構築できます。
BTM(Border Traceback Manager)は、通過判定のみの管理マネジャー・プローブ一体型(BTM)のサンプルプログラムです。ハッシュ方式で「AS境界探査」を行うソフトウエアです。AS境界ルータ(ASBR)の対外接続回線のトラフィックをポートミラーなどで取得してパケットハッシュをメモリ上に記録します。BTMを使う場合、ITMはFloodモードかHybridモードで動かさないとAS間追跡が行えないので注意してください。
BTM2は、流入経路判定機能付き管理マネジャー・プローブ一体型BTMのサンプルプログラムです。BTMの高機能版です。通過判定だけでなく、BGPから隣接ASのAS番号とAS境界ルータのMACアドレスを学習し、流入経路判定まで行います。Internet Exchangeポイントなど同一レイヤ2リンクで複数のASとピアリングしている環境に設置すると有効です。BTM2を用いる場合はITMをStrictモードかHybridモードで動かすことをお勧めします。
DP(Decision Point)のサンプルプログラムです。複数のTCを束ねて、ITMにトレースバック開始のリクエストを中継するソフトウエアです。1組織内に1つしか設置しません。
TC(Traceback Client)は、ランダムサンプリングでパケットハッシュを生成してトレースバックを開始するサンプルプログラムです。任意の地点に設置可能ですが、被害サーバー上もしくは被害サーバーの近接でトラフィックを収集できるように設置するのが基本です。
TC_SNORTは、snortのアラートからパケットハッシュを生成してトレースバックを開始するTCのサンプルプログラムです。snortが検知した攻撃パケットをunix domain socket経由で取得できるようにsnortを動かしているサーバー上で動かします。
TC_HTTPはWebインターフェースからパケットハッシュを入力してトレースバックをするTCのサンプルプログラムです。任意の場所に設置できます。tcpdumpやwiresharkで取得したパケットからパケットハッシュを計算して入力するとトレースバックを開始します。
これらのソフトウエアは別々のサーバーマシンで動作させて連携させることも、単一のサーバーですべてのソフトウエアを動作させることも可能です。