suricata命令和规则语法

Suricata User Guide — Suricata 7.0.1-dev documentation

一、命令行选项

1、常用启动选项

-c <path> 指定配置文件suricata.yaml所在路径
-i <interface> 指定要监控的网卡名称或ip地址
-T 测试配置文件是否正确
-v 设定日志级别,包括-v: INFO -vv: PERF -vvv: CONFIG -vvv:DEBUG
-D 后台启动
-l 设定日志输出目录,将会覆盖配置文件中的default-log-dir:/var/log/suricata 选项,可保持默认
-s <filename> 临时添加一个新的规则文件
​

2、离线分析日志

在suricata启动的时候,可以添加选项来进行离线流量分析,为其指定对应的pcap流量文件即可,参数选项如下:

-r <path> 在pcap离线模式下运行,从pcap文件中读取文件。如果<path>指定了一个目录,则该目录下的所有文件将按照修改时间的顺序进行处理,保持文件之间的流状态。
​
​

此处的离线数据包文件,可以是wireshark、tcpdump、suricata等各类流量监控工具生成的文件。

使用whireshark监听一段流量,记录下404错误,让suricata进行离线分析,运行如下命令:

suricata -c suricata.yaml -r ~/404error.pcap -v   (-v是输出详情)

二、规则基础语法

规则参考文档

8. Suricata Rules — Suricata 7.0.1-dev documentation

1、ip地址规则

可以使用的语法如下:

操作员描述
../..IP范围(CIDR表示法)
异常/否定
[......]分组

如下示例均可用来定义源和目标ip地址

例子意义
!1.1.1.1除了1.1.1.1之外的每个ip地址
![1.1.1.1,1.1.1.2]除了1.1.1.1和1.1.1.2之外的每个ip地址
$HOME_NET您在yaml中的HOME_NET设置
[$EXTERNAL_NET,!$HOME_NET]EXTERNAL_NET而不是HOME_NET
[10.0.0.0/24,!10.0.0.5]10.0.0.0/24中除了10.0.0.5

3、端口规则

例子意义
[80,81,82]端口80、81和82
[80:82]范围从80到82
[1024:]从1024到最高端口号
!80除了80之外的每个端口
[80:100,!99]范围从80到100但不包括99
[1:80,![2,4]]范围为1-80,端口2和4除外

4. Meta keyword元关键字

在suricata规则选项中,针对不同的协议类型有不同的关键字,同时,针对所有协议生效的关键字,称为元关键字。

(1)msg:预警信息的详细描述,也是用来快速了解规则所描述的问题所在

(2)sid:规则编号,用来唯一识别规则项,建议自定义规则也要有一套自己的标准,避免和已有规则重合

(3)rev:规则的修订版本,默认为0,可以自由设定版本号

(4)classtype:规则所属的类的类型,在classification.config中进行定义,同时也包含规则的priority优先级字段

(5)reference: 引用参考,一个url地址或是一条cve编号,如reference: url,www.info.com,reference:cve,CVE-2014-1234

(6)priority:优先级选项,如果明确指定,将覆盖classtype中的优先级设定,范围为1-255,建议设定1-4级,1级别为最高。

(7)metadata:元数据。添加非功能性数据,建议以键值对形式指定。如metadata: key value,key value;

(8)target:允许指定警报的哪一侧是攻击的目标。如果指定,警报事件将被增强以包含有关源和目标的信息。target:[src_ip|dest_ip]

其中(1)(2)是必要的,其他可选。

三、规则示例

alert http any any <> any 80 (msg:"web服务器出现404状态码"; content: "404"; http_stat_code; sid:561001;)
​
alert tcp any any <> any 3306 (msg:"login mysql failed"; content: "Access denied for user"; nocase; sid:561001;)
​
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值