Process Monitor のフィルタまわりについてまとめたメモです。
- Process Monitor - Windows Sysinternals | Microsoft Docs
https://docs.microsoft.com/ja-jp/sysinternals/downloads/procmon
Process Monitor のフィルタまとめ
特に明記がない場合は、すべて then [ include ]
としてフィルタしています。
プロセスID関連
メニューからプロセスツリーを表示し、解析したいプロセスを選んでフィルタするのが直感的で簡単なのでおすすめです。
目的 | Operation | 備考 |
---|---|---|
特定のプロセスIDのみ表示 | [ PID ][ is ][ プロセスID ] |
|
特定のプロセスIDのみ表示(Process Tree) | [ Show Process Tree] > [ プロセスを選択 ] > [Include Process ] |
操作手順 |
特定の親子プロセスのみ表示 | [ Show Process Tree] > [ 親プロセスを選択 ] > [Include Subtree] |
操作手順 |
ファイル操作関連
悪意あるツールの場合はなんらかファイルを生成しがちなので WriteFile で確認するとヒントが得られるかもしれません。 作成されたはずのファイルが見つからないときは、削除されてしまっていないか確認するとよいと思います。 なお、 sdelete による削除等、ツールを用いたファイル操作は下記に当てはまらない場合があります。
目的の挙動 | Operation | 備考 |
---|---|---|
ファイル書込み | [ Operation ][ is ][ WriteFile ] |
|
ファイル存在チェック | [ Operation ][ is ][ CreateFile ] |
Result:SUCCESS Result:NAME NOT FOUND |
ファイル・フォルダの削除 | [ Deteil ][ is ][ Delete: True ] |
Result:NOT EMPTY ->ファイルを含むフォルダの削除時 |
ファイル削除(Shift+Delete) | [ Deteil ][ begin with ][ Desired Access: Delete ] |
Delete: True は記録されない |
ファイル・フォルダの名前変更 | [ Operation ][ is ][ SetRenameInformationFile ] |
ファイルパス関連
ファイルについての不審な挙動を見つけたら、ファイルパスでフィルタすることで関連するほかの挙動を探せます。
目的 | Operation | 備考 |
---|---|---|
特定パスの処理のみ表示 | [ Path ][ is ][ ファイルパス ] |
|
特定パス配下の処理のみ表示 | [ Path ][ begin with ][ ファイルパス ] |
|
特定拡張子の処理のみ表示 | [ Path ][ end with ][ .拡張子 ] |
レジストリ操作関連
RegSetValue でフィルタすることで、起動時に自身を実行させるためのレジストリ登録や、自分自身をレジストリに保存する挙動などを探せます。
目的の挙動 | Operation | 備考 |
---|---|---|
レジストリ書込み | [ Operation ][ is ][ RegSetValue ] |
新規プロセス関連
Process Create でフィルタすることで、不審な挙動をするプロセスからさらに別のプロセスが作られていないか確認できます。
目的の挙動 | Operation | 備考 |
---|---|---|
プロセスの作成 | [ Operation ][ is ][ Process Create ] |
Detail に PID とコマンドライン |
プロセスの開始 | [ Operation ][ is ][ Process Start ] |
Detail に 親PID とコマンドライン |
通信関連
検証はしていませんが、以前に聞いた話では、通信が発生していてもログにうまく残らない場合があるようです。 これに限りませんが、報告が必要な場合などそれなりの確度が必要な場合に単一のツールに頼るのは危ういです。
目的 | Operation | 備考 |
---|---|---|
通信したプロセスのみ表示 | [ Event Class ][ is ][ Network ] |
|
通信したプロセスのみ表示(画面操作) | [ Show Network Activity ] 以外の3つを OFF にする |
操作手順 |
カテゴリーフィルタ(書込み・読込み関連)
カテゴリーでフィルタすることで、ざっくり書き込み・読み込み関連の挙動を確認できるようです。 だいぶ後のほうに知ったこともあり、あまり使ったことはありませんが便利かもです。
目的の挙動 | Operation | 備考 |
---|---|---|
書込み処理 | [ Category ][ is ][ Write ] |
|
書込み処理(メタデータ) | [ Category ][ is ][ Write Metadata ] |
|
読書込み処理 | [ Category ][ is ][ Read ] |
|
読込み処理(メタデータ) | [ Category ][ is ][ Read Metadata ] |
Process Monitor のフィルタ保存と読み込み
フィルタはファイルに保存したりファイルから読み込んだりすることができます。
フィルタの保存
- メニューの
[Filter] > [Save Filter]
から現在のフィルタ状態に名前をつけることができます。 - メニューの
[Filter] > [Organize Filters]
から[Export]
することでフィルタをファイルに保存できます。
フィルタの読み込み
- メニューの
[Filter] > [Organize Filters]
から[Import]
でファイルからフィルタを読み込めます。 - メニューの
[Filter] > [Load Filter]
からフィルタを選ぶことでフィルタを適用できます。
(参考)公開されているフィルタの例
Process Monitor Filters for Malware Analysis and Forensics
https://zeltser.com/process-monitor-filters-for-malware-analysis/GitHub - mgeeky/procmon-filters: SysInternals' Process Monitor filters repository - collected from various places and made up by myself. To be used for quick Behavioral analysis of testing specimens. Inspired and based on Lenny Zeltser's collection.
https://github.com/mgeeky/procmon-filters
付録
フィルタで記録するイベント量を減らす
メニューから [Filter] > [Drop Filtered Events]
にチェックを入れておくことで、フィルタではじかれたイベントは記録されなくなります。
長時間の監視が必要な場合などで取得するログサイズを抑えたい場合に利用できます。
ただし、当然ながら記録されなかったイベントを後から復元することはできません。
ブート時のログを記録する
メニューから [Options] > [Enable Boot Logging]
にチェックを入れておくことで、ブート時の挙動を記録することができます。
確認のダイアログで [OK] を押すと有効になります。
再起動後などに Process Monitor を起動した際に記録したイベントを確認するかの確認ダイアログが表示されます。
表示カラムの編集
メニューから [Options] > [Select Columns]
で編集できます。
Process Activity Summary
メニューから [Tools] > [Process Activity Summary]
で表示できます。
プロセスを選んでダブルクリックすると詳細が表示されます。 詳細のグラフ上をクリックすると、当該プロセスでその時間帯に一番近いイベントに表示が移動します。
参考文献
Process Monitor - Windows Sysinternals | Microsoft Docs
https://docs.microsoft.com/ja-jp/sysinternals/downloads/procmonWindows Sysinternals徹底解説 改訂新版|日経BPブックナビ【公式サイト】
https://www.nikkeibp.co.jp/atclpubmkt/book/17/P98960/Process Monitor 解析時のTips :作者のMark Russinovich 氏のセッションより
https://troushoo.blog.fc2.com/blog-entry-155.html
更新履歴
- 2020/05/10 新規作成
- 2020/05/11 一部記載を追記しました。
- 2020/05/11 一部記載を修正しました。