ビュー:
注意
注意
変更監視モジュールは、ディレクトリ,レジストリ値,レジストリキー, サービス、プロセス、installed software, ポート,グループ,ユーザ,ファイル、およびWQLエージェントに関するクエリステートメント。変更監視を有効にして設定するには、を参照してください。変更監視の設定
プロセスのセットを表します。

タグ属性

次に示すXML属性はタグ自体の属性であり、変更監視ルールによって監視されるエンティティの属性ではありません。
属性
説明
必須
初期設定値
設定できる値
onChange
リアルタイムで監視するかどうかを示します。
いいえ
false
true、false

エンティティセットの属性

次に示すエンティティの属性は、変更監視ルールによって監視可能な属性です。
  • [CommandLine]: "ps -f" (Unix)、"ps w" (Linux)、またはProcess Explorer (Windows)で表示される完全なコマンドライン。
  • [グループ]: プロセスが実行されているグループ。
    • UNIXでは、これはプロセスの「有効な」グループIDであり、共有リソースへのアクセスや、場合によってはファイルへのアクセスを決定します。プロセスが権限を削除したり、有効なグループ認証情報を切り替えたりすると、グループIDが変更される可能性があります。たとえば、プログラムはグループIDを一時的に変更し、書き込み権限を取得して、ユーザが読み取り専用権限を持つディレクトリにインストールファイルをコピーすることができます。
    • Windowsでは、「現在の」プロセスのプライマリグループであり、ログイン時に作成されるユーザ固有のアクセストークンによって確立されます。アクセストークンは、ユーザとユーザが実行するプロセスのアクセス権とリソース権限を設定します。
      注意
      注意
      通常、Windowsプロセスには、プライマリグループに加えて、1つ以上の追加のグループ認証情報が関連付けられています。これらの追加のグループ認証情報は、Agentによって監視されません。プロセスエクスプローラ
  • [親]: このプロセスを作成したプロセスのPID。
  • [パス]: プロセスのバイナリへのフルパス。 Windowsでは、これはGetModuleFileNameEx() APIから取得されます。 LinuxおよびSolaris 10では、シンボリックリンク/proc/{pid}/exeまたは/proc/{pid}/path/a.outをそれぞれ読み取ることで取得されます。 (Solaris 9およびAIXでは使用できません。)
  • [プロセス]: プロセスバイナリの短縮名 (パスなし)。たとえば、「c:\\windows otepad.exe」の場合は「notepad.exe」、「/usr/local/bin/httpd」の場合は「httpd」になります。
  • [スレッド]: プロセスで現在実行中のスレッドの数。
  • [ユーザ]: プロセスを実行しているユーザ。 UNIXでは、これはプロセスの「有効な」ユーザIDであり、プロセスが権限を削除したり、有効なユーザ認証情報を切り替えたりした場合に変化します。

簡略記法による属性

  • [STANDARD:] CommandLine、Group、Parent、Path (使用可能な場合)、Process User

「key」の意味

キーは、"Process"属性 (実行可能ファイルの短縮名) とPIDの組み合わせです。 PIDは、パス区切り文字を間に挟んで名前に追加されます。 Windowsの場合はnotepad.exe\\1234、UNIXの場合はhttpd/1234です。パス区切り文字を使用すると、key="abc//"の包含一致または除外一致が想定どおりに機能します。

サブエレメント

  • [含む]
  • [除外]
参照変更監視ルールの言語許可された属性とサブ要素のincludeの概要については、を参照してください。ここには、このEntitySetクラスに関連するincludeとexcludeに固有の情報のみが含まれます。

ProcessSetの包含および除外の特殊属性

次の例は、PIDに関係なく、notepad.exeで実行中のプロセスセットを監視します。
<ProcessSet> <include key="notepad.exe\/" /> </ProcessSet>
プロセスのその他のさまざまな属性を、包含および除外機能テストで使用できます。機能テストでは、/*と?を使用したUnixのグロブスタイルのワイルドカードがサポートされます。パス区切り文字やその他の文字は正規化されません。これは、属性の値に対する単純なグロブスタイルの一致です。
[CommandLine]: プロセスのcommandLine属性に対してワイルドカードが一致するかどうかを確認します。次の例では、コマンドラインが「/httpd /」に一致するプロセスを監視します。
<ProcessSet> <include commandLine="/httpd /" /> </ProcessSet>
[グループ]: プロセスのグループ属性に対してワイルドカードが一致するかどうかを確認します。 Linuxでデーモングループをテストするには、「2」ではなく「daemon」を使用します。次の例では、root、daemon、またはlpのいずれかのグループとして実行されているプロセスを監視します。
<ProcessSet> <include group="root" /> <include group="daemon" /> <include group="lp" /> </ProcessSet>
[パス]: プロセスのパス属性に対してワイルドカードが一致するかどうかを確認します。一部のプラットフォームでは、path属性を使用できません。次の例では、System32にバイナリが存在するプロセスを監視します。
<ProcessSet> <include path="/\System32\/" /> </ProcessSet>
[ユーザ]: プロセスのユーザ属性に対してワイルドカードが一致するかどうかを確認します。 UNIXでスーパーユーザをテストするには、「0」ではなく「root」を使用します。次の例では、ビルトインシステムユーザのいずれかとして実行されているプロセス (NT AUTHORITY\\SYSTEM、NT AUTHORITY\\LOCAL SERVICE、NT AUTHORITY\\NETWORK SERVICEなど) を監視します。
<ProcessSet> <include user="NT AUTHORITY\/" /> </ProcessSet>