Security
Tips |
|
|
|
イベントログの自動監視とコマンドの自動実行
たかはしもとのぶ
2004/4/14
|
ご存じのとおり、Windowsの出すセキュリティ上の警告は、主にイベントログのセキュリティログに出力されるため、Windowsのセキュリティを維持するうえでイベントログの監視は必須である。
目視での確認には限界があるため自動監視が望まれるが、Windows 2000以前のマシンで自動監視を行うためには、独自にプログラムやスクリプトを作成する必要があり、一般の管理者にとっては決して容易とはいえなかった。
しかし、Windows XP/Windows Server 2003ではeventtriggersというコマンドが導入されたことにより、コマンドベースで自動監視の設定が行えるようになった。eventtriggersコマンドはコマンドラインベースのツールである。監視対象のイベントを指定するにはいくつかの方法がある。
例えば図1のようにログオン/ログオフの成功と失敗をセキュリティログに記録している状態で、セキュリティイベントの529(ユーザー名が不明またはパスワードが無効です)の発生を監視して、イベント発生時にsec529.batというスクリプト(プログラム)を起動して通知などの処理を行いたいという場合を考えてみよう。eventtriggersを用いれば、以下のように設定することで、この処理が実現できる。
C:\>eventtriggers /create /tr "Security Event 529" /l SECURITY /eid
529 /tk C:\Eventtriggers\sec529.bat |
/trに続き、このイベントトリガの表示名を任意に入力する。この名前は表示に使うだけなので何でもよい。/lでセキュリティイベントログを、/eid
529でイベントID529を監視することが指定されるため、セキュリティログのイベントID529を監視対象として指定したことになる。さらに、/tkに続いて監視対象のイベント発生時に実行するコマンドを指定する。
なお、確認した限りコマンドオプションは指定できないので、引数を指定したい場合は、上記のようにイベントトリガではバッチファイルなどを指定し、バッチファイル内で実際に呼び出したいコマンドに渡す引数を記載すればよいだろう。
作成したイベントトリガは、以下のように/queryオプションで表示できる
C:\>eventtriggers /query
ID トリガ名 タスク
========== ========================= =============================
1 Security Alert 529 c:\temp\529.bat |
このIDを指定して、以下のように/deleteオプションを実行することで、作成したイベントトリガを削除することができる。
c:\>eventtriggers /delete /tid 1
成功: イベント トリガ "Security Alert 529" (トリガ ID = 1)
は削除されました |
なお、これらの操作を行った際のログやイベントトリガ実行時のログが%SystemRoot%\System32\wbem\logs以下のCmdTriggerConsumer.logというファイルに記録される。このファイルの内容は以下のようになっている。
日, 3 07 2004 12:37:03 午後
トリガ名 = Security Alert 529
トリガ ID = 2
操作 = トリガを実行できませんでした
エラー コード = 2
理由 = 指定されたファイルが見つかりません
日, 3 07 2004 12:39:47 午後
トリガ名 = Security Alert 529
トリガ ID = 2
操作 = 作成できませんでした
日, 3 07 2004 12:41:27 午後
トリガ名 = Security Alert 529
トリガ ID = 2
操作 = トリガの実行に成功しました |
イベントトリガがうまく動作しないなどの問題が発生したら、まずはこのログファイルを参照して、原因を調査してみるとよいだろう。
Security&Trust フォーラム 新着記事
Security & Trust 記事ランキング
本日
月間