日本語の Windows Event Log を Sumo Logic に取り込む方法

Sumo Logic に日本語の Windows Event Log を取り込む方法についてご紹介します。
2023.06.07

本記事では、日本語環境の Windows Event Log を取り込む方法と、json 形式でログを取り込むメリット、そして、セキュリティの観点で取っておきたいイベントログについてお話しします。

Windows Event Log Source の設定

Windows サーバに Installed Collector のインストールが済んでいない場合は、以下を参考に実施してください。 参考先:Install a Collector on Windows | Sumo Logic Docs

Installed Collector のインストール後、Sumo Logic コンソールに戻り、Manage Data > Collector に遷移します。 対象の Collector > Add Source を選択します。

次に Sumo Logic の画面で Source を作成します。 Windows Source > Windows Event Log を選択いただくと、文字化けさせずに日本語環境のイベントログを取り込めるようになります。

その後、赤い米印の必須項目を入力します。Name には、分かりやすい名前を入れます。Source Category は、何のデータか分かる様にスラッシュ( / )で区切って入力します。 Event Format は、json 形式をオススメします。(後ほど解説)。Windows Event Type で、何のチャンネルのログを取得するか決めます。

ちなみに、Event IDs で、取り込む Event Log を選別できます。

また、Event Collection Level を Complete Message にすると、ログ情報が省略されずに取り込めます。

設定が完了したら、Save を押下してください。ここまでで、.evtx 形式ログを json に変換して Sumo Logic に取り込ませる設定が済みました。しばらくするとログがインジェストされると思います。

少し待った後、クエリを行うと下記のように日本語も出力されます。

この様にログ出力に関して、特にローカル側での設定なく Sumo Logic にログデータを送信することが出来ます。

というところで設定についてはここまでにして、次は後述とお伝えしておりました Event Format を json 形式にする理由をご説明していきます。

json 形式のログを取り込むメリット

  • Message タブに出力されるログが見やすくなる
  • json 形式なら、設定手順でお伝えしたクエリ結果の様にネストされたデータはすべて折りたたまれます。

    反対に json 形式でない場合、ネストされたデータは、改行されずに表示されるためです。

  • Fields の活用
  • json 形式のデータがインジェストされている場合、Auto Parse Mode で json フォーマットを解析してくれます。

    これにより、Field を使った検索が容易になります。

    反対に json 形式でない場合、下記のような Parse 演算子を使ったクエリを書いて解析する必要があります。また、ログの中に改行(\r\n)が含まれる場合は、エスケープ文字を使用する必要もございますので、クエリ文が複雑になりがちです。

    _sourceCategory=Labs/Apache/Access
    | parse "GET * " as url

その他にも View Search Results for JSON Logs | Sumo Logic では、コンソール周りでの json データ活用方法が記載されております。

Parse JSON Formatted Logs | Sumo Logic では、json 演算子を使った解析で、値や配列の抽出なども解説されております。参考になれば幸いです。

この様に json 形式でデータを取り込むことにはメリットがあるのでお勧めします。

セキュリティの観点で取っておくといいイベントログ

Windows Event には、重要なのにデフォルト無効のものがあります。ということと、その一部をご紹介します。

  • イベントID:4688(Process Creation)
  • 新しいプロセスが作成されたときに出力されます。こちら、攻撃者がユーザ探索やスクリプトの実行、権限変更、資格情報の読み取りなどの攻撃を仕掛けてきた場合、PC では何かしらのプロセスが立ち上がるはずです。そのため、Process Creation のログは取得しておきたいです。

また、攻撃者は PowerShell を使って悪意のある攻撃を実行させることが多いので、PowerShell モジュールや、スクリプトブロックのログも取れるとよいかと存じます。また、業務用 PC などはキッティングの際に有効化されていたり、Sysmon のようなモニタソフトがインストールされているかもしれませんので要確認です。

まとめ

執筆するにあたり調べていると、Windows Event Log で出力されるデフォルトのファイル形式が Windows 固有の .evtx ファイルになるため Sumo Logic のみならず他の SIEM 製品でも同様の課題はあるようでした。Sumo Logic では、Windows Event Log という Source を作成することで難なく取得できました。しかし、従来の Local File という Source では、文字化けを確認しましたので、Windows Event Log Source をお使いいただければと存じます。皆様の一助になれば幸いです。