Windows
 Computer >> コンピューター >  >> システム >> Windows

Windowsの隠れた監視ツール「Sysmon」でPC内部の動きを徹底記録する方法

Windowsの隠れた監視ツール「Sysmon」でPC内部の動きを徹底記録する方法

Oluwademiladeは5年以上の執筆経験を持つテック愛好家です。2022年にMUOチームに加わり、コンシューマーテック、iOS、Android、AI、ハードウェア、ソフトウェア、サイバーセキュリティなど幅広い分野を担当しています。MUO以外にも、HowtoGeek、Cryptoknowmics、TechNerdiness、SlashGearなどで記事を発表しています。

ナイジェリアのイバダン大学医学部で医学学位を取得し、公共サービスにおける功績が認められ、国連関連の学生団体から「グローバル・アクション・アンバサダー」の称号を授与されました(2020年、マレーシア・クアラルンプールにて)。余暇には新しいAIアプリの検証、家族や友人のトラブル解決、プログラミング言語の学習、旅行を楽しんでいます。

PCで何か怪しいことが起きても、ウイルス対策ソフトが検出してくれると思っていませんか?おそらく検出するでしょう——いずれは。しかし、従来のセキュリティソフトが警告を発する頃には、被害はすでに及んでいる可能性があります。もしコンピュータが、内部で起きているすべての出来事——起動するすべてのプロセス、開かれるすべてのネットワーク接続、ファイルの作成タイムスタンプが不審に書き換えられる瞬間——を詳細な記録として残し続けられたらどうでしょうか?

それを実現するのがSysmonです。Microsoft製の無料ツールで、不審な挙動を捉えるための「Windows Sysinternals」ツール群の一つに属します。興味深いのは、スパイウェアやアドウェアを見つけるためのゴールドスタンダードでありながら、日常的にWindowsを使うほとんどの人はその存在すら知らないという点です。

Sysmonがもたらす、標準ログでは得られない可視性

イベントビューアーだけでは物足りなかった

Windowsの隠れた監視ツール「Sysmon」でPC内部の動きを徹底記録する方法

Windowsにはもともとイベントログ機能があり、トラブルシューティングのためにイベントビューアーを開いたことがある人なら、その混沌とした印象に覚えがあるでしょう。ノイズが多く、肝心の明確さが不足しがちです。Sysmon(System Monitorの略)はまったく別物です。インストールすると常駐のシステムサービスおよびデバイスドライバーとして動作し、再起動後も存続しながら、極めて詳細なイベントをWindowsイベントログに書き込みます。その違いは、ぼやけた防犯カメラとナンバープレートまで読み取れるカメラを比較するようなものです。

Sysmonのイベントカタログは、完全なコマンドライン引数付きでプロセスの作成を記録します。つまり、「プログラムが実行された」ことだけでなく、「どのように起動されたのか」まで把握できます。ネットワーク接続も記録対象で、発信元プロセス、IPアドレス、ポート、ホスト名が含まれるため、どのアプリケーションがいつどのサーバーへ接続したかを追跡できます。さらに、ファイル作成タイムスタンプの改ざんにもフラグを立てます。これはマルウェアが正規のシステムファイルになりすますための古典的な手口です。それにとどまらず、ドライバーのロード、レジストリ変更、DNSクエリ、さらにはプロセスハロウィング(Event ID 25として記録)といった高度な攻撃手法まで監視します。プロセスハロウィングとは、悪意あるコードが本来不可欠なWindowsプロセスの内部に潜み込む手法のことです。

ここで、セキュリティ観点で特に重要なイベントIDをまとめた表をご紹介します。

イベントID名称記録内容
1Process Create(プロセス作成)起動するすべてのプロセスを記録。完全なコマンドライン、親プロセス、ファイルハッシュを含みます。不審な実行を検出するうえで最も有用な単一イベントです。
2File Creation Time Changed(ファイル作成時刻の変更)プロセスが意図的にファイルの作成タイムスタンプを変更した際に通知。正規のシステムファイルに紛れ込むマルウェアの古典的手法を捉えます。
3Network Connection(ネットワーク接続)外向きのTCP/UDP接続を記録し、それぞれを発信元プロセスと紐付けます。ビーコン通信やデータ流出の検出に不可欠です。
6Driver Loaded(ドライバーロード)カーネルドライバーのロードを署名状態とともに記録。未署名や予期しないドライバーは重大な危険信号です。
7Image Loaded(イメージロード)プロセスへのDLLロードを追跡。データ量の関係でデフォルトでは無効ですが、適切にフィルタリングすればDLLハイジャックの検出に強力です。
8Create Remote Thread(リモートスレッド作成)あるプロセスが別のプロセスへスレッドを注入したことを検出。コードインジェクションやプロセスハロウィング攻撃の特徴的な技法です。
10Process Access(プロセスアクセス)あるプロセスが別のプロセスのメモリを開いた際に発火。Windowsのログイン情報を保持するLSASSを狙う認証情報窃取ツールを捕捉します。
11File Create(ファイル作成)新規作成・上書きされたファイルを記録。Temp、ダウンロード、スタートアップフォルダーの監視に特に有効です。
12〜14Registry Events(レジストリイベント)レジストリキーの作成・削除・値の変更・名前変更を網羅。マルウェアが再起動後も持続性を確立する主要な手段をカバーします。
15File Create Stream Hash(ファイル作成ストリームハッシュ)ブラウザ経由でダウンロードされたファイルを、添付されたZone Identifierストリームの記録により捕捉。不審な実行ファイルの出所追跡に役立ちます。
17〜18Pipe Events(パイプイベント)名前付きパイプの作成と接続を監視。マルウェアやCobalt Strikeなどのポストエクスプロイトフレームワークがよく使うプロセス間通信手法です。
19〜21WMI Events(WMIイベント)WMIフィルターとコンシューマーの登録を追跡。ファイルレス型の持続化に悪用される手法で、このイベントがなければほぼ痕跡を残しません。
22DNS Query(DNSクエリ)プロセスが行うすべてのDNSルックアップを記録。TCP接続が確立される前に、既知の悪意あるドメインへの接続を検出できます。
25Process Tampering(プロセス改ざん)プロセスハロウィングやherpaderping(正規のプロセスメモリを悪意あるコードに置き換えて検出を回避する技法)を検出します。
29File Executable Detected(実行ファイルの検出)システム上に新たに作成された実行ファイル(PE形式)にフラグを立てます。ドロッパーやインストーラーの稼働を示す有力な早期指標です。

関連記事:PCが密かに別の用途に使われていないか見分ける方法

「PCが自分が頼んだ以上のことをしている気がする……」そんな疑問を抱えたときに、隠れた活動をチェックする具体的な方法をご紹介しています。

Sysmonを導入して動かすまでの手順

ターミナルを開ければ、もう半分は終わったも同然

Windowsの隠れた監視ツール「Sysmon」でPC内部の動きを徹底記録する方法

SysmonはMicrosoftのSysinternalsページから無料でダウンロードでき(本稿執筆時点のバージョンは15.15)、インストールはコマンド1つで完了します。管理者権限が必要で、PowerShellまたはコマンドプロンプトを少し操作しますが、所要時間は5分未満です。

Windowsの隠れた監視ツール「Sysmon」でPC内部の動きを徹底記録する方法
Sysmon

対応OS: Windows(Linux版もあり)
開発元: Microsoft(Sysinternalsチーム)
価格: 無料

Sysmonは、プロセスの起動、ネットワーク接続、ファイル変更といった詳細なWindowsの動きを記録する高度なシステム監視ツールです。バックグラウンドで常駐し、セキュリティ専門家にPC内部の状況を深く可視化します。

まずMicrosoft Learnの公式Sysmonページにアクセスし、ZIPファイル(約4.6MB)をダウンロードして中身を展開します。次にPowerShellまたはコマンドプロンプトを管理者として開き、展開したフォルダーへ移動して以下のコマンドを実行します。

.\sysmon64 -accepteula -i

これが基本のインストールです。Sysmonはサービスとドライバーをバックグラウンドで組み込みます。再起動すら不要です。以降、イベントビューアーの「アプリケーションとサービスログ」→「Microsoft」→「Windows」→「Sysmon」→「Operational」にイベントが記録されていきます。ログはすぐに確認できます。

Windowsの隠れた監視ツール「Sysmon」でPC内部の動きを徹底記録する方法

アンインストールも同様に簡単で、sysmon64 -uを実行するだけです。このツールはシステムに食い込んで居座ろうとしません。その潔さには好感が持てます。

一人でゼロから考える必要はない

デフォルトの状態でもSysmonは機能しますが、真価を発揮するのは設定ファイルを組み合わせたときです。SysmonはXML形式の設定を受け入れ、どのイベントを記録し、どれを除外し、どこまで細かく追跡するかを指定できます。XMLに馴染みがなければ、XMLファイルの基本と使い方を復習しておくとよいでしょう。このファイルが、Sysmonがシステムを監視する際の「ロジック」を定義します。ゼロから書くのは骨の折れる作業ですが、実際にはその必要がありません。

サイバーセキュリティコミュニティには、優れた既製の設定ファイルがいくつも存在します。最も広く使われているのは、GitHubで無料公開されているSwiftOnSecurityの「sysmon-config」です。約5,000のスターと1,700以上のフォークを獲得しており、セキュリティに関わるイベントを確実に捉えつつ、ログを読めなくするほどのノイズを除去できるよう慎重に調整されています。全行にコメントが付いているため、チュートリアルとしても活用できます。この設定を使ってインストールするには、次のコマンドを実行します。

sysmon64 -accepteula -i sysmonconfig-export.xml

既存のインストールに新しい設定ファイルを適用する場合はこちらです。

sysmon64 -c sysmonconfig-export.xml

さらにモジュール式な構成を望むなら、Olaf Hartong氏による「sysmon-modular」プロジェクト(GitHub)がおすすめです。MITRE ATT&CKフレームワークに直接マッピングされた、コミュニティ管理の柔軟なアプローチを提供しています。どちらも優れた出発点になるでしょう。

すべての攻撃を防げるわけではないが、発生したことは必ずわかる

Sysmonをうまく運用するために、セキュリティエンジニアである必要はありません。まともな設定ファイルと、時々イベントビューアーを開いて確認する習慣、そして「万が一マシンで奇妙なことが起きても、記録が残っている」という安心感があれば十分です。筆者にとって、その安心感は5分のセットアップにかける価値が十分にあります。

  1. デジタルカメラから削除した写真を復元する方法【初心者向け完全ガイド】

    デジタルカメラに保存していた大切な思い出の写真を、誤って削除してしまった経験はありませんか?「どうにかして取り戻したい」とお悩みの方に向けて、本記事では自力で写真を復元できる方法をご紹介します。パソコン上でカメラの写真を復元できるソフトウェアは数多く存在しており、そのひとつを活用すれば、削除してしまった写真を取り戻すことが可能です。デジタルカメラには操作を取り消す「元に戻す(アンドゥ)」ボタンが存在しないため、サードパーティ製ソフトウェアに頼ることになります。その中でも信頼性の高い結果が期待できるのが、Systweak Software社の「Photos Recovery」です。本記事では、カ

  2. 【Windows 7】不調なハードドライブをチェックして修復する方法

    パソコンが正常に動作するためには、多くの部品が欠かせません。中でも特に重要なのが、電源ユニット、マザーボード、メモリ(RAM)、ハードドライブ、CPUの5つです。このうちハードドライブには、パソコンを使用するうえで最も重要なデータであるオペレーティングシステム(OS)が保存されています。そのため、ここに不具合が発生すると、さまざまなトラブルが起こり始めます。 ハードドライブの不調で起こる症状 ハードドライブに異常が生じると、まずパソコンの起動やプログラムの読み込みが普段より明らかに遅くなります。特定の1〜2つのアプリケーションだけで動作が重くなるケースもあります。また、以前は表示されなかったB