web-dev-qa-db-ja.com

PIDがまだ残っている場合、終了したWindowsプロセスを識別する方法は?

背景:仕事の途中で、突然「Microsoft Mouse and Keyboard Center」をインストールするためのライセンス契約が表示されました。どのプロセスがセットアップを起動したのかを理解したいのですが、Process Explorerを使用して、それがなくなったのを確認しました。PIDのみを見つけることができました(スクリーンショットを参照)。

質問:

Process Explorer を使用している場合は、プロセスの親プロセスが存在せず、そのPIDのみを表示できる状況を知っている可能性があります。

enter image description here

実行中のプロセスへのPIDの関連付けを含むいくつかのWindowsログがありますので、特定のPIDで実行されているプロセスを確認できますか?

システムのイベントをキャプチャするために Process Monitor を使用しなかったため、これを期待していなかったシナリオに興味があるのが望ましいです。

14
miroxlav

実行中のプロセスへのPIDの関連付けを含むいくつかのWindowsログはありますか

デフォルトでは、そのようなログはありません。ただし、Windowsセキュリティイベントログでプロセス追跡イベントを有効にすることができます。

ノート:


Windowsセキュリティログでプロセス追跡イベントを使用する方法

Windows 2003/XPでは、プロセス追跡監査ポリシーを有効にするだけでこれらのイベントを取得できます。

Windows 7/2008以降では、監査プロセスの作成を有効にする必要があり、オプションで、グループポリシーオブジェクトの[詳細な監査ポリシーの構成]にある監査プロセスの終了サブカテゴリを有効にする必要があります。

これらのイベントは、システム上の実行可能ファイルがプロセスとして開始されるたびに包括的な監査証跡を提供するため、非常に貴重です。両方のイベントにあるプロセスIDを使用して、プロセス作成イベントをプロセス終了イベントにリンクすることにより、プロセスの実行時間を判断することもできます。両方のイベントの例を以下に示します。

enter image description here

ソース Windowsセキュリティログでプロセストラッキングイベントを使用する方法


監査プロセスの作成を有効にする方法

  1. Gpedit.mscを実行します。

  2. [Windowsの設定]> [セキュリティの設定]> [ローカルポリシー]> [監査ポリシー]を選択します

    enter image description here

  3. 「監査プロセスの追跡」を右クリックし、「プロパティ」を選択します

  4. 「成功」にチェックを入れ、「OK」をクリックします

    enter image description here


監査プロセス追跡とは

このセキュリティ設定は、OSがプロセスの作成、プロセスの終了、ハンドルの複製、間接的なオブジェクトアクセスなどのプロセス関連のイベントを監査するかどうかを決定します。

このポリシー設定が定義されている場合、管理者は、成功のみ、失敗のみ、成功と失敗の両方を監査するか、これらのイベントをまったく監査しない(つまり、成功も失敗もしない)かを指定できます。

成功の監査が有効になっている場合、OSがこれらのプロセス関連のアクティビティの1つを実行するたびに監査エントリが生成されます。

失敗の監査が有効になっている場合、OSがこれらのアクティビティのいずれかを実行するのに失敗するたびに監査エントリが生成されます。

デフォルト:監査なし

重要:監査ポリシーをより詳細に制御するには、「拡張監査ポリシー構成」ノードの設定を使用してください。高度な監査ポリシー構成の詳細については、「 http://go.Microsoft.com/fwlink/?LinkId=140969 」を参照してください。

11
DavidPostill

確認する唯一の方法は、プロセスの作成を追跡するために監査を有効にする必要があることです。

「ローカルセキュリティポリシー」プログラムから(タイプsecpol.msc見つからない場合は実行画面から)「セキュリティ設定->ローカルポリシー->監査ポリシー」に移動し、「成功」の「監査プロセストラッキング」を有効にします。

enter image description here

これを実行したら、イベントビューアに移動して「セキュリティ」イベントログを確認すると、プロセスが開始または終了するたびに「監査成功」のエントリが表示されます。

プロセスが終了しました。
 
件名:
セキュリティID:SYSTEM 
アカウント名:SCOTT-PC $ 
アカウントドメイン:WORKGROUP 
ログオンID:0x3E7 
 
プロセス情報:
プロセスID:0x1338 
プロセス名:C:\ Windows\System32\consent。 exe 
終了ステータス:0x0 

探しているプロセスIDを10進数から16進数に変換する必要があります(3336は0xD08になります)。変換する最も簡単な方法は、Windows電卓を開いて、「プログラマ」モードに移動し、「dec」モードで数値を入力して、「hex」モードをクリックします。表示される数値は16進数に変換されます。

3

これが1回限りであり、常にプロセスのログを記録したくない場合は、Microsoft Process Monitorを使用することをお勧めします( https://technet.Microsoft.com/en-us/Library/bb896645.aspx )。ポピュラーが生成される前に実行する必要がありますが、親プロセスが停止した後でも、探していたすべての情報が取得されます。

0
mrTomahawk