監査ポリシーの種類
Windows OSには、特定のイベントをログに記録する監査機能があります。監査機能は主にグループポリシーで設定します。(auditpolコマンドで直接設定することも可能です)
グループポリシーで設定する際、以下の2カ所で設定が可能です。(Active DirectoryのGPOでも同様)
- 監査ポリシー(基本の監査ポリシー)
- 監査ポリシーの詳細な構成(詳細な監査ポリシー)
監査ポリシー(基本の監査ポリシー)
「監査ポリシー」では、9つのポリシーが用意されています。各ポリシーに対して有効・無効(成功・失敗)の設定が可能です。デフォルトでは「未定義」(=設定なし)の状態となっています。
- ポリシーパス:[コンピューターの構成] – [ポリシー] – [Windows の設定] – [セキュリティの設定] – [ローカル ポリシー] – [監査ポリシー]
監査ポリシーの詳細な構成(詳細な監査ポリシー)
「監査ポリシー」では、9つのポリシーが用意されていましたが、各ポリシーは複数のイベント(サブカテゴリ)をカテゴリでまとめたものとなっています。例えば、「ログオン イベントの監査」であれば、「ログオン」、「ログオフ」、「アカウント ロックアウト」など複数のイベントがまとめられています。これをイベントごとに設定できるようにしたものが「監査ポリシーの詳細な構成」です。
- ポリシーパス:[コンピューターの構成] – [ポリシー] – [Windows の設定] – [セキュリティの設定] – [監査ポリシーの詳細な構成] – [監査ポリシー]
唯一「グローバル オブジェクト アクセス監査」は、「監査ポリシーの詳細な構成」にしかない設定です。それ以外は、「監査ポリシー」と「監査ポリシーの詳細な構成」で設定できる監査ポリシー(カテゴリ)は同じです。
どちらの設定を利用するべきか
本記事のタイトルにもしている通り、新規に設計・構築をする場合は「監査ポリシーの詳細な構成」で設定することをオススメします。理由は以下の通りです。
-
1度でも「監査ポリシーの詳細な構成」を設定すると、「監査ポリシー」の設定は反映されなくなる(「監査ポリシーの詳細な構成」の設定を「未定義」に戻しても反映されない)
- 両方の設定を有効にした場合でも「監査ポリシーの詳細な構成」の設定だけが適用されます
- セキュリティ製品等の要件で「監査ポリシーの詳細な構成」による設定が必要になった場合、設定を移行する手間が発生します。
- 「監査ポリシーの詳細な構成」の方が「監査ポリシー」よりも詳細な単位で有効・無効(成功・失敗)を設定できる
- Microsoftの推奨設定やCISベンチマーク等は「監査ポリシーの詳細な構成」の形式(サブカテゴリ単位)で推奨が記載されています
実機での動作確認
実際に検証環境で動作を確認してみます。今回はWindows Server 2022で構築したActive Directory(ドメインコントローラー)で動作確認を行います。
デフォルト設定の確認
デフォルトでは、「監査ポリシー」も「監査ポリシーの詳細な構成」どちらも設定は「未定義」となっています。ただし、「未定義」は監査しないという意味ではありません。コマンドプロンプトでauditpolを実行し、デフォルトの監査設定を確認してみます。
auditpol /get /category:*
出力を確認すると、複数のイベントで監査設定がされていることがわかります。
出力
システム監査ポリシー
カテゴリ/サブカテゴリ 設定
システム
セキュリティ システムの拡張 監査なし
システムの整合性 成功および失敗
IPsec ドライバー 監査なし
その他のシステム イベント 成功および失敗
セキュリティ状態の変更 成功
ログオン/ログオフ
ログオン 成功および失敗
ログオフ 成功
アカウント ロックアウト 成功
IPsec メイン モード 監査なし
IPsec クイック モード 監査なし
IPsec 拡張モード 監査なし
特殊なログオン 成功
その他のログオン/ログオフ イベント 監査なし
ネットワーク ポリシー サーバー 成功および失敗
ユーザー要求/デバイスの信頼性情報 監査なし
グループ メンバーシップ 監査なし
アクセス権 監査なし
オブジェクト アクセス
ファイル システム 監査なし
レジストリ 監査なし
カーネル オブジェクト 監査なし
SAM 監査なし
証明書サービス 監査なし
生成されたアプリケーション 監査なし
ハンドル操作 監査なし
ファイルの共有 監査なし
フィルタリング プラットフォーム パケットのドロップ 監査なし
フィルタリング プラットフォームの接続 監査なし
その他のオブジェクト アクセス イベント 監査なし
詳細なファイル共有 監査なし
リムーバブル記憶域 監査なし
集約型ポリシー ステージング 監査なし
特権の使用
重要でない特権の使用 監査なし
その他の特権の使用イベント 監査なし
重要な特権の使用 監査なし
詳細追跡
プロセス作成 監査なし
プロセス終了 監査なし
DPAPI アクティビティ 監査なし
RPC イベント 監査なし
プラグ アンド プレイ イベント 監査なし
トークン権限調整済みイベント 監査なし
ポリシーの変更
ポリシーの変更の監査 成功
ポリシーの変更の認証 成功
ポリシーの変更の承認 監査なし
MPSSVC ルールレベル ポリシーの変更 監査なし
フィルタリング プラットフォームのポリシーの変更 監査なし
その他のポリシー変更イベント 監査なし
アカウント管理
コンピューター アカウント管理 成功
セキュリティ グループ管理 成功
配布グループの管理 監査なし
アプリケーション グループの管理 監査なし
その他のアカウント管理イベント 監査なし
ユーザー アカウント管理 成功
DS アクセス
ディレクトリ サービス アクセス 成功
ディレクトリ サービスの変更 監査なし
ディレクトリ サービスのレプリケーション 監査なし
詳細なディレクトリ サービス レプリケーション 監査なし
アカウント ログオン
Kerberos サービス チケット操作 成功
その他のアカウント ログオン イベント 監査なし
Kerberos 認証サービス 成功
資格情報の確認 成功
「監査ポリシー」から対象のポリシーの「プロパティ」>「説明」で、既定値を確認することができます。この既定値が出力と一致していることがわかります。
- ポリシーパス:[コンピューターの構成] – [ポリシー] – [Windows の設定] – [セキュリティの設定] – [ローカル ポリシー] – [監査ポリシー]
「監査ポリシー」を設定してみる
GPOで「監査ポリシー」を設定してみます。設定後、gpupdateでGPOを適用した後、auditpolで監査設定を確認してみます。
gpupdate /force
auditpol /get /category:*
出力を確認すると、設定が反映されたことがわかります。設定していない監査ポリシーは既定値のままとなっています。
出力
システム監査ポリシー
カテゴリ/サブカテゴリ 設定
システム
セキュリティ システムの拡張 監査なし
システムの整合性 成功および失敗
IPsec ドライバー 監査なし
その他のシステム イベント 成功および失敗
セキュリティ状態の変更 成功
ログオン/ログオフ
ログオン 成功および失敗
ログオフ 成功
アカウント ロックアウト 成功
IPsec メイン モード 監査なし
IPsec クイック モード 監査なし
IPsec 拡張モード 監査なし
特殊なログオン 成功
その他のログオン/ログオフ イベント 監査なし
ネットワーク ポリシー サーバー 成功および失敗
ユーザー要求/デバイスの信頼性情報 監査なし
グループ メンバーシップ 監査なし
アクセス権 監査なし
オブジェクト アクセス
ファイル システム 監査なし
レジストリ 監査なし
カーネル オブジェクト 監査なし
SAM 監査なし
証明書サービス 監査なし
生成されたアプリケーション 監査なし
ハンドル操作 監査なし
ファイルの共有 監査なし
フィルタリング プラットフォーム パケットのドロップ 監査なし
フィルタリング プラットフォームの接続 監査なし
その他のオブジェクト アクセス イベント 監査なし
詳細なファイル共有 監査なし
リムーバブル記憶域 監査なし
集約型ポリシー ステージング 監査なし
特権の使用
重要でない特権の使用 監査なし
その他の特権の使用イベント 監査なし
重要な特権の使用 監査なし
詳細追跡
プロセス作成 監査なし
プロセス終了 監査なし
DPAPI アクティビティ 監査なし
RPC イベント 監査なし
プラグ アンド プレイ イベント 監査なし
トークン権限調整済みイベント 監査なし
ポリシーの変更
ポリシーの変更の監査 成功
ポリシーの変更の認証 成功
ポリシーの変更の承認 監査なし
MPSSVC ルールレベル ポリシーの変更 監査なし
フィルタリング プラットフォームのポリシーの変更 監査なし
その他のポリシー変更イベント 監査なし
アカウント管理
コンピューター アカウント管理 成功
セキュリティ グループ管理 成功
配布グループの管理 監査なし
アプリケーション グループの管理 監査なし
その他のアカウント管理イベント 監査なし
ユーザー アカウント管理 成功
DS アクセス
ディレクトリ サービス アクセス 成功
ディレクトリ サービスの変更 監査なし
ディレクトリ サービスのレプリケーション 監査なし
詳細なディレクトリ サービス レプリケーション 監査なし
アカウント ログオン
Kerberos サービス チケット操作 成功および失敗
その他のアカウント ログオン イベント 成功および失敗
Kerberos 認証サービス 成功および失敗
資格情報の確認 成功および失敗
「監査ポリシーの詳細な構成」を設定してみる
GPOで「監査ポリシーの詳細な構成」を設定してみます。先ほど設定した「監査ポリシー」の設定はそのままにします。設定後、gpupdateでGPOを適用した後、auditpolで監査設定を確認してみます。
gpupdate /force
auditpol /get /category:*
出力を確認すると、「監査ポリシーの詳細な構成」で設定した監査ポリシーだけが有効になっていることがわかります。(「監査ポリシー」で「アカウント ログオン イベントの監査」を設定していましたが有効になっていません)
出力
システム監査ポリシー
カテゴリ/サブカテゴリ 設定
システム
セキュリティ システムの拡張 監査なし
システムの整合性 監査なし
IPsec ドライバー 監査なし
その他のシステム イベント 監査なし
セキュリティ状態の変更 監査なし
ログオン/ログオフ
ログオン 成功および失敗
ログオフ 成功
アカウント ロックアウト 監査なし
IPsec メイン モード 監査なし
IPsec クイック モード 監査なし
IPsec 拡張モード 監査なし
特殊なログオン 監査なし
その他のログオン/ログオフ イベント 監査なし
ネットワーク ポリシー サーバー 監査なし
ユーザー要求/デバイスの信頼性情報 監査なし
グループ メンバーシップ 監査なし
アクセス権 監査なし
オブジェクト アクセス
ファイル システム 監査なし
レジストリ 監査なし
カーネル オブジェクト 監査なし
SAM 監査なし
証明書サービス 監査なし
生成されたアプリケーション 監査なし
ハンドル操作 監査なし
ファイルの共有 監査なし
フィルタリング プラットフォーム パケットのドロップ 監査なし
フィルタリング プラットフォームの接続 監査なし
その他のオブジェクト アクセス イベント 監査なし
詳細なファイル共有 監査なし
リムーバブル記憶域 監査なし
集約型ポリシー ステージング 監査なし
特権の使用
重要でない特権の使用 監査なし
その他の特権の使用イベント 監査なし
重要な特権の使用 監査なし
詳細追跡
プロセス作成 監査なし
プロセス終了 監査なし
DPAPI アクティビティ 監査なし
RPC イベント 監査なし
プラグ アンド プレイ イベント 監査なし
トークン権限調整済みイベント 監査なし
ポリシーの変更
ポリシーの変更の監査 監査なし
ポリシーの変更の認証 監査なし
ポリシーの変更の承認 監査なし
MPSSVC ルールレベル ポリシーの変更 監査なし
フィルタリング プラットフォームのポリシーの変更 監査なし
その他のポリシー変更イベント 監査なし
アカウント管理
コンピューター アカウント管理 監査なし
セキュリティ グループ管理 監査なし
配布グループの管理 監査なし
アプリケーション グループの管理 監査なし
その他のアカウント管理イベント 監査なし
ユーザー アカウント管理 監査なし
DS アクセス
ディレクトリ サービス アクセス 監査なし
ディレクトリ サービスの変更 監査なし
ディレクトリ サービスのレプリケーション 監査なし
詳細なディレクトリ サービス レプリケーション 監査なし
アカウント ログオン
Kerberos サービス チケット操作 監査なし
その他のアカウント ログオン イベント 監査なし
Kerberos 認証サービス 監査なし
資格情報の確認 監査なし
なお、「監査ポリシーの詳細な構成」の設定値はSYSVOLの「audit.csv」ファイルとして保存されます。SYSVOLを確認すると、新規に「audit.csv」が作成されていることがわかります。
「audit.csv」は次のような中身となっています。
コンピューター名,ポリシー ターゲット,サブカテゴリ,サブカテゴリ GUID,包含設定,除外設定,設定値
,システム,ログオフの監査,{0cce9216-69ae-11d9-bed3-505054503030},成功,,1
,システム,ログオンの監査,{0cce9215-69ae-11d9-bed3-505054503030},成功および失敗,,3
「監査ポリシーの詳細な構成」の設定を戻してみる
「監査ポリシーの詳細な構成」の設定を「未定義」に戻してみます。
今回もgpupdateを実行した後、auditpolで設定を出力します。
gpupdate /force
auditpol /get /category:*
「監査ポリシーの詳細な構成」の設定がなくなったため、「監査ポリシー」の設定が適用される気がしますが、実際にはそうではありません。すべての設定が無効になっていることがわかります。
出力
システム監査ポリシー
カテゴリ/サブカテゴリ 設定
システム
セキュリティ システムの拡張 監査なし
システムの整合性 監査なし
IPsec ドライバー 監査なし
その他のシステム イベント 監査なし
セキュリティ状態の変更 監査なし
ログオン/ログオフ
ログオン 監査なし
ログオフ 監査なし
アカウント ロックアウト 監査なし
IPsec メイン モード 監査なし
IPsec クイック モード 監査なし
IPsec 拡張モード 監査なし
特殊なログオン 監査なし
その他のログオン/ログオフ イベント 監査なし
ネットワーク ポリシー サーバー 監査なし
ユーザー要求/デバイスの信頼性情報 監査なし
グループ メンバーシップ 監査なし
アクセス権 監査なし
オブジェクト アクセス
ファイル システム 監査なし
レジストリ 監査なし
カーネル オブジェクト 監査なし
SAM 監査なし
証明書サービス 監査なし
生成されたアプリケーション 監査なし
ハンドル操作 監査なし
ファイルの共有 監査なし
フィルタリング プラットフォーム パケットのドロップ 監査なし
フィルタリング プラットフォームの接続 監査なし
その他のオブジェクト アクセス イベント 監査なし
詳細なファイル共有 監査なし
リムーバブル記憶域 監査なし
集約型ポリシー ステージング 監査なし
特権の使用
重要でない特権の使用 監査なし
その他の特権の使用イベント 監査なし
重要な特権の使用 監査なし
詳細追跡
プロセス作成 監査なし
プロセス終了 監査なし
DPAPI アクティビティ 監査なし
RPC イベント 監査なし
プラグ アンド プレイ イベント 監査なし
トークン権限調整済みイベント 監査なし
ポリシーの変更
ポリシーの変更の監査 監査なし
ポリシーの変更の認証 監査なし
ポリシーの変更の承認 監査なし
MPSSVC ルールレベル ポリシーの変更 監査なし
フィルタリング プラットフォームのポリシーの変更 監査なし
その他のポリシー変更イベント 監査なし
アカウント管理
コンピューター アカウント管理 監査なし
セキュリティ グループ管理 監査なし
配布グループの管理 監査なし
アプリケーション グループの管理 監査なし
その他のアカウント管理イベント 監査なし
ユーザー アカウント管理 監査なし
DS アクセス
ディレクトリ サービス アクセス 監査なし
ディレクトリ サービスの変更 監査なし
ディレクトリ サービスのレプリケーション 監査なし
詳細なディレクトリ サービス レプリケーション 監査なし
アカウント ログオン
Kerberos サービス チケット操作 監査なし
その他のアカウント ログオン イベント 監査なし
Kerberos 認証サービス 監査なし
資格情報の確認 監査なし
これは、「audit.csv」が残ってしまっているためです。「audit.csv」が存在する場合、「audit.csv」の設定(=「監査ポリシーの詳細な構成」)を優先します。
現在の「audit.csv」の中身は空になっています。
コンピューター名,ポリシー ターゲット,サブカテゴリ,サブカテゴリ GUID,包含設定,除外設定,設定値
audit.csvを削除した後、再度gpupdateを実行し、auditpolを出力します。
出力を確認すると、「監査ポリシー」の設定が反映されていることがわかります。ただし、既定値の設定はすべて削除されています。「監査ポリシーの詳細な構成」から「監査ポリシー」に設定を戻すことはあまりないと思いますが注意が必要です。
出力
システム監査ポリシー
カテゴリ/サブカテゴリ 設定
システム
セキュリティ システムの拡張 監査なし
システムの整合性 監査なし
IPsec ドライバー 監査なし
その他のシステム イベント 監査なし
セキュリティ状態の変更 監査なし
ログオン/ログオフ
ログオン 監査なし
ログオフ 監査なし
アカウント ロックアウト 監査なし
IPsec メイン モード 監査なし
IPsec クイック モード 監査なし
IPsec 拡張モード 監査なし
特殊なログオン 監査なし
その他のログオン/ログオフ イベント 監査なし
ネットワーク ポリシー サーバー 監査なし
ユーザー要求/デバイスの信頼性情報 監査なし
グループ メンバーシップ 監査なし
アクセス権 監査なし
オブジェクト アクセス
ファイル システム 監査なし
レジストリ 監査なし
カーネル オブジェクト 監査なし
SAM 監査なし
証明書サービス 監査なし
生成されたアプリケーション 監査なし
ハンドル操作 監査なし
ファイルの共有 監査なし
フィルタリング プラットフォーム パケットのドロップ 監査なし
フィルタリング プラットフォームの接続 監査なし
その他のオブジェクト アクセス イベント 監査なし
詳細なファイル共有 監査なし
リムーバブル記憶域 監査なし
集約型ポリシー ステージング 監査なし
特権の使用
重要でない特権の使用 監査なし
その他の特権の使用イベント 監査なし
重要な特権の使用 監査なし
詳細追跡
プロセス作成 監査なし
プロセス終了 監査なし
DPAPI アクティビティ 監査なし
RPC イベント 監査なし
プラグ アンド プレイ イベント 監査なし
トークン権限調整済みイベント 監査なし
ポリシーの変更
ポリシーの変更の監査 監査なし
ポリシーの変更の認証 監査なし
ポリシーの変更の承認 監査なし
MPSSVC ルールレベル ポリシーの変更 監査なし
フィルタリング プラットフォームのポリシーの変更 監査なし
その他のポリシー変更イベント 監査なし
アカウント管理
コンピューター アカウント管理 監査なし
セキュリティ グループ管理 監査なし
配布グループの管理 監査なし
アプリケーション グループの管理 監査なし
その他のアカウント管理イベント 監査なし
ユーザー アカウント管理 監査なし
DS アクセス
ディレクトリ サービス アクセス 監査なし
ディレクトリ サービスの変更 監査なし
ディレクトリ サービスのレプリケーション 監査なし
詳細なディレクトリ サービス レプリケーション 監査なし
アカウント ログオン
Kerberos サービス チケット操作 成功および失敗
その他のアカウント ログオン イベント 成功および失敗
Kerberos 認証サービス 成功および失敗
資格情報の確認 成功および失敗
さいごに
Windowsの監査ポリシーは「監査ポリシーの詳細な構成」で設定するのが良さそうです。本記事が皆様のお役に立てば幸いです。










