Bleedingsnort Rules
●概要
Bleedingsnort ( http://www.bleedingsnort.com/index.php ) で公開されているSnortのルールを追加します。
ルールアップデートには、oinkmaster を使用します。
頻繁にルールの更新がされているようです。しかし、すべて有効にすると頻繁にアラートがあがるのでカスタマイズが必要です。
ごくまれに、Bleedingsnortルール用に環境変数を追加する必要があります。(SSH_PORTS等)
よって、Bleedingsnortルールを使用する場合は、注意が必要です。
Snortを再起動した際に、あがってこなくなる可能性があります。(私はハマりました)
●バージョン
- oinkmaster 1.2
●インストール環境
- CentOS 4.0
- Snort 2.3.3
●前提条件
- Snortが正常に動作していること
- Oinkmasterが正常に動作していること
●参考URL
●Oinkmasterの追加設定
# cd /usr/local/oinkmaster/ # cp -p oinkmaster.conf oinkmaster-bleedingsnort.conf # vi oinkmaster-bleedingsnort.conf url を以下に変更 url = http://www.bleedingsnort.com/bleeding.rules.tar.gz #
●Snort 設定ファイルの修正
# vi /etc/snort/snort.conf 以下を追加 var SSH_PORTS 22 var SSH_CLIENT_HOSTS any var SSH_SERVER_HOSTS any # bleedingsnort rules include $RULE_PATH/bleeding-attack_response.rules include $RULE_PATH/bleeding-dos.rules include $RULE_PATH/bleeding-exploit.rules include $RULE_PATH/bleeding-game.rules include $RULE_PATH/bleeding-inappropriate.rules include $RULE_PATH/bleeding-malware.rules include $RULE_PATH/bleeding-p2p.rules include $RULE_PATH/bleeding-policy.rules include $RULE_PATH/bleeding-scan.rules include $RULE_PATH/bleeding-virus.rules include $RULE_PATH/bleeding-web.rules #
●Oinkmasterの実行
VRTルールアップデート用スクリプトに Bleedingsnortルールアップデート処理を追加します。
(sig-map の修正処理があるため、出来るだけ同じタイミングで処理したい)
なお、VRTルールアップデート時に必ず "Removed from sid-msg.map 〜" という内容が表示されるのでcronの設定を変更します。
(アップデート前のVRTルールsidファイルにBleedingsnortのsidが含まれているため)
# vi /usr/local/oinkmaster/rule-update 以下内容に修正 #!/bin/sh OINKDIR="/usr/local/oinkmaster" RULEDIR="/etc/snort/rules" ## VRT Rule $OINKDIR/oinkmaster.pl -o $RULEDIR -C $OINKDIR/oinkmaster.conf -b /etc/snort/rules/Backup -Q chown -R snort:snort /etc/snort/ ## Bleedingsnort $OINKDIR/oinkmaster.pl -o $RULEDIR -C $OINKDIR/oinkmaster-bleedingsnort.conf -b /etc/snort/rules/Backup -Q cd $RULEDIR /bin/cp sid-msg.map sid-msg.map.orig /bin/cat bleeding-sid-msg.map sid-msg.map.orig | sort -u > sid-msg.map chown -R snort:snort /etc/snort/ # # crontab -e 5 * * * * /usr/local/oinkmaster/rule-update >/dev/null 2>&1 # # /usr/local/oinkmaster/rule-update # /etc/init.d/snort restart #
●注意事項
oinkmasterでルールのアップデートを行っても、snortのプロセスを再起動しないと新しいルールは有効になりません。
ルールアップデート用スクリプト内にsnortを再起動するコマンドを追加してもいいのですが、新ルールの不具合等によりsnortが起動しない場合があります。snortのプロセス監視を行っていればsnortが停止したことを発見できますが、もし行っていないと、snortが止まっていることに気がつかず、そのままの状態になってしまします。よって、新ルールの適用(snortの再起動)は管理者が手動で行うことを推奨します。


キーワード:
参照:[にわか鯖管のメモ]