来源:sqrrl公司的《huntpedia》
作为防御者和事件探测器,我们的工作就是让攻击者的生活尽可能的困难。我们这样做的方式是使用网络威胁情报(CTI),在本章中,我们将把它定义为关于敌人的工具、技术、能力和意图的信息。我们大多数人都熟悉在自动检测中使用CTI“feed”,这是一种通常被称为指示器匹配的技术:如果我们在日志中看到与已知的CTI(指示器)片段匹配的内容,就发出警报并让分析人员进行检查。但是CTI不仅仅用于自动检测。如果使用正确,它可以成为你的威胁狩猎策略的关键部分。
一、有效利用CTI
Mandiant(现在是火眼的一个分支)在APT情报大坝上挖了一个大洞,当时他们发布了APT报告,概述了一个通常被称为评论小组的组织。随后,赛门铁克(Symantec)、联邦调查局(FBI)和国土安全部(DHS)等其他机构也发布了少量报告。这是一项扎实的工作,在公共政策领域是一个真正的突破,但我更感兴趣的是报告的七个附录(不包括视频附录)中包含的详细技术信息。
然而,在看到这些指标是如何应用的之后,我意识到一件非常有趣的事情:几乎没有人在有效地使用它们。
我把这句话用粗体写出来,因为它有点挑战性,我相信它会让很多读者感到惊讶。检测指示器的全部意义在于响应它们,如果您能够足够快地响应它们,您就可以在敌人攻击您时拒绝使用这些指示器。然而,并不是所有的指标都是平等的,其中一些指标的价值远远高于其他指标。此外,指标在某些情况下可能比其他情况更有价值。
二、痛苦的金字塔
为了说明指标价值的概念,我创建了我所称的痛苦金字塔。这个简单的图表显示了您可能用来检测对手活动的指示器类型之间的关系,以及当您能够拒绝这些指示器时,会给他们带来多大的痛苦。让我们更详细地研究一下这个图。
2.1指标类型
让我们从简单地调整构成金字塔的指标类型开始:
1. 哈希值:SHA1、MD5或其他类似的哈希值,对应于特定的可疑或恶意文件。通常用于提供对特定恶意软件样本或涉及入侵的文件的唯一引用。
2. IP地址:IPv4或IPv6地址。在大多数情况下,网络块或CIDR范围也适合这里。
3.域名:可以是域名本身(如“evil.net”),也可以是子域名或子域名(如“This .is.sooooo.evil.net”)。
4. 网络工件:由网络上的敌对活动引起的可观察性。从技术上讲,由于对手的交互而流经网络的每个字节都可能是一个工件,但实际上这实际上意味着那些活动片段可能会将恶意活动与合法用户的活动区分开来。典型的例子可能是URI模式、网络协议中嵌入的C2信息、独特的HTTP用户代理或SMTP Mailer值,等等。
5. 主机工件:由一个或多个主机上的敌对活动引起的可观察性。同样,我们关注的是那些倾向于将恶意活动与合法活动区分开来的事情。它们可以是注册表项,也可以是已知的值,由特定的恶意软件碎片、偶然事件、在特定位置或使用特定名称放置的目录、描述、恶意服务或几乎任何其他独特的东西创建。
6. 工具:对手用来完成任务的软件。大多数情况下,这将是他们带来的东西,而不是可能已经安装在电脑上的软件或命令。这将包括用于创建用于鱼叉式钓鱼的恶意文档的实用程序、用于建立C2或密码破解器的后门或其他基于主机的实用程序,它们可能希望使用postcompromise。
7. 战术、技术和程序(TTPs):敌人是如何完成他们的任务的,从侦察到数据泄露,再到中间的每一步。“鱼叉式钓鱼”是在网络中建立存在的常见TTP。“用木马PDF文件进行鱼叉式钓鱼”或“…如果链接到一个伪装成ZIP的恶意SCR文件,则会是更具体的版本。“转储缓存的身份验证凭据并在散列传递攻击中重用它们”将是TTP。注意,这里我们不是在讨论特定的工具,因为有许多方法可以使PDF武器化或实现传递散列。
三、金字塔的解释
现在我们对每种指标类型有了更好的理解,让我们再来看看金字塔。金字塔最宽的部分是冷色(蓝色和绿色),而较高的层次是温暖的黄色,顶点是红色,所有最热的。宽度和颜色对于理解这些类型的指示器的值都是非常重要的。
3.1散列值
大多数哈希算法计算整个输入的消息摘要,并输出一个固定长度的哈希,该哈希对于给定的输入是惟一的。换句话说,如果两个文件的内容甚至相差一个比特,那么这两个文件的散列值就会完全不同。SHA1和MD5是这类散列最常见的两个例子。
一方面,哈希指示器是您所希望的最精确的指示器类型。具有相同哈希值的两个不同文件的几率非常低,几乎可以忽略这种可能性。另一方面,对文件的任何更改,即使是无关紧要的更改,如在未使用的资源中翻转一个位或在末尾添加一个null,都会导致完全不同的、不相关的散列值。哈希值很容易改变,而且周围有很多哈希值,在很多情况下甚至不值得跟踪它们。
您还可能遇到所谓的模糊哈希,它试图通过计算考虑输入相似性的哈希值来解决这个问题。换句话说,两个只有细微或中等差异的文件将具有本质上相似的模糊哈希值,允许研究者注意它们之间可能的关系。Ssdeep是一个通常用于计算模糊哈希值的工具。尽管这些仍然是散列值,但它们在金字塔的“工具”级别上可能比这里更好,因为它们更抗拒更改和操作。事实上,它们在DFIR中最常见的用途是识别已知工具或恶意软件的变体,以试图纠正更多静态哈希的缺点。
3.2IP地址
IP地址是最基本的网络指示器。由于缺乏从本地硬盘拷贝的数据并将前门放在一个USB密钥上,为了进行攻击,您几乎必须拥有某种网络连接,而连接意味着IP地址。它位于金字塔最宽的部分附近,因为金字塔有很多。任何合理的先进的对手可以改变IP地址,只要它适合他们,很少的努力。在某些情况下,如果他们正在使用诸如Tor之类的匿名代理服务,他们可能会非常频繁地更改ip,甚至从未注意到或关心过。这就是为什么IP地址在金字塔中是绿色的。如果你不让对手使用他们的一个ip,他们通常可以在不中断步幅的情况下恢复。
3.3域名
在金字塔的更高一级,我们有域名(仍然是绿色的,但是颜色更浅)。改变这些要稍微麻烦一些,因为为了工作,它们必须注册、付费(即使是用偷来的资金)并托管在某个地方。也就是说,有大量的DNS提供商有着宽松的注册标准(其中许多是免费的),所以在实践中改变域名并不难。不过,新域名可能需要一到两天的时间才能在互联网上随处可见,因此这些域名比IP地址更难更改。
3.4网络和主机工件
在金字塔的中间,开始进入黄色区域,我们有网络和主机工件。我们进入了暖色,因为这是我们开始“加热”对手的地方!这是你最终开始对对手产生负面影响的关卡。当您能够检测并响应这个级别的指示器时,您将导致攻击者返回他们的实验室并重新配置和/或重新编译他们的工具。一个很好的例子是,当您发现攻击者的HTTP侦察工具在搜索web内容时使用了一个独特的用户代理字符串(例如,只差一个空格或分号)。或者他们只是写上自己的名字。别笑。这种情况发生!)如果您阻止任何呈现此用户代理的请求,您将迫使它们返回并花费一些时间a)弄清楚您如何检测到它们的侦察工具,b)修复它。当然,修复可能是微不足道的,但至少他们必须花费一些努力来识别和克服您在他们面前设置的障碍。
3.5工具
下一层是“工具”,当然是黄色的。在这个级别,我们将剥夺对手在箭筒中使用一支或多支特殊箭的能力。很有可能发生这种情况,因为我们在检测他们工具的工件方面做得太好了,他们用了太多不同的方法放弃了,不得不要么开发一个新的工具,要么为同样的目的创建一个新的工具。这对您来说是一个巨大的胜利,因为他们必须投入时间在研究(找到一个具有相同功能的现有工具)、开发(如果可能的话创建一个新工具)和培训(弄清楚如何使用该工具并精通它)上。您只是让他们花费了一些时间,特别是如果您能够跨他们的几个工具进行此操作。
一些工具指示符的例子可能包括AV或Yara签名,如果它们能够找到相同文件的变体,即使是适度的更改。具有独特通信协议的网络感知工具可能也适合这个级别,在这个级别中,更改协议需要对原始工具进行大量重写。而且,正如上面所讨论的,模糊哈希可能会落在这个层次上。
3.6战术、技术和程序
最后,在顶端是ttp。当您在这个级别检测和响应时,您是在直接操作对手的行为,而不是针对他们的工具。例如,您检测的是传递哈希攻击本身(可能通过检查Windows日志),而不是它们用来执行这些攻击的工具。从纯有效性的角度来看,这个级别是您的理想。如果你能对对手的ttp做出足够快的反应,你就能迫使他们做最耗时的事情:重新训练和学习新的行为。
让我们再多想想。如果你把这带到逻辑的极端,当你能在对手不同的ttp上这么做会发生什么?你给他们两个选择:
1. 放弃,或者
2. 从零开始重塑自我
如果我是对手,在这种情况下,选项1对我来说可能很有吸引力。
3.7有效利用CTI进行狩猎
既然我们已经涵盖了所有这些背景,我们终于可以将注意力转回APT指标。我说几乎没有人有效地利用它们。我的意思是什么,什么是“有效使用”?
我的意思是,我看到报告中有很多关于域名的讨论。Bro NSM项目的Seth Hall甚至发布了一个整洁的Bro模块,您可以使用它在您的网络流量中发现这些域时自动发出警报。
这些都是正确的,但是社区中几乎所有的报告和讨论都是针对金字塔最低层次的指标的自动检测。当然,这份报告早在大多数公司谈论威胁狩猎之前就出来了,所以这是意料之中的。但是Mandiant APT报告仍然是当今供应商威胁报告的一个模型,因此了解这些CTI报告如何用于自动检测和狩猎(当然,这通常可以转化为自动检测)非常重要。