新 IPS 特征防误报
新 IPS 特征防误报
IPS 特征过滤器可以通过 Hold Time 延迟新特征的阻断动作,也可以通过 CVE 编号或 CVE 通配模式自动包含相关 IPS 特征。该功能适合在特征库更新后降低误报影响,或在已知 CVE 应急防护时快速构建定向 IPS Sensor。
重要
该功能从 FortiOS 6.4.2 开始支持。signature-hold-time 的常见最大值为 7 天;在 FortiOS 7.6.3 中,最大值提高到 21 天,格式仍为 ##d##h。
Signature Hold Time
signature-hold-time 用于设置 FortiGate 在收到 FortiGuard IPS 特征库更新后,对新特征保持监控状态的时间。在启用 VDOM 的环境中,该设置在对应 VDOM 中生效。
工作方式如下:
- Hold Time 期间,新特征的模式为 monitor。
- 流量命中新特征时,IPS 日志中会出现
signature is on hold,动作为检测而不是按特征动作阻断。 - Hold Time 到期后,新特征恢复正常启用,并按 IPS Sensor 中配置的动作或特征默认动作处理流量。
- 如果 IPS Sensor 中直接按特征 ID 指定了某个特征,
override-signature-hold-by-id会影响该特征是否仍受 Hold Time 约束。
配置 Hold Time
将 IPS 新特征保持在监控状态 3 天 12 小时:
config system ips
set signature-hold-time 3d12h
set override-signature-hold-by-id enable
endoverride-signature-hold-by-id 的作用如下:
| 配置 | 说明 |
|---|---|
enable | 如果 IPS Sensor 中按特征 ID 显式引用了某个特征,即使该特征仍处于 Hold Time,也允许按配置动作触发。 |
disable | 处于 Hold Time 的特征不会触发阻断动作,继续以 monitor 方式工作。 |
如果希望所有新特征都经过监控期后再生效,可以将 override-signature-hold-by-id 设置为 disable。如果管理员已经明确把某个新特征按 ID 加入 IPS Sensor,并希望它立即按配置动作生效,则使用 enable。
查看处于 Hold Time 的特征
查看指定 VDOM 中某个规则 ID 下仍处于 Hold Time 的特征:
FortiGate # diagnose ips signature on-hold root 29844 Rule: 29844, attack_id: 58886, last updated: 20260610 Rule: 29844, attack_id: 59517, last updated: 20260610 Rule: 29844, attack_id: 60105, last updated: 20260610查看指定 VDOM 中所有处于 Hold Time 的特征:
FortiGate # diagnose ips signature on-hold root Rule: 17541, attack_id: 20899, last updated: 20260610 Rule: 17557, attack_id: 20934, last updated: 20260610 Rule: 17559, attack_id: 20932, last updated: 20260610 ...命中新特征但仍处于 Hold Time 时,日志中可以看到类似信息:
date=2026-06-18 time=10:15:00 logid="0419016384" type="utm" subtype="ips" eventtype="signature" level="alert" vd="root" severity="info" srcip=192.0.2.10 dstip=198.51.100.20 srcintf="port2" dstintf="port1" action="detected" proto=6 service="HTTP" policyid=1 attack="Eicar.Virus.Test.File" attackid=29844 profile="ips-monitor" msg="file_transfer: Eicar.Virus.Test.File, (signature is on hold)"
CVE Pattern 过滤
cve 过滤条件用于按照 CVE 编号匹配 IPS 特征。可以配置完整 CVE ID,也可以配置 CVE 年份模式,让 FortiGate 自动包含带有对应 CVE 标签的 IPS 特征。
例如配置一个基于 CVE 的 IPS Sensor:
创建 IPS Sensor,将命中
CVE-2010-0177的 IPS 特征设置为block,将命中CVE-2017相关的 IPS 特征设置为reset。config ips sensor edit "cve-protect" set comment "Match IPS signatures by CVE" config entries edit 1 set cve "cve-2010-0177" set status enable set log-packet enable set action block next edit 2 set cve "cve-2017" set status enable set action reset next end next end在防火墙策略中调用该 IPS Sensor。
config firewall policy edit <policy_id> set utm-status enable set ips-sensor "cve-protect" next end查看 IPS 日志确认命中结果,带有
CVE-2010-0177标签的特征命中后会被阻断并记录日志。date=2026-06-18 time=10:30:00 logid="0419016384" type="utm" subtype="ips" eventtype="signature" level="alert" vd="root" severity="critical" srcip=192.0.2.10 dstip=198.51.100.20 srcintf="port2" dstintf="port1" action="dropped" proto=6 service="HTTPS" policyid=1 attack="Mozilla.Firefox.PluginArray.NsMimeType.Code.Execution" attackid=20853 profile="cve-protect" msg="web_client: Mozilla.Firefox.PluginArray.NsMimeType.Code.Execution," crscore=50 craction=4096 crlevel="critical"
注意事项
- Hold Time 可以降低新特征误报造成的业务中断风险,但监控期内相关特征不会按阻断动作处理流量,需要结合 IPS 日志评估风险。
- 面向互联网暴露的服务器或高危 CVE 应急场景,不建议设置过长的 Hold Time;必要时可以直接按特征 ID 或 CVE 建立更明确的 IPS Sensor。
- 使用
cve年份模式时,匹配范围可能较大,建议结合保护对象、协议、服务和策略范围控制影响面。 - CVE 过滤依赖 IPS 特征中的 CVE 标签。并非所有 IPS 特征都一定带有 CVE 信息,未带 CVE 标签的特征不会被该条件匹配。