AppLocker 进程和交互
注意
适用于企业的 App Control 的某些功能仅适用于特定 Windows 版本。 详细了解 应用控制功能可用性。
本文面向 IT 专业人员介绍了 AppLocker 评估和强制实施规则时的过程依赖关系和交互。
AppLocker 如何应用策略
AppLocker 策略是可能包含配置的任何一个强制模式设置的规则集合。 应用后,将在策略中评估每个规则,并根据强制设置和组策略结构应用规则集合。
应用程序标识服务 (appid.sys) 在计算机上强制实施 AppLocker 策略,该服务是评估策略并在 Windows 内核中运行的引擎。 如果服务未运行,则不会强制实施策略。 应用程序标识服务会将二进制文件(即使产品或二进制名称为空)中的信息返回到“本地安全策略”管理单元的结果窗格。
AppLocker 策略根据应用程序标识服务要求以安全描述符格式存储。 它使用文件路径、哈希或完全限定的二进制名称属性来形成对规则的允许或拒绝操作。 每个规则 (ACE) 存储在安全描述符中,并包含以下信息:
- 安全描述符定义语言中的允许或拒绝 ACE (“XA”或“XD” (SDDL) 形式) 。
- 此规则适用的 SID (用户安全标识符) 。 (默认为 SDDL.) 中经过身份验证的用户 SID
- 包含 appid 属性的规则条件。
例如,允许 %windir% 目录中所有文件运行的规则的 SDDL 使用以下格式: XA;;FX;;;AU;(APPID://PATH == "%windir%\\\*")
。
Appid.sys 读取和缓存 DLL 和可执行文件的有效 AppLocker 策略。 每当应用新策略时,策略转换器任务会通知 appid.sys。 对于其他文件类型,每次进行 SaferIdentifyLevel 调用时,都会读取 AppLocker 策略。
了解 AppLocker 规则
AppLocker 规则是放置在文件上的控件,用于控制它是否针对特定用户或组运行。 为五种不同类型的文件或集合创建 AppLocker 规则:
- 可执行规则控制用户或组是否可以运行可执行文件。 可执行文件通常具有 .exe 或.com文件扩展名,并应用于应用程序。
- 脚本规则控制用户或组是否可以运行文件扩展名为 .ps1、.bat、.cmd、.vbs 和 .js 的脚本。
- Windows Installer 规则控制用户或组是否可以运行文件扩展名为 .msi、.mst 和 .msp 的文件, (Windows Installer 修补程序) 。
- DLL 规则控制用户或组是否可以运行文件扩展名为 .dll 和 .ocx 的文件。
- 打包的应用和打包的应用安装程序规则控制用户或组是否可以运行或安装打包的应用。 打包应用安装程序具有 .appx 扩展。
有三种不同类型的条件可以应用于规则:
规则的发布者条件控制用户或组是否可以运行来自特定软件发布者的文件。 文件必须经过签名。
规则上的路径条件控制用户或组是否可以从特定目录或其子目录中运行文件。
规则上的文件哈希条件控制用户或组是否可以运行具有匹配加密哈希的文件。
-
AppLocker 规则集合是一组规则,适用于以下类型之一:可执行文件、Windows Installer 文件、脚本、DLL 和打包应用。
-
规则条件是 AppLocker 规则所基于的条件。 创建 AppLocker 规则需要满足主要条件。 三个主要规则条件是发布者、路径和文件哈希。
-
AppLocker 包括每个规则集合的默认规则。 这些规则旨在帮助确保在 AppLocker 规则集合中允许 Windows 正常运行所需的文件。
-
可以将 AppLocker 规则应用于单个用户或一组用户。 如果将规则应用于一组用户,该规则会影响该组中的所有用户。 如果需要仅允许用户组的子集使用应用程序,可以为该子集创建一个特殊规则。
了解 AppLocker 规则行为 和 了解 AppLocker 允许和拒绝对规则执行的操作
每个 AppLocker 规则集合充当允许的文件列表。
了解 AppLocker 策略
AppLocker 策略是一组规则集合及其相应的配置强制模式设置应用于一个或多个计算机。
-
规则强制仅应用于规则集合,而不适用于单个规则。 AppLocker 将规则划分为四个集合:可执行文件、Windows Installer 文件、脚本和 DLL 文件。 规则强制实施选项包括“未配置”、“强制实施规则”或“仅审核”。 所有 AppLocker 规则集合共同构成应用程序控制策略或 AppLocker 策略。 默认情况下,如果未配置强制,并且规则集合中存在规则,则会强制实施这些规则。
了解 AppLocker 和组策略
组策略可用于在单独的对象中创建、修改和分发 AppLocker 策略,或者与其他策略结合使用。
-
使用 组策略 分发 AppLocker 策略时,除非强制模式设置为“仅审核”,否则将强制实施包含一个或多个规则的规则集合。 组策略不会覆盖或替换链接组策略对象 (GPO) 中已存在的规则,并且除了现有规则外,还会应用 AppLocker 规则。 AppLocker 在任何允许规则之前处理显式拒绝规则,对于规则强制,将应用对 GPO 的最后一次写入。