AlmaLinuxにファイル改ざん検知ツール「aide」をインストールする

AlmaLinuxにファイル改ざん検知ツール「aide」をインストールする

AlmaLinuxに、ファイル改ざん検知ツールである「aide」をインストールするまでの手順を記述してます。

環境

  • OS AlmaLinux 8.3

aideインストール

dnfでインストールすることができます。

sudo dnf install aide

以下がインストールされていることを確認することができます。

rpm -ql aide

<出力結果>
/etc/aide.conf
/etc/logrotate.d/aide
/usr/lib/.build-id
/usr/lib/.build-id/f6
/usr/lib/.build-id/f6/499b4743ea2b3b3e8f1c85dedcecaaf0eec94b
/usr/sbin/aide
/usr/share/doc/aide
/usr/share/doc/aide/AUTHORS
/usr/share/doc/aide/ChangeLog
/usr/share/doc/aide/NEWS
/usr/share/doc/aide/README
/usr/share/doc/aide/README.quickstart
/usr/share/doc/aide/contrib
/usr/share/doc/aide/contrib/aide-attributes.sh
/usr/share/doc/aide/contrib/bzip2.sh
/usr/share/doc/aide/contrib/gpg2_check.sh
/usr/share/doc/aide/contrib/gpg2_update.sh
/usr/share/doc/aide/contrib/gpg_check.sh
/usr/share/doc/aide/contrib/gpg_update.sh
/usr/share/doc/aide/contrib/sshaide.sh
/usr/share/doc/aide/manual.html
/usr/share/licenses/aide
/usr/share/licenses/aide/COPYING
/usr/share/man/man1/aide.1.gz
/usr/share/man/man5/aide.conf.5.gz
/var/lib/aide
/var/log/aide

aide設定

まずは、以下のコマンドを実行して初期化を行います。

sudo aide --init

<出力結果>
dStart timestamp: 2021-04-25 11:10:01 +0900 (AIDE 0.16)
AIDE initialized database at /var/lib/aide/aide.db.new.gz

Number of entries:      178738

---------------------------------------------------
The attributes of the (uncompressed) database(s):
---------------------------------------------------

/var/lib/aide/aide.db.new.gz
  MD5      : uu+wVMj09UlX/g6rci1Geg==
  SHA1     : 8tRPxiEhVJb7NMYB3i/DUIVe8pc=
  RMD160   : Bj11VxSCDpQtUB6hG1qTPjjVoHs=
  TIGER    : ar/vBjuE8M/EiOU96jk7DdDwT0KXTXsl
  SHA256   : VSunk8IfQgeLzTEXxTp6bgY4c1zw6gBz
             34KFlAwjwQY=
  SHA512   : VUi8eHOkn0bWXfAzJAZHJ4ujrbmZd6pa
             2vgk1+ETqtbj0CBmh/3SPUX/y56QSQ7p
             idQksTHFQ+93e12tcTSMeQ==


End timestamp: 2021-04-25 11:16:18 +0900 (run time: 6m 17s)

作成したDBを、参照先のPATHに移動させておきます。

sudo mv -f /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz

## 上記と同じ
sudo mv -f /var/lib/aide/aide.db{.new,}.gz

/etc/aide.confに、検知の必要ないディレクトリを設定しておきます。

sudo vi /etc/aide.conf

自分の場合は以下のように設定してます。

# These are too volatile
!/usr/src
!/usr/tmp
!/tmp
!/proc
!/usr/log

aide使い方

以下のコマンドを実行すると、チェックが実行されます。

sudo aide -C

実行結果は、以下に書き出されます。

sudo less /var/log/aide/aide.log

<出力結果>
Start timestamp: 2021-04-25 11:24:42 +0900 (AIDE 0.16)
AIDE found differences between database and filesystem!!

Summary:
  Total number of entries:      178738
  Added entries:                0
  Removed entries:              0
  Changed entries:              1

---------------------------------------------------
Changed entries:
---------------------------------------------------

f   ...    .C..  : /etc/aide.conf

---------------------------------------------------
Detailed information about changes:
---------------------------------------------------

File: /etc/aide.conf
  SHA512   : 0It29JyjciPxGlnKkLoqyHGGS/h8yaYb | dREkwBUGB66xG3t3SczFOfCiK4MEDBwh
             U5AWRDFOteAm6N9zN6yWyfvZjfbvVQcD | awUXfJqN/dD5I3jJuqZo1t2HM2v4epAs
             ErE3w5hlHTKzWjAJ1NLHFg==         | dETGsY7v4hBovgXlgYn8nw==


---------------------------------------------------
The attributes of the (uncompressed) database(s):
---------------------------------------------------

/var/lib/aide/aide.db.gz
  MD5      : uu+wVMj09UlX/g6rci1Geg==
  SHA1     : 8tRPxiEhVJb7NMYB3i/DUIVe8pc=
  RMD160   : Bj11VxSCDpQtUB6hG1qTPjjVoHs=
  TIGER    : ar/vBjuE8M/EiOU96jk7DdDwT0KXTXsl
  SHA256   : VSunk8IfQgeLzTEXxTp6bgY4c1zw6gBz
             34KFlAwjwQY=
  SHA512   : VUi8eHOkn0bWXfAzJAZHJ4ujrbmZd6pa
             2vgk1+ETqtbj0CBmh/3SPUX/y56QSQ7p
             idQksTHFQ+93e12tcTSMeQ==


End timestamp: 2021-04-25 11:30:31 +0900 (run time: 5m 49s)

DBを更新するには、以下のコマンドを実行すれば更新されます。

sudo aide -u
sudo mv -f /var/lib/aide/aide.db{.new,}.gz

ためしに、一度「aide」を上記のコマンドで更新して、改ざんしてみます。

sudo touch /bin/test-dummy

チェックします。

sudo aide -C

<出力結果>
Start timestamp: 2021-04-25 12:16:36 +0900 (AIDE 0.16)
AIDE found differences between database and filesystem!!

Summary:
  Total number of entries:      178739
  Added entries:                1
  Removed entries:              0
  Changed entries:              3

---------------------------------------------------
Added entries:
---------------------------------------------------

f++++++++++++++++: /usr/bin/test-dummy

---------------------------------------------------
Changed entries:
---------------------------------------------------

f   ...    .C..  : /etc/aide.conf
f   ...    .C..  : /etc/cups/subscriptions.conf
f   ...    .C..  : /etc/cups/subscriptions.conf.O

---------------------------------------------------
Detailed information about changes:
---------------------------------------------------

File: /etc/aide.conf
  SHA512   : 0It29JyjciPxGlnKkLoqyHGGS/h8yaYb | dREkwBUGB66xG3t3SczFOfCiK4MEDBwh
             U5AWRDFOteAm6N9zN6yWyfvZjfbvVQcD | awUXfJqN/dD5I3jJuqZo1t2HM2v4epAs
             ErE3w5hlHTKzWjAJ1NLHFg==         | dETGsY7v4hBovgXlgYn8nw==

File: /etc/cups/subscriptions.conf
  SHA512   : qt6+MzP7Y4ICAekAjXK+yK0LGNL4Psx5 | NNlaknU5jhiaEd9OipL5MfvkkMUEimuF
             6LzvFqPAFhNuFjNPtXT7gQPvBYo+LonH | /S19D9at5jdxR+E/iIqppkPtBj7lOKz2
             m5e492kEu1vCOnyIwvFqVw==         | OG422uGN3xMW5bztX2cZug==

File: /etc/cups/subscriptions.conf.O
  SHA512   : wQUn16HBBFu8O9OxPB25jMzLKFDnydID | qt6+MzP7Y4ICAekAjXK+yK0LGNL4Psx5
             7YngJjiVhlt8HAxFgrNjnjvhYl/dkUqT | 6LzvFqPAFhNuFjNPtXT7gQPvBYo+LonH
             64BcrIo7lJ6+zq5crP8/2A==         | m5e492kEu1vCOnyIwvFqVw==


---------------------------------------------------
The attributes of the (uncompressed) database(s):
---------------------------------------------------

/var/lib/aide/aide.db.gz
  MD5      : uu+wVMj09UlX/g6rci1Geg==
  SHA1     : 8tRPxiEhVJb7NMYB3i/DUIVe8pc=
  RMD160   : Bj11VxSCDpQtUB6hG1qTPjjVoHs=
  TIGER    : ar/vBjuE8M/EiOU96jk7DdDwT0KXTXsl
  SHA256   : VSunk8IfQgeLzTEXxTp6bgY4c1zw6gBz
             34KFlAwjwQY=
  SHA512   : VUi8eHOkn0bWXfAzJAZHJ4ujrbmZd6pa
             2vgk1+ETqtbj0CBmh/3SPUX/y56QSQ7p
             idQksTHFQ+93e12tcTSMeQ==


End timestamp: 2021-04-25 12:22:24 +0900 (run time: 5m 48s)

通知

後は、cronなどで定期実行して結果をmailで通知を行えばファイルの改竄が検知できるかと思います。

aide -u | mailx -s 'aied finish' root;mv -f /var/lib/aide/aide.db{.new,}.gz