App Control イベントについて

アプリ コントロール イベントの概要

アプリコントロールは、ポリシーの読み込み時、ファイルがブロックされたとき、または監査モードの場合にファイルがブロックされたときのイベントをログに記録します。 これらのブロック イベントには、ポリシーを識別し、ブロックの詳細を示す情報が含まれます。 バイナリが許可されている場合、アプリ コントロールはイベントを生成しません。 ただし、この記事で後述するように、マネージド インストーラーまたはインテリジェント セキュリティ グラフ (ISG) によって承認されたファイルの監査イベントを許可するを有効にできます。

Core App Control イベント ログ

アプリ コントロール イベントは、Windows イベント ビューアーの 2 つの場所で生成されます。

  • アプリケーションとサービスのログ - Microsoft - Windows - CodeIntegrity - Operational には、アプリ制御ポリシーのアクティブ化と実行可能ファイル、dll、ドライバーの制御に関するイベントが含まれます。
  • アプリケーションとサービスのログ - Microsoft - Windows - AppLocker - MSI とスクリプト には、MSI インストーラー、スクリプト、および COM オブジェクトの制御に関するイベントが含まれています。

App Control がアクティブな場合に発生するほとんどのアプリとスクリプトのエラーは、これら 2 つのイベント ログを使用して診断できます。 この記事では、これらのログに存在するイベントについて詳しく説明します。 これらのイベントの詳細にあるさまざまなデータ要素 (タグ) の意味を理解するには、「 App Control イベント タグについて」を参照してください。

アプリケーションとサービスのログ - Microsoft - Windows - AppLocker - MSI イベントとスクリプト イベントは、Windows Server Core エディションには含まれません。

実行可能ファイル、dll、ドライバーのアプリ コントロール ブロック イベント

これらのイベントは、 CodeIntegrity - Operational イベント ログにあります。

イベント ID 説明
3004 このイベントは一般的ではなく、アプリ制御ポリシーが存在する場合とない場合に発生する可能性があります。 通常、カーネル ドライバーが無効な署名を使用して読み込もうとしたことを示します。 たとえば、WHQL が必要なシステムでは、ファイルが WHQL 署名されていない場合があります。

このイベントは、開発者が /INTEGRITYCHECK にオプトインしたが正しく署名されていないカーネル モードまたはユーザー モード コードにも表示されます。
3033 このイベントは、アプリコントロールポリシーが存在するかどうかにかかわらず発生する可能性があり、アプリコントロールポリシーが原因で発生した場合は、3077 イベントと共に発生する必要があります。 多くの場合、ファイルの署名が取り消されているか、有効期間署名 EKU の署名が期限切れであることを意味します。 有効期間署名 EKU の存在は、アプリコントロールが署名の期限切れのためにファイルをブロックする唯一のケースです。 失効した証明書または期限切れの証明書に依存しない規則 (ハッシュなど) と共に、ポリシーでオプション 20 Enabled:Revoked Expired As Unsigned を使用してみてください。

このイベントは、 Code Integrity Guard (CIG) でコンパイルされたコードが、CIG 要件を満たしていない他のコードを読み込もうとする場合にも発生します。
3034 このイベントは一般的ではありません。 これは、イベント 3033 と同等の監査モードです。
3076 このイベントは、監査モード ポリシーのメイン App Control ブロック イベントです。 ポリシーが適用された場合、ファイルがブロックされたことを示します。
3077 このイベントは、適用されたポリシーのメインアプリ制御ブロック イベントです。 これは、ファイルがポリシーに合格せず、ブロックされたことを示します。
3089 このイベントには、アプリコントロールによってブロックまたは監査がブロックされたファイルの署名情報が含まれています。 これらのイベントの 1 つは、ファイルの署名ごとに作成されます。 各イベントには、検出された署名の合計数と、現在の署名を識別するためのインデックス値が表示されます。 署名されていないファイルは、TotalSignatureCount が 0 のこれらのイベントの 1 つを生成します。 これらのイベントは、3004、3033、3034、3076、および 3077 イベントと関連付けられます。 イベントは、イベントのシステム部分にあるCorrelation ActivityIDを使用して照合できます。

パッケージ化されたアプリ、MSI インストーラー、スクリプト、COM オブジェクトのアプリ コントロール ブロック イベント

これらのイベントは 、AppLocker - MSI イベント ログとスクリプト イベント ログにあります。

イベント ID 説明
8028 このイベントは、PowerShell などのスクリプト ホストが、スクリプト ホストが実行しようとしているファイルについてアプリ コントロールにクエリを実行したことを示します。 ポリシーは監査モードであったため、スクリプトまたは MSI ファイルは実行されているはずですが、適用されている場合はアプリ制御ポリシーに合格していません。 スクリプト ホストによっては、ログに追加情報が含まれる場合があります。 注: ほとんどのサード パーティ製スクリプト ホストは、App Control と統合されません。 実行を許可するスクリプト ホストを選択する場合は、未確認のスクリプトによるリスクを考慮してください。
8029 このイベントは、イベント 8028 と同等の強制モードです。 注: このイベントでは、スクリプトがブロックされたことが示されていますが、スクリプト ホストは実際のスクリプトの適用動作を制御します。 スクリプト ホストは、ファイルを制限付きで実行し、ファイルを完全にブロックしない場合があります。 たとえば、PowerShell では、 制限付き言語モードでアプリ制御ポリシーで許可されていないスクリプトが実行されます。
8036 COM オブジェクトがブロックされました。 COM オブジェクトの承認の詳細については、「 App Control for Business ポリシーで COM オブジェクトの登録を許可する」を参照してください。
8037 このイベントは、スクリプト ホストがスクリプトの実行を許可するかどうかを確認し、ファイルがアプリ制御ポリシーに合格したことを示します。
8038 署名情報イベントは、8028 イベントまたは 8029 イベントと関連付けられます。 スクリプト ファイルのシグネチャごとに 1 つの 8038 イベントが生成されます。 スクリプト ファイルの署名の合計数と、その署名のインデックスを格納します。 署名されていないスクリプト ファイルは、TotalSignatureCount 0 で 1 つの 8038 イベントを生成します。 これらのイベントは 8028 イベントと 8029 イベントと相関しており、イベントの System 部分にあるCorrelation ActivityIDを使用して照合できます。
8039 このイベントは、アプリ制御ポリシーが監査モードであるため、パッケージ化されたアプリ (MSIX/AppX) のインストールまたは実行が許可されたことを示します。 ただし、ポリシーが適用された場合はブロックされていました。
8040 このイベントは、パッケージ化されたアプリが、アプリ制御ポリシーのためにインストールまたは実行できなかったことを示します。

アプリ コントロール ポリシーのアクティブ化イベント

これらのイベントは、 CodeIntegrity - Operational イベント ログにあります。

イベント ID 説明
3095 アプリ制御ポリシーは更新できないため、代わりに再起動する必要があります。
3096 アプリ制御ポリシーは既に最新の状態であるため、更新されませんでした。 このイベントの詳細には、ポリシー オプションなど、ポリシーに関する有用な情報が含まれています。
3097 アプリ制御ポリシーを更新できません。
3099 ポリシーが読み込まれたことを示します。 このイベントの詳細には、ポリシー オプションなど、アプリ制御ポリシーに関する有用な情報が含まれています。
3100 アプリ制御ポリシーは更新されましたが、正常にアクティブ化されませんでした。 リトライ。
3101 N 個のポリシーに対してアプリ制御ポリシーの更新が開始されました。
3102 N 個のポリシーに対するアプリ制御ポリシーの更新が完了しました。
3103 システムは、アプリ制御ポリシーの更新を無視しています。 たとえば、アクティブ化の条件を満たしていない受信トレイ Windows ポリシーなどです。
3105 システムは、指定した ID を使用してアプリ制御ポリシーを更新しようとしています。

インテリジェント セキュリティ グラフ (ISG) とマネージド インストーラー (MI) の診断イベント

マネージド インストーラーが有効になっている場合、LogAnalytics を使用しているお客様は、マネージド インストーラーで多数の 3091 イベントが発生する可能性があることに注意する必要があります。 LogAnalytics のコストが高くならないように、これらのイベントを除外することが必要になる場合があります。

次のイベントは、アプリ制御ポリシーに ISG または MI オプションが含まれている場合に役立つ診断情報を提供します。 これらのイベントは、マネージド インストーラーまたは ISG に基づいて何かが許可または拒否された理由をデバッグするのに役立ちます。 イベント 3090、3091、3092 は必ずしも問題を示すわけではありませんが、3076 や 3077 などの他のイベントとのコンテキストで確認する必要があります。

特に記載がない限り、これらのイベントは、使用している Windows のバージョンに応じて 、CodeIntegrity - Operational イベント ログまたは CodeIntegrity - Verbose イベント ログのいずれかで検出されます。

イベント ID 説明
3090 随意 このイベントは、ファイルが純粋に ISG またはマネージド インストーラーに基づいて実行されたことを示します。
3091 このイベントは、ファイルに ISG またはマネージド インストーラーが承認されておらず、アプリ制御ポリシーが監査モードであることを示します。
3092 このイベントは、3091 に相当する強制モードです。
8002 このイベントは 、AppLocker - EXE および DLL イベント ログにあります。 マネージド インストーラー規則に一致するプロセスが起動すると、このイベントは、イベントの詳細で見つかった PolicyName = MANAGEDINSTALLER で発生します。 PolicyName = EXE または DLL のイベントは、アプリコントロールとは関係ありません。

イベント 3090、3091、および 3092 は、システム上のアクティブなポリシーごとに報告されるため、同じファイルに対して複数のイベントが表示される場合があります。

ISG と MI 診断イベントの詳細

次の情報は、3090、3091、および 3092 イベントの詳細にあります。

名前 説明
ManagedInstallerEnabled 指定したポリシーでマネージド インストーラーの信頼が有効かどうかを示します
PassesManagedInstaller ファイルが MI から送信されたかどうかを示します
SmartlockerEnabled 指定したポリシーが ISG 信頼を有効にするかどうかを示します
PassesSmartlocker ファイルが ISG に従って肯定的な評判を持っていたかどうかを示します
AuditEnabled True アプリ制御ポリシーが監査モードの場合、それ以外の場合は強制モードです
PolicyName イベントが適用されるアプリ制御ポリシーの名前

ISG および MI 診断イベントの有効化

3090 の許可イベントを有効にするには、次の PowerShell コマンドに示すように、値が 0x300 の TestFlags regkey を作成します。 その後、コンピューターを再起動します。

reg add hklm\system\currentcontrolset\control\ci -v TestFlags -t REG_DWORD -d 0x300

イベント 3091 と 3092 は、一部のバージョンの Windows では非アクティブであり、前のコマンドによってオンになっています。

付録

その他の関連するイベント ID とそれに対応する説明の一覧。

イベント ID 説明
3001 署名されていないドライバーがシステムに読み込もうとしました。
3002 ページ ハッシュが見つからなかったので、コードの整合性でブート イメージを確認できませんでした。
3004 ページ ハッシュが見つからなかったので、コードの整合性でファイルを確認できませんでした。
3010 検証中のファイルの署名を含むカタログが無効です。
3011 署名カタログの読み込みが完了しました。
3012 コード整合性によって署名カタログの読み込みが開始されました。
3023 検証中のドライバー ファイルが、アプリ制御ポリシーに合格するための要件を満たしていませんでした。
3024 Windows アプリ コントロールでブート カタログ ファイルを更新できませんでした。
3026 Microsoft または証明書発行元は、カタログに署名した証明書を取り消しました。
3032 検証中のファイルが取り消されているか、ファイルに署名が取り消されています。
3033 検証中のファイルが、アプリ制御ポリシーに合格するための要件を満たしていませんでした。
3034 検証中のファイルが適用された場合、アプリ制御ポリシーを渡す要件を満たしていません。 ポリシーが監査モードであるため、ファイルは許可されました。
3036 Microsoft または証明書発行元は、検証対象のファイルに署名した証明書を取り消しました。
3064 アプリ制御ポリシーが適用された場合、検証中のユーザー モード DLL は、アプリ制御ポリシーを渡す要件を満たしていません。 ポリシーが監査モードであるため、DLL が許可されました。
3065 アプリ制御ポリシーが適用された場合、検証中のユーザー モード DLL は、アプリ制御ポリシーを渡す要件を満たしていません。
3074 ハイパーバイザーで保護されたコード整合性が有効になっている間のページ ハッシュエラー。
3075 このイベントは、ファイル検証中のアプリ制御ポリシーチェックのパフォーマンスを測定します。
3076 このイベントは、監査モード ポリシーのメイン App Control ブロック イベントです。 ポリシーが適用された場合、ファイルがブロックされたことを示します。
3077 このイベントは、適用されたポリシーのメインアプリ制御ブロック イベントです。 これは、ファイルがポリシーに合格せず、ブロックされたことを示します。
3079 検証中のファイルが、アプリ制御ポリシーに合格するための要件を満たしていませんでした。
3080 アプリ制御ポリシーが適用モードの場合、検証中のファイルは、アプリ制御ポリシーを渡す要件を満たしていません。
3081 検証中のファイルが、アプリ制御ポリシーに合格するための要件を満たしていませんでした。
3082 アプリ制御ポリシーが適用された場合、ポリシーはこの WHQL 以外のドライバーをブロックしている可能性があります。
3084 コードの整合性により、このブート セッションで WHQL ドライバーの署名要件が適用されます。
3085 コードの整合性では、このブート セッションで WHQL ドライバーの署名要件が適用されません。
3086 検証中のファイルは、分離ユーザー モード (IUM) プロセスの署名要件を満たしていません。
3089 このイベントには、アプリコントロールによってブロックまたは監査がブロックされたファイルの署名情報が含まれています。 ファイルの署名ごとに 1 つの 3089 イベントが作成されます。
3090 随意 このイベントは、ファイルが純粋に ISG またはマネージド インストーラーに基づいて実行されたことを示します。
3091 このイベントは、ファイルに ISG またはマネージド インストーラーが承認されておらず、アプリ制御ポリシーが監査モードであることを示します。
3092 このイベントは、3091 に相当する強制モードです。
3095 アプリ制御ポリシーは更新できないため、代わりに再起動する必要があります。
3096 アプリ制御ポリシーは既に最新の状態であるため、更新されませんでした。
3097 アプリ制御ポリシーを更新できません。
3099 ポリシーが読み込まれたことを示します。 このイベントには、アプリ制御ポリシーによって設定されたオプションに関する情報も含まれます。
3100 アプリ制御ポリシーは更新されましたが、正常にアクティブ化されませんでした。 リトライ。
3101 システムがアプリ制御ポリシーの更新を開始しました。
3102 システムは、アプリ制御ポリシーの更新を完了しました。
3103 システムは、アプリ制御ポリシーの更新を無視しています。
3104 検証対象のファイルは、PPL (保護されたプロセス ライト) プロセスの署名要件を満たしていません。
3105 システムがアプリ制御ポリシーを更新しようとしています。
3108 Windows モード変更イベントが成功しました。
3110 Windows モード変更イベントが失敗しました。
3111 検証中のファイルが、ハイパーバイザーで保護されたコード整合性 (HVCI) ポリシーを満たしていませんでした。
3112 Windows は、検証対象のファイルに署名した証明書を取り消しました。
3114 動的コード セキュリティは、.NET アプリまたは DLL をアプリ制御ポリシーの検証にオプトしました。 検証中のファイルがポリシーに合格せず、ブロックされました。