初识ATT&CK框架
前言:

ATT&CK这一概念自2014年提出时起,作为安全分析领域中的前沿研究一直在默默地发挥着自己的影响,但是由于其概念在当时过于超前以至于并没有引起多大反响,直至2019年的红蓝对抗赛这才把ATT&CK框架重新推回到了安全圈的C位上,接下来的三期内容,美创安全实验室将为大家带来ATT&CK模型的独家解读,好了,废话不多说Let‘s go!

但是要是想完全弄懂ATT&CK模型到底是什么,那么有一个相关概念以及问题必须要先弄懂。还请大家耐心看完。

什么是威胁情报?
威胁情报又称IOC(Indicator of compromise)。一般为网络流量中或者操作系统上观察到的能高度表明计算机被入侵的痕迹,例如某某病毒的Hash值、C&C服务器的IP地址等等。简单来说,威胁情报就像是当计算机被入侵时所表现出来的某种特征,我们将这些威胁情报搜集起来整理成库,当计算机再次表现出库中的某些特征的时候我们就可确定计算机已经被入侵了,这样我们可以制定更好的安全策略来规避以上问题。

那么是不是只要有足够的 IOC,我们就可以规避所有风险?
众所周知,在网络安全领域中白帽子相比于黑帽子来说是处于弱势的一方,那么造成这种“安全难做”情况的根本原因在于攻守双方的信息不对称。但是当白帽子掌握了足够多的IOC之后是否能守住黑客的所有攻击呢,答案当然是不可能的。即使白客拥有某黑客之前攻击产生的所有IOC,但是当黑客随便更改一下IP地址或者域名就可以产生新的IOC,且成本低廉。如果不知道黑客的攻击手法或者入侵行为仅靠IOC的信息量,并不能规避所有的风险。

Ok,现在我们得到结论:IOC能够帮助我们指定更好的安全策略,而且IOC信息量的多少也能影响最终防护效果,但IOC并不能表达攻击者如何与受害系统交互,且只能表示是否受害而无法体现其过程。 因此,为了解决上述问题,ATT&CK模型也就油然而生了。
ATT&CK模型简介:

ATT&CK全称是Adversarial Tactics, Techniques, and Common Knowledges,即对抗战术、技术和常识。从这个组合名称就可以看出,ATT&CK不是单单某一项技术,而是很多战术、技术、知识的汇总或者集合,可以看作是一个更加底层的“知识库”。“战术”指的是ATT&CK的技术原因,是攻击者执行行动的战术目标,涵盖了攻击者在操作期间所做事情的标准和更高级别的表示。而“技术”指的是攻击者通过执行动作实现战术目标的方式,或者执行动作而获得的内容。在ATT&CK矩阵中可以到看到战术和技术的关系,可能有很多种方法或技术可以实现战术目标,因此每种战术类别有很多种技术。

ATT&CK的关注点从单点IOC信息转移到了上下文信息,并用更加标准和抽象的方式总结形成了包含:初始访问、驻留、横向移动、命令控制等阶段。ATT&CK完美解决了IOC无法描述攻击过程的这一痛点,他对攻击性操作进行细分和分类,形成一种完善统一的参照标准,极大的减少了安全分析中整理总结的成本。

目前ATT&CK模型由三部分组成,如下图:

    PRE-ATT&CK:攻击前的准备,例如优先级定义、目标选择、信息收集、发现脆弱点、攻击性利用开发平台,建立和维护基础设施、人员的开发、建立能力和分段能力等。
    Enterprise:攻击时的部分已知技术手段,例如访问初始化、执行、常驻、提权、防御规避、访问凭证、发现、横向移动、收集、数据获取、命令和控制等。
    Mobile:移动端的部分已知技术手段、移动框架和Enterprise类似,只是适用的平台不同。
    在这里插入图片描述

ATT&CK for Enterprise将网络安全事件划分为12个阶段。初始访问阶段、执行阶段、持久化阶段、提权阶段、防御规避阶段、凭证访问阶段、发现阶段、横向移动阶段、采集阶段、命令与控制阶段、渗出阶段、影响阶段。攻击手法和各阶段的映射关系如下图所示:
在这里插入图片描述
ATT&CK对安全分析的帮助

ATT&CK早在2014年提出以来就全世界的安全分析领域中如火如荼的发挥着影响,尤其是近两年的热度呈指数级增长,如下图所示。众所周知ATT&CK框架是从攻击战术和技术两方面来构建知识资源库的,而这也正好是安全分析中研究的重点。但是在安全分析中一直存在着两大难题:上下文检测以及统一标准的缺失。
在这里插入图片描述

先来谈谈上下文检测,目前分析、检测的基础还是以IOC为主,例如病毒样本的HASH值、域名、IP、注册表、流量等信息都属于IOC特征信息,IOC只能表示“是与否”、“黑与白”,它反映的是现在所处的状态和发生的事件,是不具备能表达“攻击过程”这种具有方向性的特性的。 除此之外,IOC还有一个缺点就是不稳定性,特别是Hash、IP这种,攻击者可以轻易改变。许多时候,多个 IOC 其实表达的是同一个攻击过程。IOC 方便检测、但是不善于描述攻击。

其次再来谈一谈统一标准的缺失,在安全研究领域一直有一些比较有先见之明的能人,他们在几年以前就一直在尝试推动建立能被更多人认可的标准模型,例如面对威胁信息分享的模型时,MITRE定义了STIX模型;以及更加著名的洛克希德·马丁定义的杀伤链 Lockheed Martin Cyber Kill Chain。其实无论是Kill Chain(杀伤链)还是SITX模型等等都具有很高的现实意义,虽然他们能在一定程度上帮助分析人员在威胁建模,防御检测方面提供比较完善的理论支持。但是现阶段没有成熟的方法,将攻击描述规范化向分析模型映射。特别是TTP(战术、技术、过程)方面,目前还没有统一的描述标准,信息交换方面存在沟通成本。

从上面的研究中我们可以看出,无论是IOC还是SITX模型都在尝试用一个个攻击节点来描述一个完整的攻击过程,而此时ATT&CK的横空出世就像是胶水一样,很好的将每个节点粘合到了一起。丰富且适用的字典可以帮助 IOA、SITX 或其他的一些实践方法进行落地,让攻击描述可以聚焦于更加抽象的过程总结,而不必纠结这个攻击的实际步骤。并且采用统一的描述方法,可以更好的进行信息交换,降低数据转入转出成本,提高信息适用性和可拓展性。 并且运用时拿攻击步骤在到 ATT&CK Enterprise中去对应就够了,匹配效率比总结效率高得多。
ATT&CK和态势感知

ATT&CK的关注点是上下文连贯的动作,而态势感知又恰好是根据在一段时间和空间中观察到的元素,同时理解这些元素的意义并预测这些元素在将来的状态,这一点与ATT&CK可以说是不谋而合。

为了防止有同学不清楚态势感知的感念,先说一下何为态势感知,所谓态势感知,总共分为三个阶段:观察、理解和预测。观察就是收集可观测对象的状态和事件,理解就是规整观察到的对象反映出的问题,预测是观察到的对象对未来的影响。通过态势感知我们就可以根据用户提供的上下文信息来动态决定我们的安全策略。

在态势感知系统中,观察数据的分类、归并、关联分析等阶段可以借助ATT&CK对其进行沉淀和格式化表达,使用ATT&CK可以更好地对融合的信息进行综合分析。ATT&CK和杀伤链模型有密切的联系,杀伤链模型同样也适用于态势感知系统中的某些功能。但是需要强调的是:杀伤链预测不等同于态势预测。
在这里插入图片描述
杀伤链还原是对已发生攻击事件的复盘推演,而态势预测是对未来可能发生的事情进行预测。杀伤链分析的对象是攻击线,而态势感知分析的对象网络环境。杀伤链预测的结果可以反馈给态势感知系统形成态势预测的资料。ATT&CK可以帮助杀伤链还原量化指标,杀伤链还原可以帮助态势感知进行态势理解和行为预测。
总结:

本期的ATT&CK模型简介到这里就结束了,下一期美创安全实验室将继续给大家带来ATT&CK系列文章的第二篇,有关ATT&CK的落地与应用知识的分享,希望大家继续关注。
————————————————
版权声明:本文为CSDN博主「美创安全实验室」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_38103658/article/details/106077779

att&ack学习笔记4的更多相关文章

  1. jQuery 学习笔记

    jQuery 学习笔记   一.jQuery概述    宗旨: Write Less, Do More.    基础知识:        1.符号$代替document.getElementById( ...

  2. TCP/IP协议学习笔记

    计算机网络基础知识复习汇总:计算机网络基础知识复习 HTTP协议的解析:剖析 HTTP 协议 一个系列的解析文章: TCP/IP详解学习笔记(1)-- 概述 TCP/IP详解学习笔记(2)-- 数据链 ...

  3. Android学习笔记1 android adb启动失败问题 adb server is out of date. killing...

    下面是Android的学习笔记,原文地址. 我是使用adb devices出现如下红字错误, 使用第一种方法方法,结果关掉豌豆荚就可以了. android adb启动失败问题 adb server i ...

  4. TIMAC 学习笔记(二)

    昨天大体上熟悉了TIMAC自带的CC2530的示范例程,今天先从演示抓包入手,分析四种不同的配置工程在空中传输的差异.随后,会按照扫描.组网.入网等MAC层接口函数入手,结合IEEE 802.15.4 ...

  5. Linux防火墙iptables学习笔记(三)iptables命令详解和举例[转载]

     Linux防火墙iptables学习笔记(三)iptables命令详解和举例 2008-10-16 23:45:46 转载 网上看到这个配置讲解得还比较易懂,就转过来了,大家一起看下,希望对您工作能 ...

  6. TCP/IP详解学习笔记 这位仁兄写得太好了

      TCP/IP详解学习笔记(1)-基本概念 为什么会有TCP/IP协议 在世界上各地,各种各样的电脑运行着各自不同的操作系统为大家服务,这些电脑在表达同一种信息的时候所使用的方法是千差万别.就好像圣 ...

  7. ZooKeeper 学习笔记

    ZooKeeper学习笔记 1.   zookeeper基本概念 zookeeper是一个分布式的,开放源码的分布式应用程序协调服务,是hadoop和Habase的重要组件,是为分布式应用提供一致性服 ...

  8. 基于51单片机IIC通信的PCF8591学习笔记

    引言 PCF8591 是单电源,低功耗8 位CMOS 数据采集器件,具有4 个模拟输入.一个输出和一个串行I2C 总线接口.3 个地址引脚A0.A1 和A2 用于编程硬件地址,允许将最多8 个器件连接 ...

  9. 基于51单片机IIC通信的AT24C02学习笔记

    引言 最近在学习几种串行通信协议,感觉收获很多,这篇文章是学习IIC总线协议的第一篇文章,以后还会再写一篇关于PCF8591 IIC通信的ADDA转换芯片的文章. 关于IIC总线 IIC 即Inter ...

  10. 基于I2C总线的MPU6050学习笔记

    MPU6050学习笔记 1. 简述 一直想自己做个四轴飞行器,却无从下手,终于狠下决心,拿出尘封已久的MPU6050模块,开始摸索着数据手册分析,一步一步地实现了MPU6050模块的功能,从MPU60 ...

随机推荐

  1. Linux下常用组件镜像源、smaba、gcc、ssh、mysql安装

    Linux安装 博主使用的是ubuntu 16.04 apt更换镜像源 这里以更换阿里云镜像源为例. 首先去阿里云官方网站找对应版本系统的镜像源https://developer.aliyun.com ...

  2. OpenCV开发笔记(七十九):基于Stitcher类实现全景图片拼接

    前言   一个摄像头视野不大的时候,我们希望进行两个视野合并,这样让正视的视野增大,从而可以看到更广阔的标准视野.拼接的方法分为两条路,第一条路是stitcher类,第二条思路是特征点匹配.  本篇使 ...

  3. Element-UI 中使用rules验证

    第一种:写在data中进行验证 <el-form>:代表这是一个表单 <el-form> -> ref:表单被引用时的名称,标识 <el-form> -> ...

  4. JVM学习第二篇思考:一个Java代码是怎么运行起来的-下篇

    JVM学习第二篇思考:一个Java代码是怎么运行起来的-下篇 在上一篇<JVM学习第一篇思考:一个Java代码是怎么运行起来的-上篇>中咱们知道类一个Java类的生命周期需要经历以下七个阶 ...

  5. DRBD - Distributed Replication Block Device

    Ref https://computingforgeeks.com/install-and-configure-drbd-on-centos-rhel https://www.veritas.com/ ...

  6. Redis 入门 - 安装最全讲解(Windows、Linux、Docker)

    经过上一章节的介绍,相信大家对Redis已经有了大致的认知,今天主要给大家详细讲解Redis在Windows.Linux.Docker下的安装过程. 01.Windows 下面给大家介绍三种在Wind ...

  7. .NET 开源的功能强大的人脸识别 API

    前言 人工智能时代,人脸识别技术已成为安全验证.身份识别和用户交互的关键工具. 给大家推荐一款.NET 开源提供了强大的人脸识别 API,工具不仅易于集成,还具备高效处理能力. 本文将介绍一款如何利用 ...

  8. 面试官:GROUP BY和DISTINCT有什么区别?

    在 MySQL 中,GROUP BY 和 DISTINCT 都是用来处理查询结果中的重复数据,并且在官方的描述文档中也可以看出:在大多数情况下 DISTINCT 是特殊的 GROUP BY,如下图所示 ...

  9. MyBatisPlus——简介

    概述 MyBatisPlus(简称MP)是基于MyBatisPlus框架基础上开发的增强型工具,旨在简化开发.提高效率 国内开发的技术 特性 无侵入:只做增强不做改变,不会对现有工程产生影响 强大的C ...

  10. 大语言模型(LLM)

    大语言模型 LLM 人工智能 Artificial Intelligence 一门研究如何使计算机能够模拟和执行人类智能任务的科学和技术领域 是研究.开发用于模拟.延伸和扩展人的智能的理论.方法.技术 ...