不正侵入検知システムを知るSnortでつくる不正侵入検知システム(1)(1/3 ページ)

» 2004年08月10日 10時00分 公開
[早川勇太@IT]

※ご注意

本稿の内容を検証する場合は、必ず影響を及ぼさない限られた環境下で行って下さい。また、本稿を利用した行為による問題に関しましては、筆者および株式会社アットマーク・アイティは一切責任を負いかねます。ご了承ください。


 「IDS」という言葉をご存じだろうか。IDSとは「Intrusion Detection System」の略で、日本語では「侵入検知システム」と訳される。この連載ではフリーのIDSであるSnortを題材に、IDSのインストールから運用までを解説していきたいと思う。

IDSとは何か

 「IDSとは一体何なのか」。そう疑問に思った方は少なくないであろう。簡単にいえば、「ネットワークを流れるパケットに対してあるパターンに合致しているか否かを判定し、合致している場合はあらかじめ定められた処理を行う」ものである。

 「あらかじめ定められた処理」とは具体的にどのような処理なのかというと、大抵は「警告を発する」という処理が行われる。あくまで「警告を発する」だけであることに注意してほしい。その警告を受けてどう動くかは、ほかならぬIDS管理者次第なのである。

 「IDSを導入するメリットは何なのであろうか」という疑問を持たれるかもしれない。最も大きなメリットは「異常に気付かせてくれる」という点である。IDSがなければ、何か異常が発生したとしてもそれに気付くことは容易ではない。IDSを導入した後にそれが発する警告を眺めてほしい。恐らくその量の多さに驚くことだろう(後ほど述べるが、これらすべてが不正アクセスであるとは限らない)。

IDSとファイアウォールは何が違うのか

 次に浮かんでくる疑問は、「IDSがあればファイアウォールは不要なのではないか」、あるいは「ファイアウォールがあるからIDSは不要なのではないか」といったものだろう。答えは「否」である。そもそもIDSとファイアウォールはお互いを補完する関係にある。もちろん、それぞれを単体で運用しても有益であるが、両者を組み合わせればさらに有益なものとなる。理想的にはファイアウォールとIDSの両方を設置することが望ましいといえる。

 強引な例えを用いるとすれば、ファイアウォールは「自動改札」であるといえる。チケットを持たない者は通さないが、チケットさえ持っていれば通行を許可してしまう。HTTP(Port 80)のみが許可されたファイアウォールであれば、SSH(Port 22)は遮断されるが HTTPは遮断されない。もしそのHTTPパケットが悪意のあるものであったとしてもだ。

 一方IDSはというと、「有人改札」であるといえる。チケットを持っているか否かに加え、そのチケットの持ち主が例えば指名手配犯でないかどうかといったことをチェックする。もし指名手配犯であれば、警察に通報することだろう。このようにIDSは、あるパケットがバッファオーバーフローを引き起こす脆弱性を狙ったものであるかどうかを判断し、そうであればIDS管理者に警告する。

IDSと誤検知(False PositiveとFalse Negative)

 IDSには誤検知がつきものである。ネットワークに対し最適化されていないならなおさらである。一般に「誤検知」といわれるものには、大きく分けて2つの種類が存在する。「False Positive」と「False Negative」である。

 False Positiveとは、「正当なパケットを不正なものであると判断してしまう」ことである。False Negativeとは「不正なパケットであるにもかかわらず見逃してしまう」ことである。どちらも「誤検知」であることには変わりないが、IDSの観点から見れば前者の方が問題は少ない。

 「誤検知があっても問題はないのではないか」と考える方がいらっしゃるかもしれないが、それは最初だけである。IDSが警告をログに記録する場合で考えてみよう。最初のうちは誤検知があってもそれを無視してログをチェックするであろう。しかし、次第に誤検知の相対量が増えてくると、正規の警告が誤検知に埋もれてしまう。そうすると正規の警告を見逃しやすくなってしまう。探すのも面倒になる。その結果どうなるか。IDSの警告を無視するようになる。正しく侵入を検知しているものもそうでないものも、すべて無視するようになる。

 極端な例だと思われるかもしれないが、多かれ少なかれそのようになっていくものである。また、ログを保存するストレージの容量を無駄に消費することにつながったり、余計なリソースを消費したりする結果にもなる。

 このことから導き出される結論はただ1つ。「誤検知は極力減らすべし」。では、どうやって誤検知を減らしていけばよいのか。答えは単純である。ネットワークに最適化すればよい。しかしながら、単純であることと簡単であることは等価ではない。より具体的な方法については、今後紹介していきたいと思う。

Index

Snortでつくる不正侵入検知システム

Page1

IDSとは何か

IDSとファイアウォールは何が違うのか

IDSと誤検知(False PositiveとFalse Negative)


Page2

ネットワーク型IDSとホスト型IDS

シグネチャ型IDSとアノマリ型IDS


Page3

Snortの特徴

Snortに関する情報源


       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。