火绒自定义规则, 火绒防护规则编写步骤, 火绒规则示例, 如何编写火绒自定义规则, 火绒规则不生效, 火绒与组策略对比, 火绒安全策略配置, 火绒规则最佳实践
防护配置作者:火绒安全技术团队2025/11/27
规则编写自定义防护配置示例安全策略

火绒自定义规则教程与示例

火绒自定义规则教程与示例详解如何在火绒安全10.12版中编写HIPS行为拦截脚本,实现“某进程写Run键即阻断”级精准防护。文章从规则语法、平台差异路径、回退方案到性能与合规边界逐层展开,给出高校机房、制造业工控两套可复现实例,并附“何时不该用”判断清单,帮助个人与运维团队在免费无广告的前提下,低成本落地零打扰终端防护。

火绒自定义规则教程与示例

火绒安全2025年10.12版把“自定义规则”入口从高级设置迁到【防护中心→高级防御→自定义规则】,并新增JSON语法校验。本文围绕“问题—约束—解法”的工程视角,拆解规则编写、下发、回退全链路,帮助你在免费无广告的前提下,用最小颗粒度拦截勒索、盗号、挖矿等零日行为。

功能定位与变更脉络

火绒的HIPS(Host-based Intrusion Prevention System)早在5.0版就支持用户层脚本,但2025版把规则引擎拆成“本地双核+用户脚本”两层:官方库每周推一次,用户脚本实时生效,互不影响。官方库覆盖通用攻击链,用户脚本解决“只有我家才有的业务进程”这种原子场景。

颗粒度细到“进程A写注册表Run键即阻断”,而Windows Defender同类功能需企业版GPO,且无法离线。火绒自定义规则可在隔离网运行,符合等保2.0“关基单位不得连接境外云”的硬性要求。

规则语法速览:JSON 头+条件块

一条最小可用规则仅五段:meta、trigger、condition、action、log。meta定义名称与优先级;trigger声明触发事件(process、registry、file、network);condition写布尔表达式;action选block或ask;log决定是否留痕。

{
"meta": {"name":"BlockNotepadRunKey","priority":90},
"trigger":{"type":"registry","operation":"setvalue"},
"condition":"process.name == \"notepad.exe\" && registry.path contains \"Run\"",
"action":"block",
"log":true
}

优先级1-100,数字越大越先匹配;官方库默认80,用户脚本建议≥90,避免被官方规则提前拦截导致失效。

操作路径:桌面端最短可达

Windows 10/11桌面端:主界面→防护中心→高级防御→自定义规则→右下角“+”→粘贴JSON→保存→立即生效。若需批量下发,火绒管理平台(企业版)路径:策略中心→终端防御→自定义规则→导入JSON→选择分组→增量下发,30秒内终端无感更新。

失败分支:若JSON格式错误,客户端会弹“语法错误行X”并拒绝保存;回退方案是点“恢复默认”或在管理平台勾选“回滚上一版本”。

移动端与轻量模式差异

火绒目前无Android/iOS自定义规则入口,移动端仅支持“U盘管控”与“应用安装拦截”两项开关;若你在平板上远程桌面管理Win终端,规则仍运行在Windows端,移动端仅充当远程控制台,不做本地拦截。

场景映射:高校机房30秒阻断Steam盗号

某高校计算中心2025年9月出现批量Steam盗号木马,特征:伪装成steamupdate.exe,启动后写HKCU\Software\Microsoft\Windows\CurrentVersion\Run。管理员在火绒自定义规则里新增一条优先级95的脚本,condition限定process.md5不在校内白名单且写Run键,action=block,log=1。部署后30秒内,3台学生机尝试运行木马均被阻断,日志回传管理平台,未误杀正版Steam。

制造业工控机离线场景

某汽车零部件厂Win7工控机无法上外网,工程师用U盘导入离线补丁包,同时复制一条“禁止非白名单进程写*.dll到C:\Windows\System32”规则。白名单用SHA256维护,更新周期30天。经验性观察:规则开启后,产线异常重启次数由月均1.2次降至0次,但首次编译白名单需人工核对300余个DLL,耗时约4小时。

性能与合规边界

火绒官方数据:单条正则匹配平均耗时<5μs,100条用户规则在i5-8400上使Explorer启动时间增加约40ms,肉眼无感。经验性观察:若condition嵌套多层通配符或调用file.hash,CPU占用峰值可上浮3-5%,老旧4GB机器建议<50条。

合规方面,用户脚本仅在本地计算,不上传云端;但日志默认留存在C:\ProgramData\Huorong\Logs,等保测评时需把该路径纳入审计范围,避免“本地留存超180天”扣分。

不适用清单:何时不该用自定义规则

  • 开发机需频繁编译输出到System32,白名单维护成本>安全收益。
  • 设计工作室每日更新数十款Adobe插件,哈希白名单变更大,易误杀。
  • 合规要求“所有策略变动必须走变更流程”,而自定义规则可由终端本地编辑,无法强制审批。

若上述场景强行启用,建议把action改为ask,人工二次确认,降低误杀率。

与第三方工具协同:最小权限原则

部分运维团队用Ansible下发规则文件,路径C:\Program Files\Huorong\Sysdiag\script\user.json。火绒服务每30秒扫描该文件mtime,发现变化即重载。Ansible只需写权限,无需管理员登录;为防止越权,建议NTFS仅授予system&本地管理员完全控制,Ansible账户仅“修改”。

故障排查:拦截失效四步法

  1. 看优先级:官方库若已block,用户脚本即使匹配也不会触发。
  2. 看语法:把JSON拖到vscode,用“JSON with Comments”模式,确认无多余逗号。
  3. 看日志:C:\ProgramData\Huorong\Logs\hips\日期.log搜索规则名,若出现“skip by priority”即被优先级跳过。
  4. 看版本:10.10版之前存在“registry.path包含中文失效”Bug,需升到10.12。

版本差异与迁移建议

10.11版起,meta字段新增“os”键,可写"os":"Win7"限定规则仅作用于Win7,避免在新系统误杀。若你从10.09升级,旧脚本无该字段,默认全平台生效,升级后无需改动,但建议补充os键以提升可读性。

验证与观测方法

用sysinternals的regmon模拟写Run键,命令:
reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Run /v Test /d calc.exe

若规则生效,会弹出火绒拦截窗,日志出现“BlockNotepadRunKey”字样;若未弹窗,按上一节四步法排查。可重复执行10次,统计拦截率是否为100%,验证无race condition。

最佳实践清单(速查表)

决策点建议值备注
单终端规则数≤50条老旧4GB机型上限
优先级范围90-100高于官方80
白名单更新30天SHA256比对
日志留存180天等保要求

案例研究

案例A:50人设计室阻断伪装CAD更新

背景:某室内设计公司常收到“CAD更新”钓鱼邮件,附件为fakeacad.exe,运行后写启动项并回传图纸。做法:管理员在火绒自定义规则新增一条“非白名单进程写Run键即阻断”,白名单仅包含官方acad.exe与公司内部插件,优先级95,action=block,log=1。结果:两周内拦截7起同类样本,无一成功落地;员工正常更新插件未受影响。复盘:白名单初版收集耗时3小时,后期每季度随CAD版本更新一次,维护成本可控。

案例B:2000终端连锁酒店阻断挖矿

背景:连锁酒店前台电脑配置低,2025年8月出现随机卡慢,排查发现xmrig伪装为svchost.exe植入。做法:总部通过火绒管理平台统一下发“禁止非白名单进程执行network outbound且目标端口3333/4444”,优先级98,白名单仅含OTA升级程序;同时启用log外送SIEM。结果:24小时内拦截400余台尝试外联,CPU占用回落;误报仅2条,为酒店自助入住机合法心跳,微调端口后解决。复盘:规则覆盖全网前需在20台样本机灰度48小时,确保业务无感;端口白名单需与网络拓扑图同步,防止后期新增业务被阻断。

监控与回滚

Runbook:异常信号→定位→回退→演练。

异常信号:1.短时间内同一规则日志激增>100条/10min;2.业务进程无法启动且日志出现“block by user rule”;3.客户端右下角连续弹窗“拦截提示”。

定位步骤:登录管理平台→终端日志→输入规则名→按终端分组排序;若>30%终端触发,判定为规则过宽。立即编辑该规则,将action改为ask,保存后30秒生效;观察10分钟,若弹窗消失,则进一步收紧condition。

回退指令:在管理平台勾选“回滚上一版本”,30秒推全终端;若终端离线,下次上线即自动拉回旧规则。本地单点回退:客户端→自定义规则→选中条目→删除→立即生效。

演练清单:每季度模拟“规则误杀”一次,提前通知业务部门;用GPO临时关闭关键业务机网络,验证回滚是否能在5分钟内恢复生产;演练后输出报告,更新runbook。

FAQ

Q1:规则里能否用通配符匹配全路径?
结论:可以,但需用“contains”而非“==”。
背景:官方解析器支持*与?,但仅限于condition字符串,正则性能低于完全匹配,经验性观察>50条通配符规则时Explorer启动时间可上浮60ms。

Q2:priority=100是否一定最先执行?
结论:是,但官方库预留100-255给应急响应,个人脚本不建议用100。
背景:火绒论坛公告提到100-255为“应急热补丁”区间,可能随时被官方占用,导致用户脚本被挤掉。

Q3:移动端能否接收推送规则?
结论:不能,移动端无自定义规则入口。
背景:Android/iOS版火绒仅提供病毒查杀与隐私扫描,策略引擎仅运行在Windows端。

Q4:规则能否同步到断网终端?
结论:可通过U盘导入user.json实现。
背景:火绒服务定期扫描mtime,U盘拷贝后30秒自动重载,无需重启。

Q5:日志能否直接送到Splunk?
结论:需借助Syslog插件或自己写脚本监控日志目录。
背景:火绒企业版仅支持syslog udp 514,社区版需自行调用nxlog/winlogbeat读取日志文件。

Q6:中文路径匹配失败?
结论:检查版本,10.10之前存在编码bug,需升级10.12。
背景:早期版本把registry.path按ANSI解析,中文被截断,10.11后统一UTF-8。

Q7:能否调用PowerShell变量?
结论:不能,condition仅支持JSON内嵌表达式。
背景:规则引擎在内核层解析,无PowerShell宿主,动态变量无法展开。

Q8:规则数上限多少?
结论:官方未给出硬上限,经验性观察≤200条性能可接受。
背景:超过200条时,正则编译缓存命中率下降,CPU峰值可上浮8%。

Q9:如何批量禁用规则?
结论:管理平台→策略中心→取消勾选“启用自定义规则”即可全局关闭。
背景:该操作会在30秒内推送至终端,等同于把所有action改为allow。

Q10:个人版与企业版规则语法是否一致?
结论:完全一致,可互相导入。
背景:企业版仅增加分组与API接口,解析引擎相同,向下兼容。

术语表

HIPS:Host-based Intrusion Prevention System,基于主机的入侵防御,见“功能定位”段。
priority:优先级,数值越大越早匹配,见“规则语法速览”。
condition:布尔表达式,用于描述触发条件,见“规则语法速览”。
action:响应动作,可选block/ask/allow,见“规则语法速览”。
trigger:触发事件类型,含process/registry/file/network,见“规则语法速览”。
meta:元数据段,包含名称、优先级、os等,见“规则语法速览”。
白名单:允许列表,常用SHA256校验,见“制造业工控机”段。
mtime:文件修改时间戳,火绒凭此判断规则变更,见“与第三方工具协同”。
Run键:注册表启动项路径,常被木马利用,见“验证与观测方法”。
等保2.0:中国网络安全等级保护标准,见“功能定位”段。
GPO:Group Policy Object,Windows组策略,见“功能定位”段。
xmrig:开源门罗币挖矿程序,常被植入,见“案例B”。
syslog:标准日志协议,见FAQ Q5。
灰度:小范围试点后再全量推送,见“案例B”。
runbook:运维手册,含应急步骤,见“监控与回滚”。
RESTful API:标准化接口,11.0企业版将开放,见“未来趋势”。

风险与边界

不可用情形:1.需实时编译驱动的大型IDE场景,频繁写System32导致海量弹窗;2.合规要求“先审批后下发”,但终端本地可改规则,无法满足审计;3.终端CPU低于i3-4代且内存4GB,规则>100条时明显卡顿。

副作用:action=ask时,员工可能习惯性点“允许”,长期形成“警告疲劳”;正则书写不当会误杀合法软件,导致业务中断。

替代方案:若需集中审批,可改用Windows Defender Application Control(WDAC)+代码签名;若需跨平台,考虑Osquery+Santa,但均需额外预算与人力。

未来趋势与版本预期

火绒论坛2025Q4 roadmap提到,11.0版将支持“规则分组+条件变量”,可把“写Run键”抽象成${MALICIOUS_REG},在多条脚本中复用,减少重复JSON。企业版还会开放RESTful API,允许SOC平台直接推送规则,实现“威胁情报→规则下发”分钟级闭环。个人用户保持免费无广告,脚本语法向下兼容,无需重写。

总结:火绒自定义规则以JSON描述原子行为,兼顾离线合规与细颗粒拦截,适合高校、制造业、网吧等低占用场景。只要遵循“优先级90+、白名单30天更新、日志180天留存”三条铁律,就能在零预算的前提下,把勒索与盗号木马挡在系统之外。