10.46. IP信誉度关键字

IP信誉度可通过新的规则关键字"iprep"在规则中使用。

关于IP信誉度的更多信息,请参阅 IP 信誉度配置IP信誉格式

10.46.1. iprep

iprep指令用于匹配主机的IP信誉度信息。

iprep:<检测方向>,<分类>,<运算符>,<信誉度分值>

检测方向: <any|src|dst|both>

分类: 分类简称

运算符: <, <=, >, >=, =

信誉度分值: 0-127

示例:

alert ip $HOME_NET any -> any any (msg:"IPREP 内部主机与CnC服务器通信"; flow:to_server; iprep:dst,CnC,>,30; sid:1; rev:1;)

$HOME_NET 中的系统作为客户端与CnC分类中信誉度分值大于30的任何IP通信时,此规则将触发告警。

10.46.1.1. isset 和 isnotset

issetisnotset 可用于测试信誉度"成员资格"

iprep:<检测方向>,<分类>,<isset|isnotset>

检测方向: <any|src|dst|both>

分类: 分类简称

要测试IP是否属于iprep集合,可使用 isset 。其作用等同于 >=,0 语句。

drop ip $HOME_NET any -> any any (iprep:src,known-bad-hosts,isset; sid:1;)

在此示例中,与 known-bad-hosts 中有分值的任何IP的通信都将被阻断。

isnotset 可用于测试IP是否不属于该集合。

drop ip $HOME_NET any -> any any (iprep:src,trusted-hosts,isnotset; sid:1;)

在此示例中,没有信任分值的主机的通信将被阻断。

10.46.1.2. 与纯IP规则的兼容性

"iprep"关键字与"纯IP"规则兼容。这意味着如下规则:

alert ip any any -> any any (msg:"IPREP 高价值CnC"; iprep:src,CnC,>,100; sid:1; rev:1;)

在每个流方向上只会被检查一次。