必须用AppLocker构建“默认拒绝+精准白名单”策略:先确认系统为Win10/11企业版或Server2012+,启用Application Identity服务;创建默认发布者规则但暂不强制;通过审核模式收集3–7天日志,再基于发布者、哈希或限定路径添加精准允许规则,最后启用强制执行并验证。

要让Windows电脑只运行你明确批准的软件,彻底阻止所有未授权程序启动,必须用AppLocker构建“默认拒绝+精准白名单”策略,而不是依赖黑名单或简单路径限制——任何遗漏都可能导致系统崩溃或业务中断。
确认系统资格与启用基础服务
按 Win+R 输入 winver,确认系统为 Windows 10/11 企业版、教育版,或 Windows Server 2012 及以上标准版/数据中心版;【家庭版和专业版完全不支持AppLocker,强行操作无效】
打开 services.msc,找到 Application Identity 服务,将其启动类型设为“自动”,并手动启动该服务——【此服务未运行时,AppLocker所有规则均不生效】
域环境使用 GPMC 编辑域策略;单机用户打开 gpedit.msc 进入本地组策略编辑器。
建立可信基线:创建并禁用默认发布者规则
依次展开:计算机配置 → 策略 → Windows 设置 → 安全设置 → 应用程序控制策略 → AppLocker → 可执行规则
右键“可执行规则”→“创建默认规则”,自动生成三条发布者规则:分别放行 %WINDIR%\*、%PROGRAMFILES%\*、%PROGRAMFILES(X86)%\* 下由微软签名的程序
这三规则是系统存活底线,但它们默认处于“未启用”状态。双击每条规则→在“常规”选项卡中取消勾选“配置规则强制执行”,确保策略当前完全不干预运行行为——跳过这步直接启用会立即导致桌面空白、任务管理器打不开、甚至无法登录。
分阶段部署:先开启审核模式收集真实行为
在AppLocker根节点(即“AppLocker”项)右键→“属性”,对“可执行规则”“脚本规则”“Windows 安装程序规则”全部设为“仅审核”
让终端用户正常使用3–7天:打开微信、运行财务系统、双击Excel附件、执行PowerShell脚本、启动内部Java工具……所有操作都会被记录,但不会被拦截
打开事件查看器→应用程序和服务日志 → Microsoft → Windows → AppLocker → EXE and DLL,筛选事件ID 8004(被允许)和8003(被阻止),重点关注后者——这些就是你后续必须显式放行的合法程序
让 Windows 桌面程序在开机时静默自启并隐藏到系统托盘。特别适用于 Flutter、Electron 等无视 VBS/ProcessStartInfo 窗口样式、难以隐藏的顽固应用。提供「VBS 启动器 + Python ctypes/Win32 API」的隐藏窗口方案,可稳定把窗口收进托盘且不闪控制台。
导出日志后,用 PowerShell 命令 Get-WinEvent -FilterHashtable @{LogName='Microsoft-Windows-AppLocker/EXE and DLL'; ID=8003} | Group-Object -Property 'Message' | Sort-Object Count -Descending 快速定位高频被拦路径
构建生产级白名单规则
方法一:优先用发布者规则添加业务软件
右键“可执行规则”→“创建新规则”→选择“允许”→下一步→选“发布者”→点击“浏览”,指向已安装的主程序(如 C:\Program Files\Tencent\WeChat\WeChat.exe)→AppLocker自动提取证书发行者、产品名、版本号,后续同签名更新自动放行
方法二:对无数字签名的内部工具,用哈希规则锁定
右键“可执行规则”→“创建新规则”→“允许”→“文件哈希”→“浏览”选中该 EXE 文件→系统生成唯一 SHA256 值,每次文件变更都会触发拦截,确保版本可控
方法三:路径规则仅作补充,且必须限定死目录
例如添加规则:C:\MyERP\Client\*.exe,但严禁使用 C:\*\*.exe 或 D:\**\*.exe——通配符越宽,越容易被恶意程序利用合法路径绕过
注意:脚本类(.ps1、.bat、.cmd、.vbs)必须在“脚本规则”中单独配置;Windows 安装程序(.msi、.msp)需在“Windows 安装程序规则”中另建规则;DLL 文件若被非白名单进程加载,也会被阻止——必要时需为关键软件补全其依赖 DLL 规则
上线前最后检查与启用强制执行
第一步:确认所有规则应用范围正确
每条规则右键→“属性”→“安全”选项卡,检查是否已分配给目标安全组(如“Finance-Users”),而非留空或误配为“Domain Admins”
第二步:导出当前策略备份
右键AppLocker根节点→“所有任务”→“导出策略”,保存为 XML 文件——万一启用后系统瘫痪,可立即导入回滚
第三步:启用强制执行
回到AppLocker根节点属性页,将“可执行规则”“脚本规则”“Windows 安装程序规则”全部从“仅审核”改为“已启用”
第四步:刷新并验证
管理员命令提示符下执行 gpupdate /force,然后重启电脑;登录后尝试运行白名单外程序(如从U盘双击 test.exe),应立即弹出“此操作已被组织策略阻止”提示










