今回は、ファイルの改ざん検知で「AIDE」というツールがあるので、試してみました。

インストールはyumで行うことが可能です。

# yum -y install aide
...

はじめに、ベースラインを作成します。

# 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

少し時間をおき、アップデート(差分チェック&データベースファイルの作成)します。

# aide --update
AIDE found differences between database and filesystem!!
Start timestamp: 2013-02-06 19:24:07
Summary:
Total number of files: 57521
Added files: 0
Removed files: 0
Changed files: 2
---------------------------------------------------
Changed files:
---------------------------------------------------
changed: /opt/suz-lab/var/log/syslog/all.log
changed: /opt/suz-lab/var/lib/td-agent/pos/tail.syslog.pos
--------------------------------------------------
Detailed information about changes:
---------------------------------------------------
File: /opt/suz-lab/var/log/syslog/all.log
Size : 8083723 , 8430461
Mtime : 2013-02-06 16:32:26 , 2013-02-06 19:25:34
Ctime : 2013-02-06 16:32:26 , 2013-02-06 19:25:34
MD5 : IbyJhWJQ4Vf45QISTiRQ/w== , mD7kwUHR3Fr/zErJp+qRQw==
RMD160 : uJqBamhN7SrngsGIhNEl8bCbAZg= , dTQgMnzrHKkCJuhiHCV/w7aY3cs=
SHA256 : YClVNrQIfcJIYiOeJmpl/HSg5idi1EVM , 82SQJ3vmu72zpCDs+LFg8jXCUfuh3g9t
File: /opt/suz-lab/var/lib/td-agent/pos/tail.syslog.pos
Mtime : 2013-02-06 16:32:26 , 2013-02-06 19:25:34
Ctime : 2013-02-06 16:32:26 , 2013-02-06 19:25:34
MD5 : NGwL/nWAms7l4FfD1hS6TA== , Q+Xl0ac9XXGHDeRSMzDDFw==
RMD160 : mb1Q3WOeOOBqnm/mkkORbAAR5dE= , 73JGsD8ZzFA71xvsF1hNWFlquYQ=
SHA256 : ZwLcczKYJUEcYaapF2eVQmwTAd0qIhhs , dXlQyMu0tMcd1ldliZTN6cXU/rnyupAy

そうすると、/opt/suz-lab/var/log/syslog/all.logと/opt/suz-lab/var/lib/td-agent/pos/tail.syslog.posが、
変更されていると、出力されました。

上記は常に変更されるファイルのため、除外するよう設定します。

# cat /etc/aide.conf
...
!/opt/suz-lab/var/log
!/opt/suz-lab/var/lib/td-agent
...

再度、アップデートします。

# aide --update
AIDE found differences between database and filesystem!!
Start timestamp: 2013-02-06 23:45:08
Summary:
Total number of files: 57507
Added files: 0
Removed files: 0
Changed files: 1
---------------------------------------------------
Changed files:
---------------------------------------------------
changed: /etc/aide.conf
--------------------------------------------------
Detailed information about changes:
---------------------------------------------------
File: /etc/aide.conf
Inode : 5310 , 5361

今度は先ほど変更した設定ファイル自身が検出されてしまいました。

そこで、同時にデータベースファイル(新規)も作成されているため、比較対象のデータベースファイルとして
再度コピーします。

# cp /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
cp: `/var/lib/aide/aide.db.gz' を上書きしてもよろしいですか(yes/no)? yes

再度アップデートすると、今度は変更が無い旨の出力になりました。

# aide --update
AIDE, version 0.14
### All files match AIDE database. Looks okay!
### New AIDE database written to /var/lib/aide/aide.db.new.gz

こちらの記事はなかの人(suz-lab)監修のもと掲載しています。
元記事は、こちら