Log2timeline.py(Plaso)によるタイムラインの作成(27)
SIFT 3.0 に含まれている l2t_process ver 0.2 の具体的な実行結果について確認してみたいと思います。(l2t_process.pyではないので注意してください)
- 読み込み時の日付フォーマットをMM-DD-YYYYではなくyyyy-mm-ddで読む形式に変更する(-y)
- Keywordファイルで指定した文字列に一致したものだけを出力対象とする(-k)
- ホワイトリストとして指定した文字列を出力結果から除外する(-w)
- Timestompツールの利用を推測(ミリ秒の値がゼロになっている)して結果を含めるか除外するかを指定(-i, -e)
まず日付形式の変更から行ってみます。タイムラインのファイルはWindows FireWallのログをパースしたものになります。
root@siftworkstation:/cases# l2t_process -y -b ./Firewall_timeline.txt > l2t_out1.txt
Total number of events that fit into the filter (got printed) = 69
Total number of duplicate entries removed = 0
Total number of events skipped due to whitelisting = 0
Total number of events skipped due to keyword filtering = 0
Total number of processed entries = 70
Run time of the tool: 0 sec
日付範囲などは指定していませんので、単純に全てのログが処理された事が分かります。もし重複などがあれば duplicate entries removed に数値が入るという事になるはずです。
次に、キーワードファイルを指定し、キーワードファイルに書かれた文字列に一致したレコードだけを出力してみます。下記の例では、Keyword1.txt に UDP という文字列だけを記述しています。(大文字・小文字は区別されない、1行1キーワード、OR判断)
実行結果が下記になります。12件のレコードがフィルタリングされています。
root@siftworkstation:/cases# l2t_process -k keyword1.txt -b ./Firewall_timeline.txt > l2t_out_kw.txt
Building keyword list...DONE (2 keywords loaded)
Total number of events that fit into the filter (got printed) = 57
Total number of duplicate entries removed = 0
Total number of events skipped due to whitelisting = 0
Total number of events skipped due to keyword filtering = 12
Total number of processed entries = 70
Run time of the tool: 0 sec
ホワイトリスト(-w)もキーワード指定する点では -k と同じですが、キーワードの処理が行われてからホワイトリストが処理される事になります。
ただ、手元の SIFT 3.0 環境で -w を使って実行してみたのですが、ホワイトリストでキーワードを指定しても、実際に除外する事ができませんでした。
皆さんのお手元では -w で正しく除外できてますでしょうか?