ATT&CK框架学习

admin 2024年7月23日09:40:42评论119 views字数 8022阅读26分44秒阅读模式

 

前言

孙子兵法云“知己知彼,百战不殆”。在网络安全领域同样如此,防守方只有了解攻击方都有哪些攻击路径,才能进行防御。正如未知攻焉知防。

本文就通过ATT&CK框架来认识了解攻击者的攻击路径。

防守方遇到的问题

首先先来看看防守方遇到的问题,在网络安全领域,攻击者始终拥有取之不竭、用之不尽的网络弹药,可以对组织机构随意发起攻击;而防守方则处于敌暗我明的被动地位,用有限的资源去对抗无限的安全威胁,而且每次都必须成功地阻止攻击者的攻击。

基于这种攻防不对称的情况,防守方始终会被下面的问题所困扰

● 我们的防御方案有效吗?

● 我们能检测到APT攻击吗?

● 新产品能发挥作用吗?

● 安全工具覆盖范围是否有重叠呢?

● 如何确定安全防御优先级?

而ATT&CK的出现让上述问题有了解决的希望。ATT&CK提供了一种许多组织机构迫切需要的关键功能——用一种标准化的方法来开发、组织和使用威胁情报防御策略,让企业合作伙伴、行业人员、安全厂商能以相同的语言进行沟通和交流。

MITRE ATT&CK是什么?

MITRE公司为了解决防守方面临的困境,基于现实中发生的真实攻击事件,创建了一个对抗战术和技术知识库,即Adversarial Tactics,Techniques,and Common Knowledge,简称ATT&CK。

MITRE ATT&CK提供了一个复杂框架,介绍了攻击者在攻击过程中使用的190多项技术、400多项子技术,其中包括特定技术和通用技术,以及有关知名攻击组织及其攻击活动的背景信息和攻击中所使用的战术、技术。简单来说,MITRE ATT&CK是一个对抗行为知识库,帮助防守方了解都有哪些攻击途径。

特点

● 它是基于真实观察数据创建的。

● 它是公开免费、全球可访问的。

● 它为蓝方和红队提供了一种沟通交流的通用语言。

● 它是由社区驱动发展的。

ATT&CK网站:https://attack.mitre.org/

ATT&CK框架学习

ATT&CK技术领域

目前,ATT&CK共分为三种技术领域,分别为ATT&CK for Enterprise、ATT&CK for Mobile和ATT&CK for ICS。

ATT&CK for Enterprise包含适用于Windows、Linux、MacOS、云平台等技术和战术部分。

ATT&CK for Mobile包含适用于移动设备的战术和技术。

ATT&CK for ICS包含适用于工控设备的战术和技术

ATT&CK框架学习

本文下面除了特殊说明,一般是在Enterprise技术领域进行讨论

如何使用ATT&CK

官方也给出了ATT&CK的使用方式,主要包含了下面的四个用途

1)检测与分析

帮助网络防御者分析攻击者行为,以检测对手使用的技术

  • 示例1

-介绍了如何开始使用 ATT&CK 进行三种不同复杂程度的检测和分析。

  • 示例2

-介绍了一种使用 ATT&CK 构建、测试和改进基于行为的分析检测功能的方法。

  • 更多资源:

https://attack.mitre.org/resources/get-started/detections-and-analytics/

2)威胁情报

为分析人员提供了一种通用的语言来构建、比较、分析威胁情报

  • 示例1-介绍了如何开始使用 ATT&CK 进行三种不同复杂程度的检测和分析

3)对手仿真和红队

ATT&CK 提供了一种通用语言和框架,红队可以使用该语言和框架来模拟特定威胁并规划其行动

  •  
    • 示例1

-这篇博文介绍了如何开始使用 ATT&CK 进行三个不同复杂程度的对手仿真

    • 示例2

-介绍了如何使用 ATT&CK 获取网络威胁情报并将其实施为可驱动相关检测的行为。

4)评估与工程决策

ATT&CK 可用于评估组织的能力并推动工程决策,例如应该实施哪些工具或审计哪些日志记录。

  • 示例1

-介绍了如何开始使用 ATT&CK 进行三种不同复杂程度的评估和工程设计。

  • 示例2

-介绍一种使用 ATT&CK 构建、测试和改进基于行为的分析检测功能的方法。

ATT&CK框架学习

ATT&CK模型的核心内容

ATT&CK是一种行为模型,它主要记录以下的核心内容:

战术

表战术代表了实施ATT&CK技术的原因,是攻击者执行某项行动的战术目标。战术介绍了各项技术的环境类别,并涵盖了攻击者在攻击时执行活动的标准、标记等信息,例如持久化、发现、横向移动、执行和数据窃取等战术。

ATT&CK框架学习

技术

技术代表攻击者通过执行动作来实现战术目标的方式。例如,攻击者可能会转储凭证,以访问网络中的有用凭证,之后可能会使用这些凭证进行横向移动。技术也表示攻击者通过执行一个动作要获取的“内容”。如攻击者利用主动扫描的技术来完成侦查的目标。

下面这些就是具体的技术

ATT&CK框架学习

子技术

比技术更低的层次上实现战术目标的更具体的手段

ATT&CK框架学习

记录对手使用的技术,他们的过程,和其它元数据。

ATT&CK框架的对象

ATT&CK框架中主要包含七大对象:攻击组织、软件、技术/子技术、战术、缓解措施、数据源、作战活动

ATT&CK框架学习

战术:击者执行ATT&CK技术或子技术的目标,说明攻击者为什么会进行这项操作;战术是对个别技术的情景化分类,是对攻击者在攻击过程中所做事情的标准化定义,例如持久化、发现、横向移动、执行和数据窃取等战术。战术也可以视为ATT&CK中的标签,根据使用某些技术或子技术实现不同目标,就可以对这些技术或子技术打上一个或者多个战术标签。

技术、子技术:技术代表攻击者通过执行动作来实现战术目标的方式。例如,攻击者可能从操作系统中转储凭证,以获得对网络中有用凭证的访问权限。子技术将技术所描述的行为进一步细分,更具体地说明攻击者如何利用这些行为来实现目标。例如,在操作系统凭证转储(OS Credential Dumping)技术下,它的子技术更具体地描述了攻击者的行为,这些子技术包括LSASS内存、SAM、NTDS、DCSync等。

攻击组织:ATT&CK框架会通过攻击组织这一对象来追踪已知攻击者,这些已知攻击者由公共组织和私有组织跟踪并已在威胁报告中报道过。攻击组织通常代表有针对性的持续威胁活动的知名入侵团队、威胁组织、行动者组织或活动。

软件:在入侵过程中,攻击者通常会使用不同类型的软件。软件代表了一种技术或子技术的应用实例,因此须在ATT&CK中进行分类,例如,按照有关技术的使用方法分类,可将软件分为工具和恶意软件两大类。

缓解措施:ATT&CK中的缓解措施介绍的是阻止某种技术或子技术成功执行的安全概念和技术类别。截至目前,Enterprise ATT&CK中有40多种缓解措施,其中包括应用程序隔离和沙箱、数据备份、执行保护和网络分段等缓解措施。缓解措施与安全厂商的产品无关,只介绍技术的类别,而不是特定的解决方案。

数据源:数据源对象包含数据源名称、关键技术信息及元数据,包括ID、定义、数据收集层和组成数据源的相关值/属性的数据组件。数据源页面还列出了数据组件,每个组件都说明了使用该数据可以检测的各种(子)技术。在各个(子)技术页面,数据源和数据组件已经从页面顶部的元数据框中移出,与检测内容整合在了一起

作战活动:作战活动,用来描述在特定时期内进行的一系列具有共同目标的入侵活动。作战活动的一个关键内容是,这些活动可能与某个特定的威胁行为者有关,也可能无关。

战术介绍

ATT&CK框架学习

上面已经说了ATT&CK的各个方面,接下来在详细的介绍一下各个战术,其实这也是攻击者在执行攻击的一个过程。

侦查(TA0043)

具体介绍

这部分其实就是攻击者收集目标信息的一个过程,无论是进行安全演练,渗透测试,在开始以前都会进行这个步骤,可以说攻击的成功与失败与这个部分有着很大的关系。

收集的信息包括了公司信息,人员信息,应用信息等等,收集的信息越多也就意味着攻击面越大。

该战术目前有10个技术,34个子技术,如公开数据库搜索(如WHOIS、CDNs等)、公开网站搜索(如搜索引擎、社交媒体等)等等。

检测与防御

该战术是很难被检测到的,因为很多的行为并不直接访问目标网站,而且就算访问目标网站也与正常业务请求没有多大的区别。

但是我们可以通过收敛资产,减少暴露面。

资源开发(TA0042)

具体介绍

资源开发是指攻击者在开展具体攻击前会开发一些后续使用的相关资源,开发方式包括创建、购买、窃取等,开发的资源具体包括基础设施(域、DNS服务器、Web服务、VPS等)、账户(社交媒体、电子邮件、云账户等)、能力(恶意软件、数字证书、exp等)。比如我们发现了一个具体漏洞,我们去编写这个漏洞的一个exp。

该战术目前有8个技术,37个子技术,如搭建DNSlog服务器,编写exp等等

检测与防御

其实这个战术一般是不会被检测到的,攻击者都是在收集信息以后根据收集到的信息,在本地编写相关的工具。

初始访问(TA0001)

具体介绍

前面两个战术属于攻击前的行为,该战术就是攻击阶段的第一个战术。初始访问是攻击者使用各种方法在网络中获得攻击入口的技术,包括网络钓鱼和利用公司对外的Web 网站的漏洞。通过初始访问获得的攻击入口可能允许攻击者继续进行深入的渗透,例如获取有效的帐户信息和对外提供的远程服务,或者通过多次尝试口令锁住用户账户限制用户使用等。

该战术目前有10个技术,11个子技术。

检测与防御

由于该战术会与目标进行交互,因此可以检测到其行为也有缓解措施。

检测:网络流量监测(DS0029)、应用日志审计(DS0015)等

缓解:应用程序隔离和沙箱(M1048),漏洞利用保护(M1050),限制基于 Web 的内容(M1021),更新软件(M1051),漏洞扫描(M1016)等

攻击执行(TA0002)

具体介绍

攻击执行,表示在目标网络中获取了初始访问权限的某个节点上,执行攻击相关的代码。这些代码可能是基于漏洞,例如Office漏洞,Pdf漏洞等,也可能是基于软件的正常功能,例如CMD、PowerShell、WMI等命令行

举个例子,在初始访问后,常见的攻击执行,就是获取当前获取初始访问权限的节点的系统信息,会执行ipconfig /all,whoami,pwd,systeminfo等命令

“执行”战术是所有攻击者都必然会采用的一个战术,因为无论攻击者通过恶意软件、勒索软件还是APT攻击等手段,为了能成功攻入主机最终都会选择“执行”战术。这是逃不开、躲不掉的,但换个角度想,如果恶意软件必须运行,安全防御人员将有机会阻止或者检测他,无论是主动出击式还是守株待兔式,都有可能成功防住。但是值得注意的是,并非所有的恶软都是可以用杀毒软件轻松找到的可执行文件,成熟的恶软会被攻击者精心包装,做了免杀加壳甚至自动备份隐藏,在面对这种机器无法扫描到的情况就需要人来进行干预

该战术目前有14个技术,22个子技术。

检测与防御

检测:监视执行的命令和参数DS0017、监视有关正在运行进程的上下文数据DS0009

缓解:安装防病毒软件M1049检测签名(M1045)禁用或删除某些功能T1042

持久化(TA0003)

具体介绍

初始访问战术在目标网络环境中建立了立足点,持久化战术便是为了长久保持这些立足点,即受害者即使重启、修改凭证仍然可以保证攻击者对系统的持续访问。“持久化”战术是所有攻击者最受追捧的技术之一,除勒索软件外,大部分攻击者的存活时间取决于攻击何时被检测系统发现。试想一下,攻击者花了很大的攻击成本在获取了初始访问权后,必然不愿意再花同样或更多的成本用于下次的访问权限获取过程中,所以最简便最能减少工作量的方法就是“持久化”或“留后门”。

该战术目前有20个技术,95个子技术。

检测与防御

检测:监控对日志的更改,以获取服务和应用程序的修改DS0026,监控已执行的命令和可疑命令的参数,这些命令可能指示修改相关服务设置的权限DS0017,监控文件修改DS0022等

缓解:多因素认证(M1032),网络分割(M1030),特权账户管理(M1026),用户账号管理(M1018),过滤网络流程(M1037)

提权(TA0004)

具体介绍

我们通过漏洞获取到的权限往往都是低权限,为了执行一些操作,需要提升到管理的权限。持久化和权限提升不一定有先后的顺序,有时候为更好的持久化,需要先提升权限,有些时候提升权限是为了方便的做其他攻击战术,例如获取root/administrator账号口令HASH值,进入系统内核,或进入系统的某些固件等。常用的提权技术有权限提升机制滥用(最早的UAC等)、AutoStart、域策略修改、进程注入、修改任务列表等

该战术目前有14个技术,80个子技术。

检测与防御

检测:监控创建文件,进程的创建,windows注册表的修改

缓解:威胁情报,应用隔离和沙箱,执行防御,利用保护机制等

防御规避(TA0005)

具体介绍

在攻击过程中会遇到各种防御手段,如入侵检测系统,waf等等,该战术就是避免被防御系统检测到。用于规避防御的技术包括卸载/禁用安全软件或混淆/加密数据和脚本。恶意攻击者还利用和滥用可信任的过程来隐藏和伪装他们的恶意软件。如修改注册表键值、删除核心文件、禁用安全工具等等

该战术目前有42个技术,148个子技术。

检测与防御

检测:监控创建文件,进程的创建,监测网络流程

缓解:特权账号管理,更新软件,端点行为防御等

凭证访问(TA0006)

具体介绍

凭据访问”,可以简单理解获取系统中的账号密码等,当然有些也可以是Cookie、Token或者Ticket,或者HASH、密钥、证书、指纹、网膜、手势等等,凭据根据认证方式的不同而不同。任何攻击者在攻入企业后都希望能保持一定程度的隐身状态,毕竟如果不熟知内网环境的话贸然行动会增大暴露的风险。他们更希望窃取尽可能多的凭据,例如各种各样的密码或者口令。当然,攻击者最喜欢的毫无疑问的是明文密码了,明文密码可能存储于明文文件中、数据库中、注册表中、甚至是注释中。攻击者入侵系统、窃取本地管理员明文密码的案例多的是

该战术目前有17个技术,47个子技术。

检测与防御

检测:基于应用日志,网络流量,可以操作等

缓解:网络入侵防御,加密敏感信息,用户培训等

发现(TA0007)

具体介绍

凭据访问”,可以简单理解获取系统中的账号密码等,当然有些也可以是Cookie、Token或者Ticket,或者HASH、密钥、证书、指纹、网膜、手势等等,凭据根据认证方式的不同而不同。任何攻击者在攻入企业后都希望能保持一定程度的隐身状态,毕竟如果不熟知内网环境的话贸然行动会增大暴露的风险。他们更希望窃取尽可能多的凭据,例如各种各样的密码或者口令。当然,攻击者最喜欢的毫无疑问的是明文密码了,明文密码可能存储于明文文件中、数据库中、注册表中、甚至是注释中。攻击者入侵系统、窃取本地管理员明文密码的案例多的是

“发现”战术可以说是整个ATT&CK框架中最难以防御的策略,可以说是“防不胜防啊”。其实“发现”战术与上一篇简单提到过的洛克希德·马丁网络Kill Chain的侦查阶段有很多相似之处。组织机构要正常运营业务,肯定会暴露某些特定方面的内容

该战术目前有32个技术,14个子技术。

检测与防御

检测:文件监控,异常行为监控等

缓解:用户安全培训,密码加密存储等

横向移动(TA0008)

具体介绍

横向移动,表示攻击者从初始访问点,开始在网路内部移动,向网络内部的其他节点资产进行攻击和移动,从而扩大攻击成果。攻击者实现他们的主要目标通常需要探索网络以找到他们的目标,并随后获得访问权限。实现他们的目标通常需要通过多个系统和帐户来获得收益。对手可能会安装自己的远程访问工具来完成横向移动,或者使用本地网络和操作系统工具使用合法凭据,这可能更隐蔽

“横向移动”战术是攻击者常用战术之一,在攻击者利用某个漏洞进入系统后,无论是为了收集信息还是继续为了下一步攻击寻找突破点,通常都会尝试在网络内横向移动。哪怕是勒索软件,甚至是只针对单个系统的勒索软件,通常也会试图在网络中移动寻找其攻击目标。攻击者一般都会先寻找一个落脚点,然后开始在各个系统中移动,寻找更好的访问权限,最终控制整体网络

该战术目前有9个技术,14个子技术。

检测与防御

检测:蜜罐,HIDS,异常行为监控,微隔离等

缓解:网络隔离,访问控制等

收集(TA0009)

具体介绍

收集,指攻击者收集有价值的信息,常见的目标源包括各种驱动器类型、浏览器、音频、视频和电子邮件。常见的采集方法包括捕捉屏幕截图和键盘输入,现阶段更大的收集,往往指具有货币变现价值的加密货币钱包、源代码、商业合同、交易数据等

ATT&CK的 “收集”战术是一种攻击者为了发现和收集实现目标所需的数据而采取的技术。但是该战术中列出的许多技术都没有关于如何减轻这些技术的实际指导

但是,企业可以使用该战术中的各种技术,了解更多有关恶意软件是如何处理组织机构中数据的信息。攻击者会尝试窃取有关当前用户的信息,包括屏幕上有什么内容、用户在输入什么内容、用户讨论的内容以及用户的外貌特征。除此之外,他们还会寻求本地系统上的敏感数据以及网络上其它地方的数据

该战术目前有17个技术,20个子技术。

检测与防御

检测:文件监控,异常行为监控等

缓解:安全培训,敏感信息加密存储等

命令与控制(TA0011)

具体介绍

命令与控制,也就是常说的远程控制,攻击者通过模仿正常的预期流量以避免被发现。根据受害者的网络结构和防御,对手可以通过多种方式建立不同级别的隐形指挥和控制

现在大多数恶意软件都有一定程度的命令和控制权。黑客可以通过命令和控制权来渗透数据、告诉恶意软件下一步执行什么指令。对于每种命令和控制,攻击者都是从远程位置访问网络。因此了解网络上发生的事情对于解决这些技术至关重要

该战术常见的技术包括使用应用层协议T1071、通过可移动介质通信T1092、使用备用信道T1008、利用远程访问软件T1219等,在通信过程中也会编码数据T1132、混淆数据T1001、使用动态参数T1568、使用加密信道T1573以保证通信的隐蔽性。

该战术目前有17个技术,23个子技术。

检测与防御

检测:流量监控,行为监控等

缓解:严格的访问控制,防火墙规则等等

数据窃取(TA0010)

具体介绍

该战术是指攻击者在试图窃取数据。一旦收集到数据,对手通常会对其进行打包处理以避免在传递过程中被检测到,这可能涉及压缩和加密等操作。将数据从目标网络中取出的常用技术包括使用C2信道回传T1041、使用物理介质回传T1052、使用Web服务回传T1567、使用云账户T1537等,可能会限制传递的数据大小。

该战术目前有9个技术,10个子技术。

检测与防御

检测:流量监控,数据防泄漏系统等

缓解:数据防泄漏系统,限制外部驱动器,数据加密等等

危害影响(TA0040)

具体介绍

战术是指攻击者试图操控、中断或破坏目标的系统和数据攻击者通过操纵业务和运营流程来破坏可用性或损害完整性的技术。用于冲击的技术可以包括销毁或篡改数据。在某些情况下,业务流程看起来不错,但可能已经进行了更改,以利于对手的目标。这些技术可能被对手用来实现他们的最终目标,或者为违反保密规定提供掩护

该战术包含一系列技术,这些技术被攻击者利用以通过操纵业务和运营流程来干扰系统的可用性或破坏信息的完整性。实现该战术的技术包括删除账户权限T1531、破坏数据T1485、数据加密T1486、操纵数据T1565、篡改内容T1491、擦除磁盘T1561、损坏固件T1495等。

该战术目前有14个技术,13个子技术。

检测与防御

检测:监控系统状态,进程监控,行为监控等

缓解:数据备份,异地容灾等等

总结

本文从ATT&CK的角度过了一篇攻击者入侵都可能采取哪些技术以及手段,给防守方了解攻击者提供了一个基础,未知攻焉知防。本文只是大概介绍了这些过程,并没有深入的去介绍各个技术,手段以及检测与防御,相当于一个入门。如果想要深入了解可以去看官网对于每个技术的讲解。当然,后续也会在写一些关于每个战术的具体文章。

 

原文始发于微信公众号(信安路漫漫):ATT&CK框架学习

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年7月23日09:40:42
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   ATT&CK框架学习http://cn-sec.com/archives/2988318.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息