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¶
isset
和 isnotset
可用于测试信誉度"成员资格"
iprep:<检测方向>,<分类>,<isset|isnotset>
检测方向
: <any|src|dst|both>
分类
: 分类简称
要测试IP是否属于iprep集合,可使用 isset
。其作用等同于 >=,0
语句。
drop ip $HOME_NET any -> any any (
sid:1;)在此示例中,与 known-bad-hosts
中有分值的任何IP的通信都将被阻断。
isnotset
可用于测试IP是否不属于该集合。
drop ip $HOME_NET any -> any any (
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;)
在每个流方向上只会被检查一次。