12. 理解告警信息¶
当出现告警时,关键是要弄清楚其含义。它是严重的吗?相关的吗?还是误报?
要了解更多关于触发规则的信息,查看实际规则总是一个好方法。
在规则中首先要看的是 msg
关键字后面的描述。让我们看一个例子:
msg:"ET SCAN sipscan probe";
"ET" 表示该规则来自 Emerging Threats (Proofpoint) 项目。"SCAN" 表示该规则的目的是匹配某种形式的扫描行为。随后会给出一个或多或少的详细描述。
大多数规则会通过 "reference" 关键字提供更多信息的线索。
考虑以下示例规则:
alert tcp $HOME_NET any -> $EXTERNAL_NET $HTTP_PORTS \
(msg:"ET CURRENT_EVENTS Adobe 0day Shovelware"; \
flow:established,to_server; content:"GET "; nocase; depth:4; \
content:!"|0d 0a|Referer\:"; nocase; \
uricontent:"/ppp/listdir.php?dir="; \
pcre:"/\/[a-z]{2}\/[a-z]{4}01\/ppp\/listdir\.php\?dir=/U"; \
classtype:trojan-activity; \
reference:url,isc.sans.org/diary.html?storyid=7747; \
reference:url,doc.emergingthreats.net/2010496; \
reference:url,www.emergingthreats.net/cgi-bin/cvsweb.cgi/sigs/CURRENT_EVENTS/CURRENT_Adobe; \
sid:2010496; rev:2;)
在这个规则中,reference 关键字指向了3个可以获取更多信息的网址:
isc.sans.org/diary.html?storyid=7747
doc.emergingthreats.net/2010496
www.emergingthreats.net/cgi-bin/cvsweb.cgi/sigs/CURRENT_EVENTS/CURRENT_Adobe
有些规则包含类似 "reference:cve,2009-3958;"
的引用,你可以通过常用的搜索引擎查找该特定 CVE 的详细信息。
这并不总是直截了当的,有时并非所有信息都是公开可用的。通常在签名支持渠道上询问会有所帮助。
在 使用 Suricata-Update 管理规则 中可以找到更多关于规则来源及其文档和支持方法的信息。
在许多情况下,仅查看告警和触发它的数据包是不够的。当使用默认的 Eve 设置时,会有大量元数据被添加到告警中。
例如,如果一个规则触发表明你的 Web 应用程序正在受到攻击,查看元数据可能会显示 Web 应用程序返回了 404 not found
。这通常意味着攻击失败了,但并不总是如此。
并非所有协议都会生成元数据,因此在运行像 Suricata 这样的 IDS 引擎时,通常建议结合全包捕获。使用像 Evebox、Sguil 或 Snorby 这样的工具,可以检查完整的 TCP 会话或 UDP 流。
显然,事件响应涉及的内容远不止这些,但这应该能帮助你入门。