IP信誉度关键字 ===================== IP信誉度可通过新的规则关键字"iprep"在规则中使用。 关于IP信誉度的更多信息,请参阅 :doc:`/reputation/ipreputation/ip-reputation-config` 和 :doc:`/reputation/ipreputation/ip-reputation-format`。 iprep ----- iprep指令用于匹配主机的IP信誉度信息。 :: iprep:<检测方向>,<分类>,<运算符>,<信誉度分值> 检测方向: ``分类``: 分类简称 ``运算符``: <, <=, >, >=, = ``信誉度分值``: 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通信时,此规则将触发告警。 isset 和 isnotset ~~~~~~~~~~~~~~~~~~ ``isset`` 和 ``isnotset`` 可用于测试信誉度"成员资格" :: iprep:<检测方向>,<分类>, ``检测方向``: ``分类``: 分类简称 要测试IP是否属于iprep集合,可使用 ``isset`` 。其作用等同于 ``>=,0`` 语句。 .. container:: example-rule drop ip $HOME_NET any -> any any (:example-rule-options:`iprep:src,known-bad-hosts,isset;` sid:1;) 在此示例中,与 ``known-bad-hosts`` 中有分值的任何IP的通信都将被阻断。 ``isnotset`` 可用于测试IP是否不属于该集合。 .. container:: example-rule drop ip $HOME_NET any -> any any (:example-rule-options:`iprep:src,trusted-hosts,isnotset;` sid:1;) 在此示例中,没有信任分值的主机的通信将被阻断。 与纯IP规则的兼容性 ~~~~~~~~~~~~~~~~~~~~~~~~~~ "iprep"关键字与"纯IP"规则兼容。这意味着如下规则: :: alert ip any any -> any any (msg:"IPREP 高价值CnC"; iprep:src,CnC,>,100; sid:1; rev:1;) 在每个流方向上只会被检查一次。