10:侵入検知システムの導入(aide)

Date 2014-5-6 9:09:07 | Topic: Linux (サーバー制作)

参考URL:http://www.websec-room.com/2013/11/09/999
# yum -y install aide
AIDE の動作設定は、/etc/aide.conf で行いますが、ここではセキュリティー上の理由で公開しません。と言うのも、悪さをしようとする者は必ずAIDEのDBファイルを改竄しようとしますので、この場所が非常に大事になります。また下記に示してあるのはテスト時の場所で、最後にテストが終了後、この位置ではなく別の場所にしております。
/etc/aide.confは参考URLを参照し、設定していってください。
監視対象から外すには、先頭に ! を付けます。取り敢えず走らせ、メールが着ますので、よく変更になるdirectoryやファイルを設定していけばいいと思います。
AIDEの持っているデータベースの初期化
# aide --init
ありゃりゃエラーが出るぞ、
/usr/sbin/prelink: /usr/sbin/mtr: at least one of file's dependencies has changed since prelinking
Error on exit of prelink child process
これはインストール後、時間が経ちyum の updateが走り、リンク済みのバイナリと新しいバイナリではハッシュ値が合わないので、prelinkがエラーを出している見たい
# /etc/cron.daily/prelink
でハッシュ値を更新する。再度
# aide --init
これは全てのファイルをスキャンしているので時間がかかる
AIDE, version 0.14
### AIDE database at /var/lib/aide/aide.db.new.gz initialized.

と表示されファイルが出来たので、出来たファイルを登録
# cp /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
改ざんのチェックをするために、ファイルを作成
# echo "TEST" >> dummy.txt
aideでチェックを実行
# aide --check
AIDE found differences between database and filesystem!!
Start timestamp: 2014-05-06 10:19:07
Summary:
  Total number of files:	180686
  Added files:			1
  Removed files:		0
  Changed files:		77
---------------------------------------------------
Added files:
---------------------------------------------------
added: /root/dummy.txt
---------------------------------------------------
Changed files:
---------------------------------------------------
changed: /usr/sbin changed:
/usr/bin changed:
/usr/lib64 changed:
中略 
--------------------------------------------------
Detailed information about changes:
---------------------------------------------------
Directory: /usr/sbin
  Mtime    : 2014-05-06 10:07:48              , 2014-05-06 10:07:57
  Ctime    : 2014-05-06 10:07:48              , 2014-05-06 10:07:57
Directory: /usr/bin
  Mtime    : 2014-05-06 10:07:49              , 2014-05-06 10:09:38
  Ctime    : 2014-05-06 10:07:49              , 2014-05-06 10:09:38
後略

ファイルが一つ増え(dummy.txtを足したから当たり前)、77のdirectoryの Mtime と Ctime に変更があった。
私は未熟なので何故directoryの時間が変更になったかは不明。
MtimeとCtimeはhttp://x68000.q-e-d.net/~68user/unix/pickup?%A5%BF%A5%A4%A5%E0%A5%B9%A5%BF%A5%F3%A5%D7を参照
後で調べて見よう。
【2015-07-07追記】この理由が分かりました。ここを参照 prelinkingのせいだそうです。ここにあるように
# gedit /etc/sysconfig/prelink
# Set this to no to disable prelinking altogether
# (if you change this from yes to no prelink -ua
# will be run next night to undo prelinking)
PRELINKING=no ← ここをnoに変更

定期実行するスクリプトの作成
# gedit /etc/cron.daily/aide
#!/bin/bash
MAILTO=root
LOGFILE=/var/log/aide/aide.log
AIDEDIR=/var/lib/aide
/usr/sbin/aide  -u > $LOGFILE
cp $AIDEDIR/aide.db.new.gz $AIDEDIR/aide.db.gz
x=$(grep "Looks okay" $LOGFILE | wc -l)
if [ $x -eq 1 ]; then
  echo "All Systems Look OK" | /bin/mail -s "AIDE OK" $MAILTO
else
  echo "$(egrep "added|changed|removed" $LOGFILE)" | /bin/mail -s "AIDE DETECTED CHANGES" $MAILTO
fi
/etc/cron.daily/prelink ←2015-07-07追記:prelinking をignoreしたので追記
exit

私は root へのメールは /etc/aliases に設定があり、そこに設定したメアドにメールが来る
スクリプトに実行権限をつける
# chmod +x /etc/cron.daily/aide
スクリプトを試してみる
# /etc/cron.daily/aide
設定したメアドのメールが着ているかチェックする。
あと、アップデートがあった時は
# aide --init
でデーターベースをアップデートしておくこと。


This article comes from 錦稜会 KINRYOKAI
https://www.kinryokai.net

The URL for this story is:
https://www.kinryokai.net/article.php?storyid=214