banner
lca

lca

真正的不自由,是在自己的心中设下牢笼。

Windows XMLイベントログ(EVTX)の解析

evtx ログの説明#

Windows の evtx ログの保存場所

%SystemRoot%\System32\Winevt\Logs\

image.png

主なログには、アプリケーション、セキュリティ、システムログなどが含まれます。ログのデフォルトサイズは 20484K(20M)であり、超過した部分は期限切れのログを上書きします。

Windows の標準のイベントビューアを使用して、対応するログを表示できます。

image.png

ランダムにクリックして、イベント ID が 4624 のイベントを表示すると、次のような内容が表示されます。XML ビューに切り替えると、XML 形式のログを表示できます。

image.png

evtx_dump#

evtx ログを解析するためのツール

A Fast (and safe) parser for the Windows XML Event Log (EVTX) format

対応するバージョンをダウンロードしてください:

https://github.com/omerbenamram/evtx/releases

evtx_dump <evtx_file>:xml形式でダンプする

evtx_dump -o json <evtx_file>:json形式でダンプする

evtx_dump -f <output_file> -o json <input_file>:指定されたファイルに出力する

fdと組み合わせて使用すると、一括処理が容易になります。

fd -e evtx -x evtx_dump -o jsonl:拡張子がevtxで終わるすべてのファイルを個別のjsonファイルにダンプする

fd -e evtx -x evtx_dump '{}' -f '{.}.xml':evtxに対応するxmlファイルを作成し、その内容を対応するxmlファイルにコピーする

fd -a -e evtx | xargs -I input sh -c "evtx_dump -o jsonl input | jq --arg path "input" '. + {path: \$path}'"

-e:ファイルの拡張子
-a:隠しファイルやディレクトリを検索する
xargs -I input sh -c “command”:input変数を渡し、commandを実行する
jq --arg path “input” ‘. + {path: \$path}’:path変数を出力のjsonファイルに追加する

抽出#

evtx ファイルから EventID を抽出する

evtx_dump temp_scheduled_task_4698_4699.evtx -o jsonl | jq '.Event.System.EventID'

EventID をソートして数を集計する

evtx_dump Security.evtx -o jsonl | jq '.Event.System.EventID' | sort | uniq

image.png

イベント ID を確認することで、現在のログに含まれるほとんどのログの状態がわかります。上記の 5379 は Microsoft Windows Defender アンチウイルスソフトウェアに関連するイベントを示しており、このイベントは Windows Defender の対応するポリシー情報を記録し、Defender の定期的なスキャンや更新の状況を示します。4625 はログインの失敗を示し、ログが 1 つしかない場合、ログインの暴力的なクラックの試みは存在しないことを意味します。4672 は管理者のログインを表し、管理者としての操作も 4672 として記録されます。これは Linux の sudo に似ており、1 回の sudo につき 1 つのログが記録されます。

イベント ID との対比により、関連するイベントの影響を判断できます。

複数のフィールドを抽出する

evtx_dump temp_scheduled_task_4698_4699.evtx -o jsonl | jq '.Event.System.EventID','.Event.System.Computer'

イベント ID の参考:Windows Emergency Response Manual のノート

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。