CentOSにホスト型侵入検知ソフトAIDE(Advanced Intrusion Detection Environment)を導入

以前ファイルの改ざん検知用にTripwireを導入しましたが、AIDE (Advanced Intrusion Detection Environment)というパッケージもソフトウェアのインテグリティチェックを行う事が出来るようなので試しに導入してみました。

下記資料を参考に行いました。
NSA(National Security Agency)の『Guide to the Secure Configuration of Red Hat Enterprise Linux 5』
 
ソフトウェアのインテグリティチェックを行うことによって、侵入を防ぐことはできませんが、侵入があった事を検知することはできます。
 

1)インストール


 
yumコマンドで簡単にインストール出来ます。
 

# yum install aide
 
Installed:
  aide.x86_64 0:0.14-3.el6_2.2
 
Complete!

 

2)設定ファイル /etc/aide.conf


 
設定方法は未確認ですが、デフォルト設定でも多くの環境でそのまま使用できるようです。必要に応じてカスタマイズします。
 

3)ファイル情報を保持するデータベースを作成


 
①新しいデータベースを初期化
 
下記コマンドでデータベースを初期化します。
 
aide –init
 
・デフォルトでは、データベースは/var/lib/aide/aide.db.new.gzファイルに作成されます。
 
・データベースと設定ファイル(aide.conf)とバイナリ(/usr/sbin/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.conf)にデータベースの保存場所が下記のように設定されているのでデータベースファイルの名前を設定ファイルに合わせます。
 
@@define DBDIR /var/lib/aide
 
# The location of the database to be read.
database=file:@@{DBDIR}/aide.db.gz

 

4)aideでインテグリティチェック


 
①手動で事前に保存したデータベースと相違がないかチェックする場合
 
(実行例)

# /usr/sbin/aide --check

AIDE found differences between database and filesystem!!
Start timestamp: 2013-10-04 21:49:17
 
Summary:
  Total number of files:        139184
  Added files:                  1
  Removed files:                1
  Changed files:                1

---------------------------------------------------
Added files:
---------------------------------------------------

added: /var/log/smtpd/@40000000524eb80d3171e7d4.s

---------------------------------------------------
Removed files:
---------------------------------------------------

removed: /var/log/smtpd/@40000000524e8c96137bccf4.s

---------------------------------------------------
Changed files:
---------------------------------------------------

changed: /var/log/smtpd/current

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


File: /var/log/smtpd/current
  Size     : 78894                            , 26163
  Inode    : 792562                           , 783729

 
②インテグリティチェックを自動で定期的に実行する場合
 
(設定例)
Cronに毎日4時5分に実行するように登録する例を示します。
 
# vi /etc/crontab
 
05 4 * * * root /usr/sbin/aide –check

関連記事の目次
 
ネットワーク、ポート番号
  • iptablesを使ってCentOSのファイアウォール設定
  • nmapでオープンしているポート番号とバージョンを確認
  •  
    yum、rpmパッケージ、サービス
  • CentOSで不要なサービスは起動しないようにする
  • RPMパッケージのインテグリティチェック
  •  
    パーミッション
  • cronで使用するファイルのパーミッション設定
  • CentOSのumaskの設定
  • ユーザーホームディレクトリ内の権限設定をセキュアにする
  • CentOSのパスワードファイルのパーミッション設定
  • findコマンドでファイル書込権限をいっせいにチェック
  • findコマンドでセットユーザ(グループ)IDが不要にセットされていないかチェック
  • findコマンドで所有者、グループが存在しないファイルを抽出
  •  
    ログイン、認証、パスワード、アカウント制御
  • ログイン時などに表示されるシステムバナーを変更するには?
  • CentOSのユーザーアカウントのパスワードポリシーを設定
  • pam_cracklibモジュールでパスワードポリシーを設定
  • pam_unix.soモジュールを使って過去のパスワード再使用を制限する
  • システムコンソールでのrootログインを制限する方法
  • suコマンドによるrootへのスイッチを制限する
  • root権限でのコマンド実行、sudoだと監査ログが取得できる
  • デーモン用アカウントなどに対しシェルを使用を無効にする
  • パスワード認証を失敗時にアカウントをロックアウトする設定
  • rootアカウントのPATH環境変数のセキュリティについて
  •  
    auditdでシステム監査
  • auditdを使ってシステム監査
  • auditdのログ容量の設定
  • auditd監査ルールの設定方法
  • auditdで時間設定変更操作を監査する
  • auditdでユーザー・グループ設定ファイル変更操作を監査する
  • auditdでネットワーク関連の設定変更を監査する
  • auditdでログイン記録のログファイルの変更を監査する
  • auditdでファイル所有者や権限の変更に関するイベントを監査する
  • auditdでsetuid、setgidプログラムの実行を監査する
  • auditdでマウント操作を監査する
  • auditdでファイル削除操作を監査する
  • auditdでsudo設定ファイルに対する操作を監査する
  • auditdでカーネルモジュールのロード、アンロードを監査する
  • マシン再起動後にauditdの設定変更を有効にする設定
  • ausearch、aureportで監査ログのサマリレポートを作成
  •  
    ツール
  • NTPのセキュリティを考慮した設定
  • セキュリティを考慮してX Windowsを設定または削除する方法
  • ファイルの改ざん対策用にTripwireを導入
  • CentOSにホスト型侵入検知ソフトAIDE(Advanced Intrusion Detection Environment)を導入
  •  
    トラブルシューティング
  • アイドルのシェルを自動で強制終了させるには?
  • CentOSでコアダンプを無効にする方法
  • Linuxのbash脆弱性CVE-2014-6271、Shellshockを修整
  • CentOSでバッファーオーバーフロー脆弱性に対する防御機能が有効になっているか確認する

  • コメントを残す

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です