所谓 EDR 即 Endpoint Detection and Response (终端探测与响应)。EDR 和市场上常见的EPP( Endpoint Protection Platform)不同,EDR 更注重“探测”和“响应”。真实的网络攻击并不是一蹴而就的,往往伴随着多次不同的攻击,最后才能突破防御达成攻击目的。入侵一定会有痕迹,EDR 希望在最终灾难发生之前,通过对入侵方法的探测和及时高效的安全响应(警报、隔离等多种方式),将安全事故发生的几率降到最低。
谈起 EDR ,必然将谈起 Mitre公司所提出的 ATT&CK的概念,本文将简述 ATT&CK 知识。
攻击层次抽象
Mitre 官方由抽象层次高低举例了三种网络攻击模型:
高抽象模型:Lockheed Martin 的 Cyber Kill Chain 模型、Microsft 的 STRIDE 模型等
中抽象模型:Mitre 的 ATT&CK 模型
低抽象模型:漏洞数据集、恶意软件数据集等
高抽象模型普遍对网络攻击的抽象程度较高,无法更好地服务与 EDR 所需要的“探测”和“响应”的要求,无法形成正对性的指导。以 Cyber Kill Chain 模型为例,其将攻击行为拆解为:Reconnaissance(侦查)→Weaponization(武器化)→ Delivery(传输)→Exploitation(挖掘)→ Installation(植入)→ C2 : Command & Control(命令和控制)→ Actions on Objectives(操作目标)。这一模型对于高纬度理解网络攻击有一定意义,但无法形成有效的攻击路线,无法说明每一次攻击行为之间的联系。ATT&CK Matrix for Enterprise 部分
Cyber Kill Chain(图片来源网络,侵删)
低抽象模型由于太注重于细枝末节,如漏洞数据集、恶意软件数据集等,反而无法看透攻击者的攻击目的和攻击全貌。所谓“管中窥豹,可见一斑”。
Mitre 对网络攻击进行了一个中等级别的抽象,让 ATT&CK 模型能够更好地服务于以下方面的问题:
每次攻击行为之间的联系
连续的攻击行为背后的攻击目标
每次攻击行为如何与数据源、防御、配置和其他被用在一个平台/技术域之间的措施想联系。
ATT&CK 模型
ATT&CK 的全称是 Adversarial Tactics, Techniques, and Common Knowledge (ATT&CK)。ATT&CK 模型初步分为了两个技术领域,分别是 Enterprise 和 Mobile,每个领域对应不同的平台。EDR 主要用于企业市场,其 ATT&CK 模型主要是围绕 ATT&CK Matrix for Enterprise( ATT&CK 矩阵)进行的。
我们可以看到,Enterprise 领域主要面向的平台为 Linux、MacOSI 和 Windows
ATT&CK Matrix 的解读
由 ATT&CK 模型的全称可以看出,ATT&CK模型主要围绕两个方面展开 —— Tactics(策略)和 Techniques(技术)。
ATT & CK Matrix for Enterprise 部分
ATT &CK Matrix for Enterprise 全貌
关键对象 Object
ATT&CK 模型中有四个关键对象,除了 Tactics、Techniques 还有Groups 和 Software。
Tactics(ID:TAXXXX)
Tactics 被译做“攻击策略”可能更合适。它反映了网络攻击的基本策略。Mitre 将每种 Tactics 分配了 ID(以 TA 作为开头,后面接数字) ,方便信息安全工作者进行查询。
如,Initial Access(ID : TA 0001) 表示攻击者试图接入被攻击者的网络, Execution(ID : TA 0002)表示攻击者试图运行恶意代码。
Techniques(ID:TXXXX)
Techniques 即完成某个 Tactics(攻击策略)所涉及到的技术。Mitre 将每种 Technique 也分配了 ID(以 T 作为开头,后面接数字) 。每一种 Tactics 下有多种 Technique,每个 Technique 可以为多种 Tactics 服务。
如,Persistence(ID : TA 0003) 策略涉及到了Accessibility Features(ID : T1015) 、AppCert DLLs(ID : T1098) 和 AppInit DLLs(ID : T1103) 等多种 Technique。而 AppInit DLLs 这种技术又可以在 Privilege Escalation(ID : TA 0004) 策略中使用。
同样的 Technique 在多种 Tactics 中都可以看到
ATT&CK 模型为特定的 Technique 对象提供了相关参数,如:Name、ID、Tactic 和 Description 等。方便更好的让 Technique 与 Tactics 等相联系。
例.Applnit DLLs 的参数
Group(ID:GXXXX)
Mitre 同样也整理了一些世界上著名的黑客组织(Groups),也提供了这些 Groups 的相关参数,包括 Group 的基本描述、别名、历史攻击所用到的技术及软件等。
参数:Name、ID、Aliases、Description、Alias Description、Techniques Used、Software。
94个Groups 部分列表
Software(ID:SXXXX)
Software即攻击者经常用的软件,包括工具、组件和恶意软件。其参数包括:Name、ID、Aliases、Type、Platform、Description、Alias Description、Techniques Used、Groups。
Software:cmd
对象联系 Relationships
根据 ATT&CK 模型给出的四个关键对象,这四个关键对象的关系可以用下图表示。
- Groups 用 Technique 和 Software 去完成 Tactic。
- Software 是实现 Technique 的手段。
ATT & CK Model Relationships
以 APT28 用 Mimikatz(一款windows密码抓取神器)和 Credential Dumping 技术去完成 Credential Access 的关系模型如下。
ATT & CK Model Relationships Example
ATT&CK 模型的使用
我们用 ATT&CK 模型干什么?Mitre 给出的答案如下:
- Detections and Analytics(检测和分析):帮助网络防御者开发分析程序,以检测对手使用的技术。
- Threat Intelligence(威胁情报):为分析人员提供了一种通用语言来构造,比较和分析威胁情报。
- Adversary Emulation and Red Teaming(攻击模拟):提供了一种通用语言和框架,攻击模拟团队可以使用该语言和框架来模拟特定威胁并计划其行动。
- Assessment and Engineering(评估与工程化):可用于评估组织的能力并推动工程决策。
总结
ATT&CK 模型主要整合了历史的黑客组织和攻击事件,以攻击策略为线索将不同攻击策略所对应的攻击技术和软件相联系。为信息安全从业者提供了一个可执行的中等抽象化的模型。
信息技术日新月异,我们不仅要防范过去的攻击技术,也将面临新的攻击技术的挑战。
极牛网精选文章《攻防最前线:ATT&CK模型解读》文中所述为作者独立观点,不代表极牛网立场。如若转载请注明出处:https://geeknb.com/13265.html