カテゴリー
Linux

★5★ベースラインデータベースをアップデート【Tripwire】わたくしだって WordPress サーバの改ざん検知したい!【CentOS】

前回、Tripwire の改ざんチェックが自動化されていることを確認し、更にメールで自動的にレポートを送信するようにいたしました。

インストールの時に作成したままのベースラインデータベースですので、いくつか作業をいたしました後ですと、改ざんされていないにもかかわらず検知に引っかかってしまいます。

そこで、今回は Tripwire の改ざんチェック時に使用するベースラインデータベースのアップデート方法を学びたいと思います。

Tripwire データベースのアップデートはレポートを見ながら♪

tripwire コマンドでアップデートすることになりますが、まずはオプションを整理します。

  • -m u, –update → ベースラインデータベースのアップデート時に指定
  • -c cfgfile, –cfgfile cfgfile → 暗号署名された設定ファイル名を指定
  • -p polfile, –polfile polfile → 暗号署名されたポリシーファイルのファイル名を指定
  • -r report, –twrfile report → アップデート対象としたいファイルが記載されているレポートファイルを指定

アップデート対象とするレポートファイルを決めるべく、調べます。

[root@oki2a24 ~]# ll /var/lib/tripwire/report/
合計 56
-rw-r--r-- 1 root root 6686  7月 27 12:01 oki2a24.com-20130727-120039.twr
-rw-r--r-- 1 root root 8342  7月 28 02:00 oki2a24.com-20130728-020035.twr
-rw-r--r-- 1 root root 8606  7月 28 14:57 oki2a24.com-20130728-145642.twr
-rw-r--r-- 1 root root 8662  7月 28 15:17 oki2a24.com-20130728-151656.twr
-rw-r--r-- 1 root root 8798  7月 28 15:29 oki2a24.com-20130728-152839.twr
[root@oki2a24 ~]#

1番最近のレポートファイルを指定いたしましょう。そうすれば、アップデート後の変更のみが検知されるようになるはずです。

では実際に Tripwire のベースラインデータベースをアップデートします。

tripwire -m u -c /etc/tripwire/tw.cfg -p /etc/tripwire/tw.pol -r /var/lib/tripwire/report/oki2a24.com-20130728-152839.twr

するとレポートファイルが開かれました。ただし、ただ閲覧する時とは少し異なります。具体的には、改ざん検知したファイル一覧を表示する「Object Summary」部分です。

Remove the “x” from the adjacent box to prevent updating the database with the new values for this object.

とあります。アップデートしたくない部分は、「x」を取り除いてください!とあります。アップデートしたくないファイルとは、アップデート以後も改ざん検知に引っかかるようにしたいファイルのことです。

今回は、すべてアップデートしたいです。

…略…
===============================================================================
Object Summary: 
===============================================================================

-------------------------------------------------------------------------------
# Section: Unix File System
-------------------------------------------------------------------------------

-------------------------------------------------------------------------------
Rule Name: Tripwire Data Files (/var/lib/tripwire)
Severity Level: 100
-------------------------------------------------------------------------------

Remove the "x" from the adjacent box to prevent updating the database
with the new values for this object.

Added:
[x] "/var/lib/tripwire/oki2a24.com.twd"

-------------------------------------------------------------------------------
Rule Name: System boot changes (/var/log)
Severity Level: 100
-------------------------------------------------------------------------------

Remove the "x" from the adjacent box to prevent updating the database
with the new values for this object.

Added:
[x] "/var/log/sa/sar27"
[x] "/var/log/sa/sa28"

Removed:
[x] "/var/log/sa/sa19"
[x] "/var/log/sa/sar18"
…略…

ですので、一応すべて確認後、そのまま保存して閉じます。エディタは vi のようですので「:wq」で閉じます。

あら?失敗ですの><。

Interactive Update failed.
### Error: Report file could not be parsed.  Report may be corrupt.
### Exiting...

何度か試してみましたけれども、一向に改善されません。困りました><。

【幕間】Tripwire データベースアップデートでパースエラーとなる問題に対処

Tripwire レポートに日本語が混じっていることが原因でした。具体的には、日付です。次のようにして、無事アップデートできましたことを確認しました。

# 言語を確認
printenv | grep LANG

# LANG=ja_JP.UTF-8 と表示される

# 翻訳しないように設定
export LANG=C

# 言語を再び確認
printenv | grep LANG

# LANG=C と表示される

# Tripwire のベースラインデータベースアップデートを実行し、
# アップデートが終わったら言語を元に戻す
export LANG=ja_JP.UTF-8

言語変更をしてからアップデートいたしましたら、無事完了出来ました♪

つまり、言語を変更 → Tripwire ベースラインデータベースアップデート → 言語を元に戻す、の順番です。なお、元に戻さなくとも、SSH からログアウトすれば、言語設定は元に戻るはずです(未確認)。

参考になりましたページはこちらです。ありがとうございました!

気を取り直して Tripwire アップデートの続きです!

エラー対処で何回かチェックをやり直しています。最新のレポートを元にアップデートを行います。なお、指定しなくとも問題ないオプションは省いています。

tripwire -m u -r /var/lib/tripwire/report/oki2a24.com-20130728-174140.twr

アップデート対象をすべて確認しまして、保存してエディタを「:wq」で終了させます。するとローカルパスフレーズを求められますので入力します。

Please enter your local passphrase: 
Wrote database file: /var/lib/tripwire/oki2a24.com.twd

これで無事アップデートできました!

Tripwire データベースのアップデートを確認♪

整合性チェックのコマンドで、改ざんチェックに検知されなければ終了です!どうでしょうか?

tripwire -m c

「Total violations found:  0」と表示されました。これで完了ですわね♪

おわりに

これで日々の運用もバッチリでしょう!また、できることが増えました。嬉しいです。参考ページはこちらです。

あとは勉強のページを読み返してみて、気になる点を詰めていけばよいと思いますの。

以上です。

コメントを残す