乌雲安全 - 做网络安全竟然不了解ATT&CK?

在网络安全领域,攻击者始终拥有取之不竭、用之不尽的网络弹药,可以对组织机构随意发起攻击;而防守方则处于敌暗我明的被动地位,用有限的资源去对抗无限的安全威胁,而且每次都必须成功地阻止攻击者的攻击。基于这种攻防不对称的情况,防守方始终会被以下问题(如图1所示)所困扰:

  • 我们的防御方案有效吗?
  • 我们能检测到APT攻击吗?
  • 新产品能发挥作用吗?
  • 安全工具覆盖范围是否有重叠呢?
  • 如何确定安全防御优先级?

乌雲安全 - 做网络安全竟然不了解ATT&CK? - 图1
图1 防守方的困局
一直以来,没有人能够很好地回答图1中的问题,直到MITRE ATT&CK的出现
自2015年发布以来,MITRE ATT&CK风靡信息安全行业,迅速被世界各地的许多安全厂商和信息安全团队采用,在他们看来,MITRE ATT&CK是近年来信息安全领域最有用和最急需的一个框架。
ATT&CK提供了一种许多组织机构迫切需要的关键功能——用一种标准化的方法来开发、组织和使用威胁情报防御策略,实现企业合作伙伴、行业人员、安全厂商以相同的语言进行沟通和交流。
下文我们将详细介绍MITRE ATT&CK框架。

MITRE ATT&CK框架概述

MITRE是一个向美国政府提供系统工程、研究开发和信息技术支持的非营利性组织。
作为承接政府项目的第三方机构,MITRE公司管理着美国联邦政府投资研发中心(FFRDCS),于1958年从麻省理工学院林肯实验室分离出来后参与了许多最高机密的政府项目,其中包括开发FAA空中交通管制系统和AWACS机载雷达系统。
MITRE在美国国家标准技术研究所(NIST)、美国国土安全部网络安全和信息保证办公室(OCSIA)等机构的资助下,开展了大量的网络安全实践。
例如,MITRE公司在1999年发起了常见披露漏洞项目(CVE,Common Vulnera- bilities and Exposures)并维护至今。
其后,MITRE公司还维护了常见缺陷列表(CWE,Common Weakness Enumeration)这个安全漏洞词典。

2013年,MITRE公司为了解决防守方面临的困境,基于现实中发生的真实攻击事件,创建了一个对抗战术和技术知识库,即Adversarial Tactics,Techniques,and Common Knowledge,简称ATT&CK
由于该框架内容丰富、实战性强,最近几年发展得炙手可热,得到了业内的广泛关注。
图2显示了Google Trends上ATT&CK这个词语的热度发展趋势。下文我们将对ATT&CK框架进行详细的介绍。
乌雲安全 - 做网络安全竟然不了解ATT&CK? - 图2
图2 ATT&CK框架的热度发展趋势
MITRE ATT&CK提供了一个复杂框架,介绍了攻击者在攻击过程中使用的180多项技术、360多项子技术,其中包括特定技术和通用技术,以及有关知名攻击组织及其攻击活动的背景信息和攻击中所使用的战术、技术。
简单来说,MITRE ATT&CK是一个对抗行为知识库。该知识库具有以下几个特点:

  • 它是基于真实观察数据创建的。
  • 它是公开免费、全球可访问的。
  • 它为蓝方和红队提供了一种沟通交流的通用语言。
  • 它是由社区驱动发展的。

基于威胁建模的ATT&CK框架如图3所示。
乌雲安全 - 做网络安全竟然不了解ATT&CK? - 图3
图3 基于威胁建模的ATT&CK框架
在ATT&CK框架中,战术代表了实施ATT&CK技术的原因,是攻击者执行某项行动的战术目标。
战术介绍了各项技术的环境类别,并涵盖了攻击者在攻击时执行活动的标准、标记等信息,例如持久化、发现、横向移动、执行和数据窃取等战术。
在ATT&CK框架中,技术代表攻击者通过执行动作来实现战术目标的方式。
例如,攻击者可能会转储凭证,以访问网络中的有用凭证,之后可能会使用这些凭证进行横向移动。技术也表示攻击者通过执行一个动作要获取的“内容”。
整体来说,ATT&CK由一系列技术领域组成。
这些技术领域是指攻击者所处的生态系统,攻击者必须绕过这些系统限制方可实现其目标。
迄今为止,MITRE ATT&CK已确定了三个技术领域——Enterprise(用于传统企业网络和云技术)、Mobile(用于移动通信设备)、ICS(用于工业控制系统),如表1所示。
表1 ATT&CK技术领域
乌雲安全 - 做网络安全竟然不了解ATT&CK? - 图4
在各技术领域,ATT&CK定义了多个平台,即攻击者在各技术领域进行操作的系统。一个平台可以是一个操作系统或一个应用程序(例如,Microsoft Windows)。ATT&CK中的技术和子技术可以应用在不同平台上。
在刚开始推出Enterprise ATT&CK时,ATT&CK专注于攻击者入侵系统后的行为,大致对应Kill Chain中从漏洞利用到维持的阶段。这符合防守方所处的情况,即防守方仅具有对自己网络的可见性,无法揭露攻击者入侵成功前的行为。
在ATT&CK初次发布后,MITRE的一个独立团队希望按照Enterprise ATT&CK的格式向左移动,列出导致攻击者成功入侵的攻击行为,于是在2017年发布了PRE ATT&CK。
图4展示了PRE ATT&CK与Kill Chain的对比图。

乌雲安全 - 做网络安全竟然不了解ATT&CK? - 图5image.png
图4 PRE ATT&CK与Kill Chain的对比图
PRE ATT&CK框架发布后,ATT&CK社区中的一些人开始利用它来描述攻击者入侵成功前的攻击行为,但该框架的使用率并不高。
同时,许多企业反映,Enterprise ATT&CK仅涵盖攻击者入侵成功后的行为,这在一定程度上限制了Enterprise ATT&CK的能力。
对此,MITRE在2018年将PRE ATT&CK集成到Enterprise ATT&CK版本中(见图5),将PRE ATT&CK的“启动”和“威胁应对”战术纳入Enterprise ATT&CK的“初始访问”战术中。
乌雲安全 - 做网络安全竟然不了解ATT&CK? - 图7
图5 PRE ATT&CK与Enterprise ATT&CK合并
之前,MITRE称PRE ATT&CK+Enterprise ATT&CK涵盖了完整的Kill Chain。但实际上PRE ATT&CK还包括侦察前情报规划在内的多种战术。后来,MITRE的Ingrid Parker与ATT&CK团队合作制定了一个标准,以确定PRE ATT&CK中的哪些技术可以融入Enterprise ATT&CK中,具体标准包括以下内容。

  • 技术性标准:攻击行为与电子设备/计算机有关,而不是与计划或人类情报采集有关。
  • 可见性标准:攻击行为对某个地方的防守方可见,不需要国家级的情报能力,例如ISP或DNS厂商。
  • 证明攻击者的使用情况:有证据表明某种攻击行为已被攻击者在“在野攻击”中使用。

根据以上标准进行筛选后,将PRE ATT&CK整合到Enterprise ATT&CK中成为两个新战术,如下所示。

  • 侦察:重点关注试图收集信息以计划在未来进行攻击的攻击者,包括主动或被动收集信息以确定攻击目标的技术。
  • 资源开发:重点关注试图获取资源以进行攻击的攻击者,包括攻击者为实现目标而获取、购买或破坏/窃取资源的技术。

精简后,PRE矩阵只包含侦察和资源开发这两个战术(见表2),战术下包含技术和子技术。虽然这些技术/子技术大部分没有缓解措施,但防守方可以参照这些攻击行为,做到一些暴露面的收缩。
表2 精简版本的PRE矩阵
乌雲安全 - 做网络安全竟然不了解ATT&CK? - 图8
Enterprise版本中除了涵盖常见的Windows、Linux、macOS等平台,随着越来越多的企业上云,还新增了云环境内容,包含Azure AD、Office 365、Google Workspace、SaaS、IaaS等平台。
而网络环境中的矩阵主要涵盖了针对网络基础设施设备的攻击技术,包含AWS、GCP、Azure、Azure AD、Office 365、SaaS等平台。
近年来,容器作为一种使用便捷、可移植性强的基础设施,使用率日益攀升,但容器所面临的安全问题也日益严峻。MITRE在2021年4月发布的ATT&CK V9版本中公布了ATT&CK容器矩阵,受到了容器使用者的广泛关注。

ATT&CK框架背后的安全哲学

ATT&CK框架之所以能够从各类安全模型和框架中脱颖而出,获得众多安全厂商的青睐,主要是因为其核心的三个概念性想法,具体内容如下所示。

  • 攻击视角:保持攻击者的视角。
  • 实践证明:通过实例介绍跟踪攻击活动的实际情况。
  • 抽象提炼:通过抽象提炼,将攻击行为与防御对策联系起来。

    1.攻击视角

    ATT&CK模型中介绍的战术和技术是从攻击者的视角出发的,而其他许多安全模型是从防守方的视角自上而下地介绍安全目标的(例如CIA模型),有的侧重漏洞评级(例如CVSS),有的侧重风险计算(例如DREAD)。
    ATT&CK使用攻击者的视角,相比于纯粹的防守方视角,更容易理解上下文中的行动和潜在策略。
    从检测角度而言,其他安全模型只会向防守方展示警报,而不提供引起警报事件的任何上下文。这只会形成一个浅层次的参考框架,并没有提供导致这些警报的原因,以及该原因与系统或网络上可能发生的其他事件的关系。
    视角的转换带来的关键变化是,从在一系列可用资源中寻找发生了什么事情转变为按照ATT&CK框架将防守策略与攻击策略进行对比,预测会发生什么事情。
    在评估防守策略的覆盖范围时,ATT&CK会提供一个更准确的参考框架。ATT&CK还传达了对抗行动和信息之间的关系,这与使用何种防御工具或数据收集方法无关。
    然后,防守方就可以追踪了解攻击者采取每项行动的动机,并了解这些行动和动机与防守方在其环境中部署特定防御策略之间的关系。

    2.实践证明

    ATT&CK所描述的活动大多数取材于公开报告的可疑高级持续威胁组织的行为事件,这为ATT&CK能够准确地描述正在发生或可能发生的在野攻击奠定了基础。
    攻击技术研究一般会研究攻击者和红队可能通过哪些技术来攻击企业网络,这些技术可能会绕过目前常用的防守方案。ATT&CK也会将进攻性研究中发现的技术纳入其中。
    由于ATT&CK模型与事件密切相关,因此该模型基于可能遇到的实际威胁,而不是那些仅存于理论中的威胁。
    ATT&CK主要通过以下几个渠道来收集新技术相关的信息:

  • 威胁情报

  • 会议报告
  • 网络研讨会
  • 社交媒体
  • 博客
  • 开源代码仓库
  • 恶意软件样本

因为很多企业发现的绝大多数事件并未进行公开报道,所以除了以上几个渠道,ATT&CK还会通过未报告的安全事件获得新技术相关的信息。
未报告的安全事件可能包含有关攻击者的作战方式和攻击手法的宝贵信息。通常,需要将潜在的敏感信息或危害性信息与攻击技术区分开来,这有助于发现新技术或者技术变体,也便于展示统计数据,显示技术使用的普遍性。

3.抽象提炼

ATT&CK框架与其他威胁模型之间的重要区别在于,其可以对相关的攻击战术和技术进行抽象提炼。ATT&CK是针对攻击者生命周期的高级抽象模型。Cyber Kill Chain®、Microsoft STRIDE等模型对于理解攻击过程和攻击目标很有用,但是这些模型不能有效地传达攻击者要采取哪些动作,一个动作与另一个动作之间的关系,动作序列与攻击战略目标的关系,以及这些动作与数据源、防御措施、配置和用于特定平台与领域的其他应对措施之间的关系。
与漏洞数据库相关的“低级抽象模型”介绍了漏洞利用的软件实例(通常也会提供代码示例),但真实攻击环境与这些软件的使用环境和使用方式相去甚远。同时,恶意软件库通常缺少有关恶意软件的使用方式和使用者的背景信息,而且也没有考虑将合法软件用于恶意目的的情况。

像ATT&CK这样的“中级对抗模型”将各个组成部分联系了起来。

ATT&CK中的战术和技术定义了攻击生命周期内的对抗行为,信息详细到足以据此制定防御方案,诸如控制、执行、维持之类的高级概念被进一步细分为更详细的类别,可以对攻击者在系统中的每个动作进行定义和分类。此外,中级模型可以补充低级模型所不具备的上下文信息,这一点很有用。ATT&CK的重点是基于行为的技术,而不是基于漏洞利用和恶意软件的技术,因为漏洞利用和恶意软件种类繁多,除了常规漏洞扫描、快速修补和IoC,很难通过整体防御程序对其进行梳理。
漏洞利用和恶意软件对于攻击者很有用,但要充分了解它们的效用,必须了解在哪种环境下可以借此实现哪些目标。相比之下,中级模型的作用更大,它可以结合威胁情报和事件数据来显示谁在做什么,以及特定技术的使用普遍性。表3显示了低级、中级和高级抽象模型与威胁知识数据库之间抽象级别的比较。
表3 按抽象程度划分不同威胁知识数据库
乌雲安全 - 做网络安全竟然不了解ATT&CK? - 图9
ATT&CK技术抽象提炼的价值体现在以下两方面:

  • 通过抽象提炼,ATT&CK形成一个通用分类法,让攻击者和防守方都可以理解单项对抗行为及攻击者的攻击目标。
  • 通过抽象提炼,ATT&CK完成了适当的分类,将攻击者的行为和具体的防守方式联系起来。