1. app-layer-protocol
检测匹配应用层协议。
语法:
app-layer-protocol:[!]<protocol>;
示例:
app-layer-protocol:ssh;
app-layer-protocol:!tls;
app-layer-protocol:failed;
特殊值'failed'可用于匹配协议检测失败的流。如果Suricata不知道协议或某些“放弃”条件发生,就会发生这种情况。
1.1 ''放弃''条件
(1)两边都经过检查,没有找到匹配
(2)A侧检测失败,B侧没有流量(如:FTP数据通道)
(3)A侧检测失败,B侧数据很少,无法确定
2.app-layer-event
匹配App Layer Parsers和协议检测引擎生成的事件。
语法:
app-layer-event:<eventname>;
示例:
app-layer-event:applayer_mismatch_protocol_both_directions;
app-layer-event:http.gzip_decompression_failed;
2.1 Protocol Detection
2.1.1 applayer_mismatch_protocol_both_directions
toserver和toclient方向有不同的协议。例如,客户端将HTTP与SSH服务器通信。
2.1.2 applayer_wrong_direction_first_data
Suricata中的一些协议实现具有关于第一数据方向的要求。HTTP解析器就是一个例子。
2.1.3 applayer_detect_protocol_only_one_direction
协议检测仅在一个方向上成功。对于FTP和SMTP,这都是可能的。
2.1.4 applayer_proto_detection_skipped
由于''放弃''条件,跳过了协议检测
网友评论