知識マップ: AppLocker・App Control for Business(WDAC)と業務アプリ配布 ── 「実行制御」でブロックされる前に
記事「AppLocker・App Control for Business(WDAC)と業務アプリ配布 ── 「実行制御」でブロックされる前に」の主張を、概念と関係(エッジ)に分解した知識グラフの全体です。各関係には根拠・確認日・確度が付いています。
Windowsの実行制御は、警告するだけのSmartScreen、ユーザー・グループ単位で制御できるAppLocker、マシン全体に効くApp Control for Business、個人PCに自動で効くSmart App Controlの4つに分かれます。AppLockerとApp Controlは発行者・パス・ハッシュのルールで許可/拒否を判定し、マイクロソフトはセキュリティ機能として設計されたApp Controlの利用を推奨しています。配布側の対策の中心はコード署名で、DLLを含む全バイナリへの一貫した署名がなければ、更新のたびに発行者ルールが壊れたりハッシュルールが機能しなくなったりします。ブロックの有無はAppLockerイベントログとCodeIntegrity - Operationalログで確定でき、導入側はまず監査モードで一巡分のイベントを集めてから強制に切り替えるのが定石です。
flowchart LR
accTitle: AppLocker・App Control for Business・Smart App Controlの知識マップ
accDescr: AppLocker、App Control for Business(旧WDAC)、Smart App Control、SmartScreenという4つの実行制御の違い、それぞれが使うルール(発行者・パス・ハッシュ)、コード署名との関係、ブロックの確認に使うイベントログ、監査モードから強制への移行、配布側でアプリがブロックされる典型パターンの関係を示す図
applocker["AppLocker"]
app_control_for_business["App Control for Business(旧WDAC)"]
publisher_rule["発行者ルール"]
path_rule["パスルール"]
hash_rule["ハッシュルール"]
managed_installer["マネージドインストーラー"]
intelligent_security_graph["Intelligent Security Graph(ISG)"]
appidsvc["Application Identityサービス(AppIDSvc)"]
windows_update["Windows Update"]
intune["Microsoft Intune"]
group_policy["グループポリシー"]
smart_app_control["Smart App Control"]
code_signing_cert["コード署名証明書"]
ecc_signature["ECC(楕円曲線)署名"]
hsm_key_storage["HSM/トークンでの秘密鍵保管"]
code_signing_timestamp["コード署名のタイムスタンプ"]
certificate_expiry["証明書の期限切れ"]
unsigned_binary["未署名バイナリ"]
blocked_app_startup_failure["実行制御によるアプリ起動失敗"]
smartscreen["Windows SmartScreen"]
applocker_log["AppLockerイベントログ"]
codeintegrity_log["CodeIntegrity - Operationalログ"]
constrained_language_mode["制約付き言語モード(Constrained Language Mode)"]
audit_mode["監査モード"]
writable_folder_execution["書き込み可能フォルダでの実行"]
applocker -->|"利用する"| publisher_rule
applocker -->|"利用する"| path_rule
applocker -->|"利用する"| hash_rule
app_control_for_business -->|"利用する"| publisher_rule
app_control_for_business -->|"利用する"| path_rule
app_control_for_business -->|"利用する"| managed_installer
app_control_for_business -->|"利用する"| intelligent_security_graph
applocker -->|"前提とする"| appidsvc
applocker -.->|"前提とする"| windows_update
app_control_for_business -->|"の後継"| applocker
app_control_for_business -->|"で構成できる"| intune
app_control_for_business -.->|"で構成できる"| group_policy
applocker -->|"で構成できる"| group_policy
applocker -->|"で構成できる"| intune
smart_app_control -.->|"前提とする"| code_signing_cert
smart_app_control -->|"両立しない"| ecc_signature
app_control_for_business -->|"両立しない"| ecc_signature
publisher_rule -->|"前提とする"| code_signing_cert
code_signing_cert -->|"前提とする"| hsm_key_storage
code_signing_cert -->|"利用する"| code_signing_timestamp
code_signing_timestamp -->|"防止する"| certificate_expiry
unsigned_binary -.->|"原因になり得る"| blocked_app_startup_failure
unsigned_binary -.->|"両立しない"| smart_app_control
applocker -.->|"原因になり得る"| blocked_app_startup_failure
app_control_for_business -.->|"原因になり得る"| blocked_app_startup_failure
smart_app_control -.->|"原因になり得る"| blocked_app_startup_failure
smartscreen -.->|"原因になり得る"| blocked_app_startup_failure
blocked_app_startup_failure -->|"で確認できる"| applocker_log
blocked_app_startup_failure -->|"で確認できる"| codeintegrity_log
app_control_for_business -.->|"原因になり得る"| constrained_language_mode
audit_mode -->|"より先に行うべき"| applocker
audit_mode -->|"より先に行うべき"| app_control_for_business
managed_installer -.->|"で構成できる"| intune
writable_folder_execution -.->|"原因になり得る"| blocked_app_startup_failure
path_rule -->|"用いるのは非推奨"| writable_folder_execution
hash_rule -.->|"原因になり得る"| blocked_app_startup_failure
概念間の関係(全36件)
図と同じ関係を文章でも列挙します。表示している文と機械可読な意味データ(RDFa)は同じ要素に載っています。確度が「確立した関係」のものは直接の関係として、「条件付きの関係」のものは成立条件つきの言明(rdf:Statement)として表現しています。
- AppLockerは発行者ルールを利用します。
- AppLockerはパスルールを利用します。
- AppLockerはハッシュルールを利用します。
- App Control for Business(旧WDAC)は発行者ルールを利用します。
- App Control for Business(旧WDAC)はパスルールを利用します。
- App Control for Business(旧WDAC)はマネージドインストーラーを利用します。
- App Control for Business(旧WDAC)はIntelligent Security Graph(ISG)を利用します。
- AppLockerはApplication Identityサービス(AppIDSvc)を前提とします。
- AppLockerはWindows Updateを前提とします。
- App Control for Business(旧WDAC)はAppLockerの後継に当たります。
- App Control for Business(旧WDAC)はMicrosoft Intuneで構成できます。
- App Control for Business(旧WDAC)はグループポリシーで構成できます。
- AppLockerはグループポリシーで構成できます。
- AppLockerはMicrosoft Intuneで構成できます。
- Smart App Controlはコード署名証明書を前提とします。
- Smart App ControlはECC(楕円曲線)署名と両立しません。
- App Control for Business(旧WDAC)はECC(楕円曲線)署名と両立しません。
- 発行者ルールはコード署名証明書を前提とします。
- コード署名証明書はHSM/トークンでの秘密鍵保管を前提とします。
- コード署名証明書はコード署名のタイムスタンプを利用します。
- コード署名のタイムスタンプは証明書の期限切れを防ぎます。
- 未署名バイナリは実行制御によるアプリ起動失敗の原因になることがあります。
- 未署名バイナリはSmart App Controlと両立しません。
- AppLockerは実行制御によるアプリ起動失敗の原因になることがあります。
- App Control for Business(旧WDAC)は実行制御によるアプリ起動失敗の原因になることがあります。
- Smart App Controlは実行制御によるアプリ起動失敗の原因になることがあります。
- Windows SmartScreenは実行制御によるアプリ起動失敗の原因になることがあります。
- 実行制御によるアプリ起動失敗はAppLockerイベントログで確認できます。
- 実行制御によるアプリ起動失敗はCodeIntegrity - Operationalログで確認できます。
- App Control for Business(旧WDAC)は制約付き言語モード(Constrained Language Mode)の原因になることがあります。
- 監査モードはAppLockerより先に行うべきです。
- 監査モードはApp Control for Business(旧WDAC)より先に行うべきです。
- マネージドインストーラーはMicrosoft Intuneで構成できます。
- 書き込み可能フォルダでの実行は実行制御によるアプリ起動失敗の原因になることがあります。
- パスルールを書き込み可能フォルダでの実行に用いることは推奨されません。
- ハッシュルールは実行制御によるアプリ起動失敗の原因になることがあります。
主要概念の定義
機械可読データ
このページはサイトの知識グラフ(_data/knowledge/)から自動生成されています。誤りの指摘はお問い合わせからお願いします。