エンタープライズ:特集 2002/10/08 00:00:00 更新


第3回:レポートの参照とデータベースのアップデート (4/4)

ポリシーファイルのアップデート

 実際にTripwireを使用していると、新しくインストールしたファイル類をTripwireのチェック対象として加えることや、すでにチェック対象となっているファイルのプロパティマスク(チェックしたい内容)を変更する機会が出てくることになる。そこで、現在のポリシーファイルを編集した際などには、ポリシーファイルのアップデートを行う。

■ポリシーファイルの出力

 はじめに、現在のポリシーファイルを編集する作業を行うことになるが、ポリシーファイルは暗号署名され、そのままでは見ることができない。「暗号署名前のクリアテキストがあるから、それを編集すればいいじゃないか」と思われるかもしれないが、第三者によって改ざんされる可能性のあるクリアテキストをそのまま置きっぱなしにしていることは、セキュリティ上好ましくない。つまり、暗号署名したポリシーファイルを作成したあとには、クリアテキストは削除してしまったほうがよいだろう。

 クリアテキストを削除してしまった場合でも、現在のポリシーファイルはtwadminコマンドを利用すれば、内容を参照したり、再度クリアテキストへ出力したりすることができる。

・現在のポリシーファイルを表示する
twadmin --print-polfile

・現在のポリシーファイルをクリアテキストで出力する
※現在のポリシーファイルをtestpol.txtに出力
twadmin --print-polfile > testpol.txt

 現在のポリシーファイルをクリアテキストへ出力したら、エディタで開き、ルールを編集すればよい。今回は冒頭で使用しているサンプルポリシーファイルを編集していく。

■ポリシーファイルの編集

 では、いちばん始めに作成したポリシーファイルを編集して、ルールを追加してみよう。

(
rulename = web-sample,
severity = 33,
emailto = hoge@hoge.com,
)
{
/var/www/html -> (ReadOnly) (recurse=1);
!/var/www/html/news.html ;
/var/www/cgi-bin -> +tpug (rulename = web-cgi-sample); ←追加
}

 ここでは、サンプルポリシーファイルに/var/www/cgi-bin以下のルールを追加している。チェック内容は「+tpug」(ファイルの種類・ファイルのアクセス権・所有者のユーザーID・所有者のグループID)を指定し、ルール名に「web-cgi-sample」をつけている。

■ポリシーファイルのアップデート

 では、上記のようにルールを編集したポリシーファイルをアップデートしてみよう。アップデートは、

tripwire --update-policy [編集したポリシーファイル(クリアテキスト)]

とすればよい。

 コマンド入力後に、ローカルパスフレーズ・サイトパスフレーズが求められるので、それらを入力すればアップデートが完了する。

# tripwire --update-policy testpol.txt

Parsing policy file: /etc/tripwire/testpol.txt
Please enter your local passphrase:(ローカルパスフレーズの入力)
Please enter your site passphrase:(サイトパスフレーズの入力)
======== Policy Update: Processing section Unix File System.
======== Step 1: Gathering information for the new policy.
======== Step 2: Updating the database with new objects.
======== Step 3: Pruning unneeded objects from the database.
Wrote policy file: /etc/tripwire/tw.pol
Wrote database file: /var/lib/tripwire/linux.twd

■ルール名を指定して整合性のチェックを行う

 ポリシーファイルのアップデートが完了したら、/var/www/cgi-bin以下にあるファイルのパーミッションを故意に変更して、

tripwire --check --rule-name 指定したいルール名

により、「web-cgi-sample」というルール名を指定して整合性チェックを行ってみよう。これにより、/var/www/htmlのルールは適応されず、チェックが行われるのは「/var/www/cgi-bin -> +tpug ; (rulename = web-cgi-sample);」のみということになる。

# tripwire --check --rule-name web-cgi-sample

Parsing policy file: /etc/tripwire/tw.pol
*** Processing Unix File System ***
Checking rules named: web-cgi-sample
Performing integrity check...
Wrote report file: /var/lib/tripwire/report/linux-20021007-083907.twr


Tripwire(R) 2.3.0 Integrity Check Report

Report generated by: root
Report created on: 2002年10月07日 11時39分07秒
Database last updated on: 2002年10月07日 11時38分20秒

===================================================================
Report Summary:
===================================================================

Host name: linux
Host IP address: 127.0.0.1
Host ID: None
Policy file used: /etc/tripwire/tw.pol
Configuration file used: /etc/tripwire/tw.cfg
Database file used: /var/lib/tripwire/linux.twd
Command line used: tripwire --check --rule-name web-cgi-sample

===================================================================
Rule Summary:
===================================================================

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

Rule Name Severity Level Added Removed Modified
--------- -------------- ----- ------- --------
* web-cgi-sample 33 0 0 1
(/var/www/cgi-bin)

Total objects scanned: 3
Total violations found: 1

↑違反が報告される

===================================================================
Object Summary:
===================================================================

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

-------------------------------------------------------------------
Rule Name: web-cgi-sample (/var/www/cgi-bin)
Severity Level: 33 ←違反が報告される
-------------------------------------------------------------------

Modified:
"/var/www/cgi-bin/hoge.cgi" ←違反が報告される

===================================================================
Error Report:
===================================================================

No Errors

-------------------------------------------------------------------
*** End of report ***

Tripwire 2.3 Portions copyright 2000 Tripwire, Inc. Tripwire is a registered
trademark of Tripwire, Inc. This software comes with ABSOLUTELY NO WARRANTY;
for details use --version. This is free software which may be redistributed
or modified only under certain conditions; see COPYING for details.
All rights reserved.
Integrity check complete.

Tripwire使用の流れ

 今回はTripwireの基本的な流れを仮定して解説したが、実際の場合も、整合性チェックを行いデータベースのアップデートを繰り返していくという作業になるだろう。もちろん、必要に応じてポリシーファイルのアップデートも必要だ。

 最後に今回使用したものを中心にコマンドオプションの一覧を記載しておく、そのほかのコマンドオプションの詳細については、コマンドのヘルプを参照してほしい。

■Tripwireコマンド(一例)

■設定ファイル関連
・設定ファイルへの署名
twadmin --create-cfgfile --site-keyfile ./site.key twcfg.txt
・設定ファイルの表示及び出力
twadmin --print-cfgfile
twadmin --print-cfgfile > [出力するテキスト名]

■ポリシーファイル関連
・ポリシーファイルへの署名
twadmin --create-polfile [ポリシーファイル(クリアテキスト)]

・ポリシーファイルの表示及び出力
twadmin --print-polfile
twadmin --print-polfile > [出力するテキスト名]

・ポリシーファイルのアップデート
tripwire --update-policy [ポリシーファイル(クリアテキスト)]

■データーベース関連
・データーベースの初期化
tripwire --init

・データーベースのアップデート
tripwire --update --twrfile [レポートファイルへのパス]

■整合性チェック

・整合性のチェック
tripwire --check

・ルール名を指定した整合性チェック
tripwire --check --rule-name [ルール名]

・整合性チェック後にデーターベースのアップデートを行う(インタラクティブモード)
tripwire --check --interactive

■レポートファイルの参照

twprint --print-report --report-level [0〜4を指定] --twrfile [レポートファイルへのパス]


バックナンバー

第5回 Tripwireを運用するときの注意点
[2002.12.6 UP]  前回まででTripwireの導入からおもなコマンドオプション、整合性チェック、レポートのメール送信など、基本的な使用法について解説した。今回は、Tripwireを運営する際に行っておくべきバックアップや、データベースの表示、キーファイルの変更方法などについて解説する

第4回 レポートの送信とCronを利用した定期的な整合性のチェック
[2002.11.22 UP]  もし、何者かによってサーバのファイルが改ざんされてしまった場合、それを早期に知り、元の状態へ復旧しなければならない。Tripwireでは、整合性のチェックを行った結果(レポート)をメールで送信することが可能だ。そこで、今回はTripwireの整合性チェック時に、管理者宛にメールを送信するための設定について解説しよう

第3回:レポートの参照とデータベースのアップデート
[2002.10.8 UP] 前回は、ポリシーファイルの記述方法について簡単に紹介したが、今回はそれを元に簡単なサンプルのポリシーファイルを作成し、実際に整合性のチェックを行いながらレポートファイルの参照や、整合性チェック後のデーターベースのアップデートやポリシーファイルのアップデートを行ってみよう

第2回:ポリシーファイルの作成と編集
[2002.9.30 UP] Tripwireを使用するには、監視したいファイルやディレクトリ、そしてそれらをどのように監視するかを決める「ポリシーファイルの作成や編集」が重要な要素となる。今回はポリシーファイルの記述方法について解説する

第1回:Tripwireを導入する
[2002.9.11 UP]  Linux上のファイルやディレクトリを監視し、変化があれば管理者に知らせてくれるツールとしてTripwireがある。もし意図しないファイルの改ざんやアクセス権の変更などが発見されれば、早期に対策を困じることが可能になるわけだ。まずは、Tripwireの導入方法から解説しよう

前のページ | 1 2 3 4 |      

[TTS,ITmedia]