前言
本文是ATT&CK框架系列文章的第三篇,也是完结篇。相信看过之前文章《初识ATT&CK》和《深度解读ATT&CK框架》的同学,已经对ATT&CK框架有了一定的理解,在之前的文章中我们详细介绍了ATT&CK的由来、各种概念和12项战术,具备了其基础理论知识。所以在本篇文章,美创安全实验室将带大家一起探寻ATT&CK框架的具体使用场景以及实施方式。
ATT&CK的使用场景
ATT&CK是由一项项攻击战术组成的,从表面看虽然ATT&CK是攻击方的“弄潮儿“,但攻防自古本就一体,俗话说“未知功、焉知防”,在充分理解ATT&CK的每一项攻击战术后就可以反推出防守方法。在开展任何防御活动时,利用ATT&CK分类法,参考攻击者及其行为就可以总结出针对其的防御方法。
除此之外,ATT&CK不仅为渗透测试和红蓝对抗提供了理论基础,他还成为了一种攻防双方都认可的一种通用语言。所以我们总结了一些ATT&CK的应用场景,如下:
1. 渗透测试活动
无论是企业提供的安全服务还是红蓝对抗的模拟演习,在渗透测试活动进行到规划或者生成报告的阶段都可以使用ATT&CK框架,以便于形成一种标准的通用语言,规范报告中的行为描述。
2. 防御检测评估
ATT&CK框架可以用于评估组织企业内现有防御方案中的工具、监视和缓解措施。大多数安全团队在研究ATT&CK时,都希望给ATT&CK矩阵中的每项技术都开出能对其检测或预防的控制措施,但是ATT&CK矩阵中的技术通常可以通过多种方式执行。由于某种工具阻止了用另一种形式来采用这种技术,而组织机构已经适当地采用了这种技术,因此攻击者仍然可以成功地采用其他方式来采用该技术,但防御者却没有任何检测或预防措施。
3. 安全运营中心成熟度评估
安全运营中心(Security Operation Center,SOC)可以提供资产自动化盘点、网络攻击测绘、流量威胁感知、泄漏检测、安全编排与自动化响应及安全可视化等能力。而ATT&CK可以作为一种标准,确定SOC在检测、分析和响应入侵方面的有效性。利用ATT&CK所提供的战术及技术,我们可以了解SOC的防御优势与劣势在哪里,并验证缓解和检测控制措施,并可以发现配置错误和其他操作问题。
4. 网络威胁情报收集
ATT&CK对于网络威胁情报很有用,因为ATT&CK是在用一种标准方式描述对抗行为。可以根据攻击者已知利用的ATT&CK中的技术和战术来跟踪攻击主体。这为防御者提供了一个路线图,让他们可以对照他们的操作控制措施,查看对某些攻击主体而言,他们在哪些方面有弱点,在哪些方面有优势。针对特定的攻击主体,创建MITRE ATT&CK 导航工具内容,是一种观察环境中对这些攻击主体或团体的优势和劣势的好方法。ATT&CK还可以为STIX 和 TAXII 2.0提供内容,从而可以很容易地将支持这些技术的现有工具纳入中。
ATT&CK框架的出现为安全界做了重大贡献,除了上面所介绍的几种比较典型的使用场景外,ATT&CK可以灵活的适应各种请情况,如前所述,不仅适用于攻击主体和团体,但也适用于从SOC或事件响应活动中观察到的行为。也可以通过ATT&CK介绍恶意软件的行为,简化IOC(Indicators of Compromise,威胁情报)的创建过程。
ATT&CK的使用方式
通过前面的介绍,我们已经了解了ATT&CK的使用场景,应该在何种情况下使用ATT&CK。但是ATT&CK框架中有12项战术和好几百种技术,并且会随着云计算的发展与机器学习的进步而逐步扩大,那么我们应该从哪里入手构建自己的检测方案呢?
1. 明确资产、威胁建模
俗话说“知己知彼、百战百胜”,在构建一个合格的检测方案前,最重要的是要了解自己究竟在保护什么,了解公司的业务资产、敏感数据、IP等网络资产信息。再明确了所要保护的对象后,接下来就是“换位思考”,假如自己是攻击者,并且获得了一定权限后,我们会想要什么,目标是什么,怎么才能获得最有价值的资产。在弄清了这三个问题后,我们就可以针对攻击者为了获得最有价值的资产而采用的技术做针对性措施。
2. 确定战术、选择技术
面对ATT&CK的12项战术以及上百项技术,我们该如何选择制定自己的检测方案所用的技术呢。根据上一篇文章我们可以知道,ATT&CK框架的12项战术的构成是按照入侵时间顺序排列的,并且与攻击者最终采用的步骤顺序密切相关。从左到右依次是:“初始访问”、“执行”、“持久化”、“提权”、“防御绕过”、“凭据访问”、“发现”、“横向移动”、“收集”、“命令与控制”、“数据泄露“、”影响“。
当企业在ATT&CK矩阵中向右移动时,攻击者正在不断推进,使用每一项战术下的N多技术来一步步向右推进。所以我们不能只是从最左侧“初始访问”处建立检测方案,然后逐步向右移动。当然也不能随机选择任何技术。因此,搭建检测方案的关键在于根据公司的敏感数据、业务资产等等需要被保护的对象来确定要选用的战术或技术。
3. 了解技术的攻击成本
根据前俩步,我们能做出一个简单的筛选,你认为这样就可以构造检测方案了?远远没有,事实是仍有近百项的技术可能会被采用。那么我们如何进一步缩小ATT&CK的技术范围呢?其实有一个很简单的方法,就是按攻击成本进行筛选。这是一个很简单的道理,除非自己正在遭受APT攻击,否则在面对大部分网络攻击时,黑客优先采用的肯定是攻击成本更为低廉的技术,因此我们需要了解不同技术的攻击难度,按照由简到难依次分类,分类标准如下图。
这个分类标准从上到下难度越来越高,从“只有技术”一直到“难度高”,攻击成本也在大大增加,因此我们可能更加关注前三个级别,因为刚刚好前三个级别的攻击成本在可接受的范围中,因此我们将这个分类标准映射到整体的ATT&CK框架中,看看究竟有哪些技术是需要我们注意的,如下图。
4. 确定数据源
执行完前三步之后我们已经确定了需要重点关注的技术范围,接下来就是要确定在检测方案中实施相关检测技术时,确保有适当的数据源来支持该技术的检测方案。数据源包括但不限于“Windows注册表”、“进程监视”、“命令行参数”。每个所选技术都有与之相关的数据源,以初始访问战术下的T1192项技术(鱼叉式链接)为例,可以在Mitre官网查到改技术所需的数据源:数据包捕获,Web代理,电子邮件网关,引爆室,SSL / TLS检查,DNS记录,邮件服务器等,如下图所示。
这里要说一下,如果是企业在实施ATT&CK之前,需要先了解一下在自己的企业环境中,能够提供不同的ATT&CK技术的通用数据源,根据所能提供的数据源大小来确定实施技术检测方案的优先级。
从上图看以看出,根据对ATT&CK所有技术的数据源进行总结,所需最高的三种数据源分别是:文件监视、进程监视、进程命令。如果企业可以集成上述三个数据源,就可以最大程度地增加可以创建的检测方案。此外,ATT&CK命名的几乎每个高级数据源都包含子数据源。重要的是要了解,可以访问哪些数据源以及这些子数据源提供哪些内容。仅找到其中一项子数据源是远远不够的。需要了解自己还缺少哪些内容,才能弥合自身在检测功能方面的差距。
5. 选择合适工具进行数据整合
在了解数据源的物理来源以及事件与这些物理数据源的关系之后,需要有一个信息存储库及相应的查询方式。可以使用图形数据库,并根据数据字典和公共信息模型中的信息实现类似于以下图表的内容:
数据整合工作量非常大,这个过程可以选择一些开源工具辅助进行,例如Osquery等。OSquery可以收集环境中各主机的信息,并将数据聚合到表格中。可以使用类似SQL的查询来访问表格中的数据并编写检测方案,因此对于接触过关系型数据库的人来说难度并不大。
此外,OSquery可以创建查询**,映射到ATT&CK中的目标TTP,进行威胁捕获。安全人员可以即时创建和执行在线实时查询。有些查询可以识别网络攻击者,这些查询可以集成到安全信息和事件管理(SIEM)系统中来。
结语
ATT&CK的系列文章到这里就结束了,回顾一下第一期文章,我们介绍了ATT&CK的概念,作用,优点,明确了ATT&CK框架的组成成分。而第二期文章,我们详细讲解了ATT&CK的12项战术,技术构成。而本篇文章,我们落到实地,为大家介绍了ATT&CK的应用场景以及具体的实施方式。相信看完了的朋友能积极跟身边的人分享ATT&CK,共享安全知识,才能让ATT&CK发挥最大价值。
转自杭州美创科技有限公司公众号,如需二次转载,请联系marketing@mchz.com.cn