6.2. 关键字标记

元设置对Suricata的检查没有影响;它们确实对Suricata报告事件的方式有影响。

6.2.1. 消息(message)

关键字msg提供有关签名和可能警报的文本信息。

消息的格式为:

msg: "some description";

实例:

msg:"ATTACK-RESPONSES 403 Forbidden";
msg:"ET EXPLOIT SMB-DS DCERPC PnP bind attempt";

要继续上一章的示例,这是实际规则中的关键字in action:

删除tcp$home_net any->$external_net any (msg:"ET TROJAN Likely Bot Nick in IRC (USA +..)"; 流:已建立,到服务器;流位:isset,是协议irc;内容:“nick”;pcre:“/nick”。 USA. [0-9] 3,/i”;参考:url,doc.emergingthreats.net/2008124;classtype:特洛伊木马活动;sid:2008124;rev:2;)

小技巧

将签名的第一部分大写并显示签名的类别是惯例。

这也是惯例 msg 成为签名中的第一个关键字。

注解

必须在msg中转义以下字符: ; \ "

6.2.2. sid(签名ID)

关键字sid赋予每个签名自己的id。这个id用数字表示。sid的格式为:

sid:123;

签名中的sid示例:

丢弃tcp$home_net any->$external_net any(msg:“et-trojan-likely-bot-nick in-irc(usa+..)”;流:已建立,到_-server;流位:isset,is _-proto_-irc;内容:“nick”;pcre:“/nick”。 USA. [0-9] 3,/i”;参考:url,doc.emergingthreats.net/2008124;classtype:特洛伊木马活动; sid:2008124; 版次:2;)

小技巧

按照惯例,签名 sid 作为最后一个关键字提供(如果存在 rev )签名。

6.2.3. 版次(版次)

sid关键字几乎每次都伴随rev。Rev代表签名的版本。如果修改了签名,则签名编写器将增加Rev的数量。版本格式为:

rev:123;

签名中的版次示例:

丢弃tcp$home_net any->$external_net any(msg:“et-trojan-likely-bot-nick in-irc(usa+..)”;流:已建立,到_-server;流位:isset,is _-proto_-irc;内容:“nick”;pcre:“/nick”。 USA. [0-9] 3,/i”;参考:url,doc.emergingthreats.net/2008124;classtype:特洛伊木马活动;sid:2008124; rev:2;

小技巧

这是一个惯例,sid在rev之前,两者都是所有关键字中的最后一个。

6.2.4. gid(组ID)

gid关键字可用于为不同的签名组提供另一个ID值(如在sid中)。Suricata默认使用gid 1。可以修改这个。它将被改变是不常见的,改变它没有技术上的影响。您只能在警报中注意到它。

在fast.log警报中的gid示例。在这部分 [1:2008124:2] ,1是gid(2008124是sid,2是rev)。

10/15/09-03:30:10.219671 [**] [1:2008124:2] ET TROJAN Likely Bot Nick in IRC (USA +..) [**] [Classification: A Network Trojan was Detected] [Priority: 3] {TCP} 192.168.1.42:1028 -> 72.184.196.31:6667

6.2.5. 类别

ClassType关键字提供有关规则和警报分类的信息。它由一个短名称、一个长名称和一个优先级组成。例如,它可以判断一个规则只是信息性的还是关于黑客等的。对于每个类类型,classification.config都有一个优先级,该优先级将在规则中使用。

类类型定义示例:

config classification: web-application-attack,Web Application Attack,1
config classification: not-suspicious,Not Suspicious Traffic,3

现在,当我们在配置中定义了这一点时,我们可以在规则中使用类类型。具有ClassType Web应用程序攻击的规则将被分配优先级为1,并且警报将包含“Web应用程序攻击”:

类别

警觉的

优先

Web应用攻击

Web应用攻击

1

不可疑

无可疑交通

3

我们的继续示例还有一个类类型,这是特洛伊木马活动之一:

丢弃tcp$home_net any->$external_net any(msg:“et-trojan-likely-bot-nick in-irc(usa+..)”;流:已建立,到_-server;流位:isset,is _-proto_-irc;内容:“nick”;pcre:“/nick”。 USA. [0-9] 3,/i”;参考:url,doc.emergingthreats.net/2008124; classtype:trojan-activity; sid:2008124;版本:2;)

小技巧

通常,类类型在sid和rev之前,在其余关键字之后。

6.2.6. 参考

引用关键字直接指向有关签名和签名试图解决的问题的信息所在的位置。引用关键字可以在签名中出现多次。这个关键字是为研究签名匹配原因的签名编写者和分析人员设计的。格式如下:

reference: type, reference

对www.info.com的典型参考是:

reference: url, www.info.com

但是,也有几个系统可以用作参考。一个常见的例子是CVE数据库,它为漏洞分配数字。为了防止反复键入同一个URL,可以使用如下内容:

reference: cve, CVE-2014-1234

这将引用http://cve.mitre.org/cgi-bin/cvename.cgi?名称=CVE-2014-1234。所有引用类型都在reference.config配置文件中定义。

我们的继续例子也有一个参考:

丢弃tcp$home_net any->$external_net any(msg:“et-trojan-likely-bot-nick in-irc(usa+..)”;流:已建立,到_-server;流位:isset,is _-proto_-irc;内容:“nick”;pcre:“/nick”。 USA. [0-9] 3,/i”; reference:url,doc.emergingthreats.net/2008124; 类类型:特洛伊木马活动;sid:2008124;版本:2;)

6.2.7. 优先

priority关键字带有一个强制数字值,该值的范围为1到255。数字1到4最常用。优先权更高的签名将首先被检查。最高优先级是1。通常签名已经通过ClassType具有优先级。这可以通过关键字优先级来克服。优先级格式为:

priority:1;

6.2.8. 元数据

metadata关键字允许将其他非功能信息添加到签名中。虽然格式是自由格式的,但建议坚持使用键,值对作为suricata可以在EVE警报中包含这些值。格式为:

metadata: key value;
metadata: key value, key value;

6.2.9. 目标

target关键字允许规则编写器指定警报的哪一侧是攻击的目标。如果指定,则会增强警报事件以包含有关源和目标的信息。

格式为:

target:[src_ip|dest_ip]

如果该值为src_ip,则生成事件中的源ip(json中的src_ip字段)是攻击的目标。如果目标设置为dest_ip,则目标是生成事件中的目标ip。