Cisco Cisco Firepower Management Center 2000 User Guide
36-84
FireSIGHT 系统用户指南
第 36 章 了解和编写入侵规则
了解规则中的关键字和参数
使用
flowbits
关键字时,请注意:
•
使用
setx
运算符时,指定的状态只能属于指定的组,而不能属于任何其他组。
•
可以多次定义
setx
操作符,每次用一个实例指定不同的状态和同一个组。
•
如果使用
setx
运算符并指定了某个组,则不能对该指定的组使用
set
、
toggle
或
unset
运算符。
•
isset
和
isnotset
运算符会对指定状态进行评定,无论该状态是否在组中。
•
保存入侵策略、重新应用入侵策略以及应用访问控制策略时 (不管访问控制策略是引用一个入
侵策略还是多个入侵策略),如果您启用包含未指定组的
侵策略还是多个入侵策略),如果您启用包含未指定组的
isset
或
isnotset
运算符的一个规
则,而且您不会为对应的状态名称和协议启用至少一个会影响
flowbits
分配的规则 (
set
、
setx
、
set
、
toggle
),那么,将会启用会影响对应状态名称的
flowbits
分配的所有规则。
•
保存入侵策略、重新应用入侵策略以及应用访问控制策略时 (不管访问控制策略是引用一个
入侵策略还是多个入侵策略),如果您启用包含已指定组的
入侵策略还是多个入侵策略),如果您启用包含已指定组的
isset
或
isnotset
运算符的一个
规则,系统还将会启用会影响
flowbits
分配 (
set
、
setx
、
unset
、
toggle
)且定义对应组名
称的所有规则。
使用 state_name 的 flowbits 示例
以 Bugtraq ID #1110 中所述的 IMAP 漏洞为例。该漏洞存在于 IMAP 的实现中,尤其是在 LIST、
LSUB、 RENAME、 FIND 和 COPY 命令中。但是,要想利用该漏洞,攻击者必须登录到 IMAP
服务器。由于来自 IMAP 服务器的登录确认及紧随着而来的漏洞必定存在于不同的数据包中,因
此,难以构建非基于流量的规则来捕获该漏洞。使用
LSUB、 RENAME、 FIND 和 COPY 命令中。但是,要想利用该漏洞,攻击者必须登录到 IMAP
服务器。由于来自 IMAP 服务器的登录确认及紧随着而来的漏洞必定存在于不同的数据包中,因
此,难以构建非基于流量的规则来捕获该漏洞。使用
flowbits
关键字可以构建一系列规则来追踪
用户是否登录到 IMAP 服务器;如果是,将会在检测到其中一项攻击时生成事件。如果用户未登
录,则攻击不能利用该漏洞,且不会生成事件。
录,则攻击不能利用该漏洞,且不会生成事件。
以下两个规则分片说明了此示例。第一个规则分片查找来自 IMAP 服务器的 IMAP 登录确认:
alert tcp any 143 -> any any (msg:"IMAP login"; content:"OK
LOGIN"; flowbits:set,logged_in; flowbits:noalert;)
下图说明了上述规则分片中
flowbits
关键字的影响:
请注意,
flowbits:set
设置
logged_in
状态,
flowbits:noalert
则抑制警报,因为 IMAP 服务器
上可能会出现许多无恶意的登录会话。
以下规则分片查找 LIST 字符串,但不生成事件,除非由于会话中某个之前的数据包而设置了
logged_in 状态:
logged_in 状态:
alert tcp any any -> any 143 (msg:"IMAP LIST";
content:"LIST"; flowbits:isset,logged_in;)
下图说明了上述规则分片中
flowbits
关键字的影响: