読者です 読者をやめる 読者になる 読者になる

IDS -Intruction Detection System-

IDS、侵入検知システムについて少し詳しく。
類似した機能・動作をするものとしてファイアウォールやIPSがあるが、それらとの厳密な違いについては別項にて。
ここではとりあえずIDSに特化してまとめる。

NIDSとHIDS

とりあえずIDSはネットワーク型とホスト型に別れる。それぞれNIDS(Network...)とHIDS(Host...)という。
NIDSはネットワーク上に他のホストと同様に配置するハードウェア。HIDSは各ホストにインストールするソフトウェア。目的は一緒でも動作や特徴はだいぶ異なる。
 

NIDS

こちらは主にセグメント単位で監視するための機材。スイッチなどにぶら下げて利用。不正なパケットの流れを検知して警告、場合によっては通信の遮断を行う。とはいえ通信の遮断はトランスポート層レベルで行われるのであまり強力な防御性能は持たない。
基本的に通信の流れを横から眺めているだけで、サーバーとクライアントの間には介入しない。ゆえに通信速度やサーバーの処理速度に影響を与えない点が長所。だが裏を返せば並列につないでパケットを監視するだけなので、監視しているパケットは既にホストに到達している。つまり「ヤバイ!」と思ったときにはもうヤバイ状況になっている可能性が高い。この辺が欠点といえる。
なお試験で問われそうなポイントは二つ(だと俺は思う)。
1つめのポイントは設置場所と設定。まずどの範囲を監視したいかで設置場所が変わる。DMZバリアセグメント、内部LANなどなど。またちゃんと設定しないとパケットが取得できないので注意。この辺はネットワーク設計の問題?
2つめのポイントは監視ルールの設定。これにより誤検知や見逃しの頻度がきまる。
 

HIDS

BlackICEなんかが有名なソフトウェアIDS。パーソナルファイアウォールと似ているけれど、より細かく通信を解析できる点で優秀。たとえばモノによってはログイン中のユーザーの権限上昇なんかも検知できるとかできないとか・・・。こちらは来たパケットを解釈してから各サーバーソフトウェアに渡せるので防御能力からいったらネットワーク型より優秀。でも基本的に一つのホスト(=インストールされたホスト)しか監視できないのが欠点。またソフトウェアな上に通信の間にはいるので、サーバーの処理能力や通信速度に影響を与えるという欠点もある。
負荷分散のために複数のWEBサーバーを立てている場合やNIDSに出来てHIDSに出来ないこと(あるいはその逆)が試験で問われそうな気がする。
ちなみに恩田陸の小説「ねじの回転」にもHIDSって病気が出てくるが、こいつは歴史的免疫不全症候群(Historical Immune Deficiency Syndrome)という架空の病気で本件とは関係なしwこの段落自体も本トピックには関係なしwでは閑話休題
 

IDSに出来ないこと

一つ一つのパケットをただ振り分けをするだけのファイアウォールと比べると、パケットの中や複数パケットの関連性から攻撃を検知してくれるIDSはカコイイ。でもこいつにも出来ることと出来ないことがある。試験では多分、出来ないことが特に重要。
というわけでまとめ。
出来ないこととしてはまず、アプリケーションレベルの脆弱性を突く攻撃が挙げられる。これも程度に依るのだが、たとえばXSSクロスサイトスクリプティング)やSQLインジェクションのような攻撃の場合、アプリケーション(HTTPdとかサーブレットとか)が解釈するまで悪玉かどうかの区別がつけられない。(酷いと文法上は違いがなく、振る舞いで初めて悪玉とわかるなんてコトもある)他にも、暗号化された通信の中身も仕様上見られない場合が多く、監視の対象外となってしまいがち。また、人が見ないと重要とわからない資源の流出(ex メールで顧客情報流出とか)はIDSではどうしようもない。
IDSの発展系でこれらの弱点を克服しようとしているものも存在はするが、それだって万能じゃない。この辺は万能セキュリティツールなんて存在しないんだから、他の部分で防御する必要が出てくるってことじゃないかと。たとえばJavaサーブレットでちゃんとエスケープ処理をするとか、社員教育をちゃんとするとか(現場で有効かどうかは知らんが)その他諸々。
どちらかといえばこの辺はセキュアドチックな設問になりそうだけれど、初年度だし出題傾向を俺がそこまで分析しているわけでもないのであまり信用しないように。

その他覚え書き

以下は俺の覚え書きです。読んでも良いけど意味無いよ。
・NIDSを用いた適切なネットワーク構成とその根拠を考える
 →セグメントの確認、スイッチの設定(ミラーリング)、リピータ、TAPの利用、監視コンソールとの通信路確保、その他いろいろ
・NIDSが正しく機能する設定を復習
 →プロミスキャスモード、ファイアウォールにおける通信許可、監視コンソールとの通信手法、などなど
・IDSを利用したシステムでも起こりうる障害や事件、問題を想像
 →情報流出(経路は?)、検出できるはずの不正侵入(監視対象は?)、IDSに対する攻撃、暗号通信の監視手法、非常時の対応について などなど
・その他思いついたことがあったらここに追記すること