Snort
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
* [[Snort]]
ネットワーク型IDSで監視してみようということで、Snortを使...
[[EasyIDS>http://www.skynet-solutions.net/easyids/]]とい...
あります。NIC2枚挿しが前提のようで、Webインターフェースか...
#contents
** インストール
どうもSnortはlibpcapとlibpcreが必要になるので、まずlibpca...
wget http://www.tcpdump.org/beta/libpcap-0.9.1-096.tar.gz
tar xzvf libpcap-0.9.1-096.tar.gz
cd libpcap-0.9.1
./configure
make
make install
では次にlibpcreをインストールします。http://www.pcre.org/...
wget http://osdn.dl.sourceforge.net/sourceforge/pcre/pcr...
./configure
make
make install
ではSnortをインストールします。http://www.snort.org/より...
wget http://www.snort.org/dl/current/snort-2.3.3.tar.gz
またChecksumがあるので、落としておいて正しいファイルかど...
wget http://www.snort.org/dl/current/snort-2.3.3.tar.gz....
md5sum snort-2.3.3.tar.gz
で表示される値と
cat snort-2.3.3.tar.gz.md5
で表示される値が同じであれば、OKです。では続きを
tar xzvf snort-2.3.3.tar.gz
cd snort-2.3.3
./configure --with-mysql=yes
この--with-mysql=yesを使うとMySQLにアラートを出力できるよ...
ERROR: unable to find mysql headers (mysql.h)
んー どうもMySQLのディレクトリが違うみたいなので、指定し...
./configure --with-mysql=/usr/local/mysql
make
make install
では、snort用にユーザとグループを作っておきましょう。
groupadd snort
useradd -g snort -s /bin/false snort
では設定ファイルを/etcにコピーしておきます。
mkdir /etc/snort
cp etc/* rules/* /etc/snort
またlog用のディレクトリも作っておきます。
mkdir /var/log/snort
chown snort:snort /var/log/snort
ではMySQLの設定をしておきましょう。Snort用にDBを作って、S...
mysql -u root -phogepass
create database snort;
grant all privileges on snort.* to snort@localhost ident...
FLUSH PRIVILEGES;
exit;
cd schemas
mysql -D snort -u root -phogepass < create_mysql
これで一応MySQLの設定は終わりです。
さてつきは設定ファイルです。先ほど/etc/snortにコピーした...
var HOME_NET any -> var HOME_NET 192.168.1.0/24 >監視す...
var DNS_SERVERS $HOME_NET -> var DNS_SERVERS 192.168.1.1...
以下各サーバのアドレスを指定
var SMTP_SERVERS
var HTTP_SERVERS
var TELNET_SERVERS
複数記述する場合は、
var SMTP_SERVERS [192.168.1.1,192.168.1.2]
ではルールのあるパスを設定します。
var RULE_PATH ../rules -> var RULE_PATH /etc/snort
MySQLの設定で、
output database: log, mysql, user=root password=test dbn...
のコメントをとり、user,password,dbnameを先ほど設定した値...
ではsnortを起動してみましょう。
snort -c /etc/snort/snort.conf -i eth0 -u snort -g snort...
オプションは
-c 設定ファイル
-i インターフェイス
-u 起動するユーザ
-g グループ
-l ログの保存先
-D デーモンで起動
-d アプリケーション層でログ取得
-y アラートとログファイルのタイムスタンプに年をつける
-e second layer headerの情報を表示
-p ノンプロミスキャストモードで動かす。NIDSにはならなく...
-? ヘルプ表示
うっ... error while loading shared libraries libmysqlclie...
とりあえず、/libで
ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.12
で動きました。/etc/ld.so.confを確認しておきましょう。
tail -f -n 200 /var/log/messages
で確認してみました。では、起動用のスクリプトを用意してお...
#!/bin/sh
# chkconfig: 345 90 30
# description: snort
. /etc/rc.d/init.d/functions
SERVICE="snort"
SERVER="/usr/local/bin/snort"
ARGS="-D -i eth0 -u snort -g snort -c /etc/snort/snort.c...
case "$1" in
start)
echo -n "Starting $SERVICE: "
daemon "$SERVER $ARGS"
echo
touch /var/lock/subsys/$SERVICE
;;
stop)
echo -n "Stopping $SERVICE: "
killproc $SERVICE
echo
rm -f /var/lock/subsys/$SERVICE
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $SERVICE {start|stop|restart}"
exit 1
esac
exit 0
を/etc/init.dにsnortというファイルで作成して、実行権限を...
chkconfig --add snort
**threshold.conf
アラートの出力を制御します。
limit 期間内のアラートで最初の設定値まで出力する。
threshold 期間内のアラートで設定値以上まで出力しない。
both 期間内のアラートで設定値以上まで出力しないが、それ...
たとえば、
threshold type limit, track by_src, count 1, seconds 60
by_srcでソースIPを対象にカウント行い、secondsの間でcount...
**ACID
これを使えば状況をWebブラウザから確認することができます。...
wget http://www.andrew.cmu.edu/user/rdanyliw/snort/acid-...
tar xzvf acid-0.9.6b23.tar.gz
cp -R acid/ /webroot/
ではacid_conf.phpを編集します。
$DBlib_path = "/usr/local/lib/php/adodb";
$alert_dbname = "snort";
$alert_host = "localhost";
$alert_port = "";
$alert_user = "snort";
$alert_password = "hogepass";
$ChartLib_path = "/usr/local/lib/php/jpgraph";
では保存して、webからアクセスしてみましょう。
http://localhost/acid
Setup pageをクリックして、Create ACID AGをクリックすると、
Successfully created 'acid_ag'
Successfully created 'acid_ag_alert'
Successfully created 'acid_ip_cache'
Successfully created 'acid_event'
とでればOKです。http://localhost/acid/acid_main.phpを見...
http://www.atmarkit.co.jp/fsecurity/rensai/snort03/snort0...
**ルール更新
Oinkmasterで自動化してみたいと思います。ではhttp://oinkma...
wget http://umn.dl.sourceforge.net/sourceforge/oinkmaste...
tar xzvf oinkmaster-1.2.tar.gz
cd oinkmaster-1.2
cp oinkmaster.pl /usr/local/bin
cp oinkmaster.conf /etc
では設定ファイルを編集します。/etc/oinkmaster.confを開く...
まずhttps://www.snort.orgでユーザ登録しておきます。ユーザ...
# Example for Snort 2.3
#url = http://www.snort.org/pub-bin/oinkmaster.cgi/<oinkc...
gz
ここで#urlの#のコメントはずし、<oinkcode>のところに先ほど...
また下記のコメントもとっておきます。
#skipfile threshold.conf
#modifysid 302 "\$EXTERNAL_NET" | "\$HOME_NET"
#disablesid 4,5,6
ではユーザをつくっておきましょう。
useradd -g snort oinkmaster
ルールのバックアップディレクトリを作ります。
mkdir /etc/snort/rules.backup
では更新してみましょう。
oinkmaster.pl -C /etc/oinkmaster.conf -o /etc/snort -b /...
-oはルールがあるディレクトリです。
-bはバックアップを格納するディレクトリです。
うまく更新されましたら、cronに登録しておきましょう。
http://www.stackasterisk.jp/tech/systemManagement/snort04...
**プロミスキャストモード
/sbin/ifconfig eth0 promisc <-ON ifconfigでUP BROADCA...
/sbin/ifconfig eth0 -promisc <-OFF ifconfigでUP BROAD...
**調査
通常NICはノンプロミスキャストモードで動いている。つまり自...
>どうもSnort起動時にNICをプロミスキャストモードにしている...
** リンク
http://www.snort.gr.jp/docs/~
http://www.snort.gr.jp/docs/SnortClass.html Snortアラート...
http://www.stackasterisk.jp/tech/systemManagement/snort01...
** 参考書籍
[[Snort 2.0侵入検知―オープンソースソフトウェアで構築する...
** コメント
-#comment
終了行:
* [[Snort]]
ネットワーク型IDSで監視してみようということで、Snortを使...
[[EasyIDS>http://www.skynet-solutions.net/easyids/]]とい...
あります。NIC2枚挿しが前提のようで、Webインターフェースか...
#contents
** インストール
どうもSnortはlibpcapとlibpcreが必要になるので、まずlibpca...
wget http://www.tcpdump.org/beta/libpcap-0.9.1-096.tar.gz
tar xzvf libpcap-0.9.1-096.tar.gz
cd libpcap-0.9.1
./configure
make
make install
では次にlibpcreをインストールします。http://www.pcre.org/...
wget http://osdn.dl.sourceforge.net/sourceforge/pcre/pcr...
./configure
make
make install
ではSnortをインストールします。http://www.snort.org/より...
wget http://www.snort.org/dl/current/snort-2.3.3.tar.gz
またChecksumがあるので、落としておいて正しいファイルかど...
wget http://www.snort.org/dl/current/snort-2.3.3.tar.gz....
md5sum snort-2.3.3.tar.gz
で表示される値と
cat snort-2.3.3.tar.gz.md5
で表示される値が同じであれば、OKです。では続きを
tar xzvf snort-2.3.3.tar.gz
cd snort-2.3.3
./configure --with-mysql=yes
この--with-mysql=yesを使うとMySQLにアラートを出力できるよ...
ERROR: unable to find mysql headers (mysql.h)
んー どうもMySQLのディレクトリが違うみたいなので、指定し...
./configure --with-mysql=/usr/local/mysql
make
make install
では、snort用にユーザとグループを作っておきましょう。
groupadd snort
useradd -g snort -s /bin/false snort
では設定ファイルを/etcにコピーしておきます。
mkdir /etc/snort
cp etc/* rules/* /etc/snort
またlog用のディレクトリも作っておきます。
mkdir /var/log/snort
chown snort:snort /var/log/snort
ではMySQLの設定をしておきましょう。Snort用にDBを作って、S...
mysql -u root -phogepass
create database snort;
grant all privileges on snort.* to snort@localhost ident...
FLUSH PRIVILEGES;
exit;
cd schemas
mysql -D snort -u root -phogepass < create_mysql
これで一応MySQLの設定は終わりです。
さてつきは設定ファイルです。先ほど/etc/snortにコピーした...
var HOME_NET any -> var HOME_NET 192.168.1.0/24 >監視す...
var DNS_SERVERS $HOME_NET -> var DNS_SERVERS 192.168.1.1...
以下各サーバのアドレスを指定
var SMTP_SERVERS
var HTTP_SERVERS
var TELNET_SERVERS
複数記述する場合は、
var SMTP_SERVERS [192.168.1.1,192.168.1.2]
ではルールのあるパスを設定します。
var RULE_PATH ../rules -> var RULE_PATH /etc/snort
MySQLの設定で、
output database: log, mysql, user=root password=test dbn...
のコメントをとり、user,password,dbnameを先ほど設定した値...
ではsnortを起動してみましょう。
snort -c /etc/snort/snort.conf -i eth0 -u snort -g snort...
オプションは
-c 設定ファイル
-i インターフェイス
-u 起動するユーザ
-g グループ
-l ログの保存先
-D デーモンで起動
-d アプリケーション層でログ取得
-y アラートとログファイルのタイムスタンプに年をつける
-e second layer headerの情報を表示
-p ノンプロミスキャストモードで動かす。NIDSにはならなく...
-? ヘルプ表示
うっ... error while loading shared libraries libmysqlclie...
とりあえず、/libで
ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.12
で動きました。/etc/ld.so.confを確認しておきましょう。
tail -f -n 200 /var/log/messages
で確認してみました。では、起動用のスクリプトを用意してお...
#!/bin/sh
# chkconfig: 345 90 30
# description: snort
. /etc/rc.d/init.d/functions
SERVICE="snort"
SERVER="/usr/local/bin/snort"
ARGS="-D -i eth0 -u snort -g snort -c /etc/snort/snort.c...
case "$1" in
start)
echo -n "Starting $SERVICE: "
daemon "$SERVER $ARGS"
echo
touch /var/lock/subsys/$SERVICE
;;
stop)
echo -n "Stopping $SERVICE: "
killproc $SERVICE
echo
rm -f /var/lock/subsys/$SERVICE
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $SERVICE {start|stop|restart}"
exit 1
esac
exit 0
を/etc/init.dにsnortというファイルで作成して、実行権限を...
chkconfig --add snort
**threshold.conf
アラートの出力を制御します。
limit 期間内のアラートで最初の設定値まで出力する。
threshold 期間内のアラートで設定値以上まで出力しない。
both 期間内のアラートで設定値以上まで出力しないが、それ...
たとえば、
threshold type limit, track by_src, count 1, seconds 60
by_srcでソースIPを対象にカウント行い、secondsの間でcount...
**ACID
これを使えば状況をWebブラウザから確認することができます。...
wget http://www.andrew.cmu.edu/user/rdanyliw/snort/acid-...
tar xzvf acid-0.9.6b23.tar.gz
cp -R acid/ /webroot/
ではacid_conf.phpを編集します。
$DBlib_path = "/usr/local/lib/php/adodb";
$alert_dbname = "snort";
$alert_host = "localhost";
$alert_port = "";
$alert_user = "snort";
$alert_password = "hogepass";
$ChartLib_path = "/usr/local/lib/php/jpgraph";
では保存して、webからアクセスしてみましょう。
http://localhost/acid
Setup pageをクリックして、Create ACID AGをクリックすると、
Successfully created 'acid_ag'
Successfully created 'acid_ag_alert'
Successfully created 'acid_ip_cache'
Successfully created 'acid_event'
とでればOKです。http://localhost/acid/acid_main.phpを見...
http://www.atmarkit.co.jp/fsecurity/rensai/snort03/snort0...
**ルール更新
Oinkmasterで自動化してみたいと思います。ではhttp://oinkma...
wget http://umn.dl.sourceforge.net/sourceforge/oinkmaste...
tar xzvf oinkmaster-1.2.tar.gz
cd oinkmaster-1.2
cp oinkmaster.pl /usr/local/bin
cp oinkmaster.conf /etc
では設定ファイルを編集します。/etc/oinkmaster.confを開く...
まずhttps://www.snort.orgでユーザ登録しておきます。ユーザ...
# Example for Snort 2.3
#url = http://www.snort.org/pub-bin/oinkmaster.cgi/<oinkc...
gz
ここで#urlの#のコメントはずし、<oinkcode>のところに先ほど...
また下記のコメントもとっておきます。
#skipfile threshold.conf
#modifysid 302 "\$EXTERNAL_NET" | "\$HOME_NET"
#disablesid 4,5,6
ではユーザをつくっておきましょう。
useradd -g snort oinkmaster
ルールのバックアップディレクトリを作ります。
mkdir /etc/snort/rules.backup
では更新してみましょう。
oinkmaster.pl -C /etc/oinkmaster.conf -o /etc/snort -b /...
-oはルールがあるディレクトリです。
-bはバックアップを格納するディレクトリです。
うまく更新されましたら、cronに登録しておきましょう。
http://www.stackasterisk.jp/tech/systemManagement/snort04...
**プロミスキャストモード
/sbin/ifconfig eth0 promisc <-ON ifconfigでUP BROADCA...
/sbin/ifconfig eth0 -promisc <-OFF ifconfigでUP BROAD...
**調査
通常NICはノンプロミスキャストモードで動いている。つまり自...
>どうもSnort起動時にNICをプロミスキャストモードにしている...
** リンク
http://www.snort.gr.jp/docs/~
http://www.snort.gr.jp/docs/SnortClass.html Snortアラート...
http://www.stackasterisk.jp/tech/systemManagement/snort01...
** 参考書籍
[[Snort 2.0侵入検知―オープンソースソフトウェアで構築する...
** コメント
-#comment
ページ名: