| 投稿者 | メッセージ | ||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
yu モデレーター ![]() 登録日: 2003.11.15 記事: 718 所在地: 神奈川 |
こんなツールを作ってみました(まだ発展途上ですが)。 サーバ環境のセキュリティ対策用に。 ログをチェックしてみると、いろんなウェブアプリケーションが実際にセキュリティ・ホールを狙われてることを実感できるかもしれません・・。 1)XREAではApacheの生ログが最新5日分しか保存されないので、バックアップしておきたい →XREA用生ログ バックアップツール(logbkup.php)で、日付つきファイル名でコピー。 2)怪しいアクセスをチェックできるようにしておきたい →Apacheログチェックツール for Nucleus(logcheck.php)で、1)でコピーした日付つきファイル名に対して、自動簡易チェック。今のところノーマルURL用。 少し改造すればほかのサーバー環境でも利用できそうです。 .htaccessを流用する場合は、下4行はXREA独自の設定なので削除する必要があるかもしれません。 またセーフモード制限がかかっている場合は、うまく動かない可能性があります。 たとえばモジュール版PHPがセーフモードで動作して、CGI版がそういった制限なしで実行できるサーバーの場合、PHPをCGIで動かす設定に変更して使うようにしてください。 (下記はXREA用の記述)
動作チェックした環境: PHP 4.4.4 and 5.1.4 register_globals Off magic_quotes_gpc Off ■設置方法 添付ファイルを解凍してできたフォルダ"logtools"を、フォルダごとまるごとpublic_htmlの下のlogディレクトリにアップロードします。 logディレクトリは、XREAの管理画面でPHPMyAdminをインストールしていれば、ベーシック認証の設定つきで作られているはず。 PHPファイルはCGIで動作するように同梱の.htaccessで設定されてますが、実行ファイルのパーミッション設定はとくに必要ないです。 バックアップツール用にすること(必須): ・ホーム直下のlogディレクトリ(public_html内ではないことに注意)に生ログを保存するよう、XREAの管理画面で設定する(ボタンを押す)。 ・並列してホーム直下にlogbackupディレクトリを作成する。パーミッションがlogディレクトリと同じ705であることを確認。 ・ソースファイルを開いて、ドメイン設定などの項目を埋める。 ログチェックツール用にすること(任意): ・ソースファイルを開いて、下位ディレクトリもチェック可能にするかなどの設定項目を変更・確認。 ※変更したファイルのアップロードをお忘れなく ■バックアップツールの注意事項 1つのサーバーアカウントで多くのドメイン(サブドメイン含む)を管理してる場合や、 アクセス数の多いサイトを抱えている場合は、 すべてのログを一度に処理しようとすると負荷が大きくなる可能性があります。 ■バックアップツールの詳細 デフォルトでは、年のディレクトリの下にドメイン別のディレクトリが作られ、その中に"10-06.log"など日付が頭に付いた名前でログがコピーされていきます。 すでにバックアップファイルが存在する場合は、タイムスタンプのチェックも上書きもしません。 最初に5日分のログをバックアップし終わったあとは、保存日数を1日にして、設定「ログ内容から日付を判断する」をfalseにすると、処理が軽くなります。 ■ログチェックツールの注意事項 ノーマルURL用です。 ログの自動チェックは便利ですが、万能ではないです。 今のバージョンでは、普通では存在するはずのない不審なファイルに対するアクセスは捕捉できません。 チェック項目のうち上の2つは、過去のNucleusのセキュリティ・ホールに関する項目です。(Ver3.23以降であればチェックする必要はありません) サブディレクトリも読みにいく設定などで多くのログを一度に処理しようとすると、負荷が大きくなる可能性があります。 ■ログチェックツールの詳細 指定されたディレクトリ内で、日付を頭につけたファイルをチェックしに行きます。(hogehoge/10-06.log など) 日付指定のチェックをはずすと、ディレクトリ内のすべてのログファイルを対象にチェックします。 ログをスキャンしてチェックリスト(checklist.txt)の項目(正規表現)をピックアップします。 その際ホワイトリスト(whitelist.txt)に該当するものは省いて表示します。 ホワイトリストは各自で調節する必要があるかもしれません。添付のものは特定のプラグイン用のURLパラメータ記述などが入っています。 「ログ表示を短縮」チェックをはずすと、該当行のログをすべて表示します。
_________________ Nucleusだとか http://nucleus.datoka.jp/ 最終編集者 yu [ 2006.10.10 (火) 19:25 ], 編集回数 1 回 |
||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||
|
yu モデレーター ![]() 登録日: 2003.11.15 記事: 718 所在地: 神奈川 |
怪しげなパラメータチェックは、kimitakeさんの globalfunctions (sp3) でも出来たんですね・・・orz Nucleusの監視運用という目的ではそっちのほうが断然合理的。 http://kimitake.blogdns.net/item/344 TODO: nucleus関連ディレクトリへの不審アクセスの自動チェック _________________ Nucleusだとか http://nucleus.datoka.jp/ |
||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||
|
yu モデレーター ![]() 登録日: 2003.11.15 記事: 718 所在地: 神奈川 |
■ログチェックツール 日付指定がない場合に、ディレクトリ内のログファイルをすべてスキャンできるようにしました。 ログのチェック項目を強化しました。 チェック項目を選んで実行できるようになりました(上のスクリーンショット参照)。 同一行のログで複数マッチした場合の表示をきちんとまとめるようにしました。 ログチェックツールはXREA以外の環境でも動かせる可能性が高いので、生ログを閲覧できる環境の方は、よければチャレンジしてみてください。 _________________ Nucleusだとか http://nucleus.datoka.jp/ |
||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||
|
All times are GMT + 9 Hours
新規投稿: 不可 Powered by phpBB © 2001, 2002 phpBB Group |
|||||||||||||||||||||||||||||||||||||||||||||||||