背景:仕事の途中で、突然「Microsoft Mouse and Keyboard Center」をインストールするためのライセンス契約が表示されました。どのプロセスがセットアップを起動したのかを理解したいのですが、Process Explorerを使用して、それがなくなったのを確認しました。PIDのみを見つけることができました(スクリーンショットを参照)。
質問:
Process Explorer を使用している場合は、プロセスの親プロセスが存在せず、そのPIDのみを表示できる状況を知っている可能性があります。
実行中のプロセスへのPIDの関連付けを含むいくつかのWindowsログがありますので、特定のPIDで実行されているプロセスを確認できますか?
システムのイベントをキャプチャするために Process Monitor を使用しなかったため、これを期待していなかったシナリオに興味があるのが望ましいです。
デフォルトでは、そのようなログはありません。ただし、Windowsセキュリティイベントログでプロセス追跡イベントを有効にすることができます。
ノート:
このソリューションでは、gpedit
を使用してグループポリシーを変更する必要があります。
残念ながら、グループポリシーエディター(gpedit)は、WindowsのStarter Edition、Home、Home Premiumエディションには含まれていません。
インストール方法については、Q&A Windows Starter Edition、Home、Home Premiumにはgpeditが含まれていません。どうすればインストールできますか? を参照してください。
Windows 2003/XPでは、プロセス追跡監査ポリシーを有効にするだけでこれらのイベントを取得できます。
Windows 7/2008以降では、監査プロセスの作成を有効にする必要があり、オプションで、グループポリシーオブジェクトの[詳細な監査ポリシーの構成]にある監査プロセスの終了サブカテゴリを有効にする必要があります。
これらのイベントは、システム上の実行可能ファイルがプロセスとして開始されるたびに包括的な監査証跡を提供するため、非常に貴重です。両方のイベントにあるプロセスIDを使用して、プロセス作成イベントをプロセス終了イベントにリンクすることにより、プロセスの実行時間を判断することもできます。両方のイベントの例を以下に示します。
ソース Windowsセキュリティログでプロセストラッキングイベントを使用する方法
Gpedit.mscを実行します。
[Windowsの設定]> [セキュリティの設定]> [ローカルポリシー]> [監査ポリシー]を選択します
「監査プロセスの追跡」を右クリックし、「プロパティ」を選択します
「成功」にチェックを入れ、「OK」をクリックします
このセキュリティ設定は、OSがプロセスの作成、プロセスの終了、ハンドルの複製、間接的なオブジェクトアクセスなどのプロセス関連のイベントを監査するかどうかを決定します。
このポリシー設定が定義されている場合、管理者は、成功のみ、失敗のみ、成功と失敗の両方を監査するか、これらのイベントをまったく監査しない(つまり、成功も失敗もしない)かを指定できます。
成功の監査が有効になっている場合、OSがこれらのプロセス関連のアクティビティの1つを実行するたびに監査エントリが生成されます。
失敗の監査が有効になっている場合、OSがこれらのアクティビティのいずれかを実行するのに失敗するたびに監査エントリが生成されます。
デフォルト:監査なし
重要:監査ポリシーをより詳細に制御するには、「拡張監査ポリシー構成」ノードの設定を使用してください。高度な監査ポリシー構成の詳細については、「 http://go.Microsoft.com/fwlink/?LinkId=140969 」を参照してください。
確認する唯一の方法は、プロセスの作成を追跡するために監査を有効にする必要があることです。
「ローカルセキュリティポリシー」プログラムから(タイプsecpol.msc
見つからない場合は実行画面から)「セキュリティ設定->ローカルポリシー->監査ポリシー」に移動し、「成功」の「監査プロセストラッキング」を有効にします。
これを実行したら、イベントビューアに移動して「セキュリティ」イベントログを確認すると、プロセスが開始または終了するたびに「監査成功」のエントリが表示されます。
プロセスが終了しました。 件名: セキュリティID:SYSTEM アカウント名:SCOTT-PC $ アカウントドメイン:WORKGROUP ログオンID:0x3E7 プロセス情報: プロセスID:0x1338 プロセス名:C:\ Windows\System32\consent。 exe 終了ステータス:0x0
探しているプロセスIDを10進数から16進数に変換する必要があります(3336は0xD08になります)。変換する最も簡単な方法は、Windows電卓を開いて、「プログラマ」モードに移動し、「dec」モードで数値を入力して、「hex」モードをクリックします。表示される数値は16進数に変換されます。
これが1回限りであり、常にプロセスのログを記録したくない場合は、Microsoft Process Monitorを使用することをお勧めします( https://technet.Microsoft.com/en-us/Library/bb896645.aspx )。ポピュラーが生成される前に実行する必要がありますが、親プロセスが停止した後でも、探していたすべての情報が取得されます。