【無料ツールで作るセキュアな環境(12)】 〜snortのルール作成:ルールヘッダ部〜(執筆:office、みっきー)
前回ではsnortのルールセットのメンテナンスについて解説をおこなった。今回記事からは独自にルールそのものを作成するための手法を解説しよう。ルールを作成するとなると、TCP/IPの知識が多少必要であり、解説も少々長くなる。今回はルールヘッダ部についての解説であ
特集
特集
まず最初にルールの文法について説明する。snortのルールは次のサンプルの様に記述される。個々のsnortのルールはかならず1行内に収めなければならない。
alert tcp any any -> 192.168.0.0/24 23 (content:"passwd"; msg:"passwd was detected";)
snortのルールは、大きくわけて2つの部分から構成される。上記サンプルの先頭から括弧"("の手前までをルールヘッダ、それ以降の部分をルールオプションと呼ぶ。
ルールヘッダ部は、ルールのアクション、プロトコル、通信元および宛先のIPアドレスとネットマスク、それにポート番号から構成され、ルールオプション部には、アクションを実際に動作するための条件と、アラート時に出力すべきメッセージから構成される。
ルールの1番目の部分には、ルールのアクションを指定し、alert、log、pass、active、dynamicという5つのキーワードから選択する。ルールに記述された条件に合うパケットを受信した場合に、どのような操作がなされるかがルールのアクションの記述によって決定される。
alert:ルールオプション内の指示に従ってアラートを出力し、またパケットをログディレクトリ内に記録する。snortの起動時に -d オプションが指定されていれば、ログディレクトリ内にパケットのアプリケーションレイヤのデータを記録する。
log:パケットをログディレクトリ内に記録する。記録するのみでアラート出力は行わない。また、alertの場合と同様に -d オプションが指定されている場合にはアプリケーションレイヤのデータを記録する。
pass:パケットを通過させる。このルールに一致したパケットは、直ちに評価を終了し、以下のルールと一致することは無い。ただし、このキーワードを有効に活用するためには、snortの起動時に -o オプションを指定する必要がある。
activate:アラートを出力し、dynamicルールを有効にする。
dynamic:activateルールにより起動され、ログルールに従った処理を行う。
activateとdynamicは1対で記述することにより機能する。例えば「loginの文字列を検出した後に続く50パケットを記録する」などといったルールを記述することが可能である。
office
office@ukky.net
http://www.office.ac/
みっきー
micky@office.ac
http://www.hawkeye.ac/micky/
(詳しくはScan本誌をご覧ください)
http://www.vagabond.co.jp/scan/
《ScanNetSecurity》