【Microsoft Solution Accelerators TechCenterより】ログ監査ガイドは使える!

前回、前々回とTechNetライブラリからの引用で、監査の話が出てきましたが、
今回はMicrosoft Solution Accelerators TechCenterからです。

TechCenterサイトに、監査をするなら是非読んでおきたいドキュメントがあります。

■マイクロソフト製品のログ監査ガイド
http://technet.microsoft.com/ja-jp/solutionaccelerators/dd285678.aspx

結構前からあるので、よく知られているのかなと思っていたのですが、
案外そうでもない(少なくとも私の周りでは…)ということがわかったので、紹介しておきます。

ドキュメントは、NAP、データベース、ファイルサーバー、Active Directory操作など、
監査を行いたい項目ごとに分かれており、具体的にどのようなイベントを追跡すればよいか書かれています。

私が「なるほど」と思ったものとしては、
ログオンしたユーザーが、その後の操作として何をしたか?を追跡するときには、
イベントログのログオンIDをキーにして追跡するという点です。
ログオンからファイルにアクセスするまでの一連の操作がイベントログから追跡できれば、
誰が何をしたか?ということを調べるのも簡単(少なくとも今までよりは難しくない)ですよね。

LogonID1

ログオンIDは、ログオン時に記録されるイベントID4624のログに記載されるので、
そのログオンIDをメモっておいて、そのIDをもとに追跡します。

LogonID2

そして、TechCenterのログ監査ガイドが作られた時とは違って、Windows Server 2008以上を使っていれば、
XPathクエリという強い味方がいるのです。ですので、XPathクエリでクエリを書けば、追跡はさらに簡単にできます。
ただし、クエリを実行するときのキーとなるログオンIDは、ログによって、TargetLogonIdというのが
正式名称だったり、SubjectLogonIdというのが正式名称だったり、統一されてないんですよね。
そこも加味してクエリを作成しなきゃならないところが、ちょっと面倒くさい点でもあります。

そこで、私は次のようなXPathクエリを書いてみました。

*[EventData[Data[@Name=’TargetLogonId’]=’0xf0f7b1‘] or
EventData[Data[@Name=’SubjectLogonId’]=’0xf0f7b1‘]]

0xf0f7b1というのはログオンIDになりますので、必要に応じて書き換えて使ってください。

あと、TechCenterのログ監査ガイドはWindows Server 2003をベースに作ってあるので、
ドキュメントに記載されているイベントIDがWindows Server 2008のイベントIDと異なります。
しかし、これは誰かに聞いた話(誰だったか忘れちゃいました、ごめんなさい)ですが、

Windows Server 2003のイベントID + 4096 = Windows Server 2008のイベントID

ということなので、ドキュメントを読みながら4096を足してみれば、そのままWindows Server 2008でも
流用できるというわけなのです。