【牛人访谈】红蓝对抗之蓝队防守:ATT&CK框架的应用
星期五, 七月 10, 2020
企业大规模数字化转型的浪潮下,各类网络入侵事件频发、APT和黑客团伙活动猖獗,合规性驱动的传统安全防护建设已无法满足需求。近年来随着各级红蓝对抗行动的开展,企业安全建设正逐步向实战化转型,而MITRE(一个向美国政府提供系统工程、研究开发和信息技术支持的非营利性组织)提出的ATT&CK框架正是在这一过程中能够起到指导性作用的重要参考。
本期牛人访谈,安全牛有幸邀请到多年来深耕ATT&CK框架研究与ATT&CK实践应用场景探索的杭州安恒信息的刘博来分享他在红蓝对抗中的如何部署ATT&CK框架,希望能给在有此方面研究需求的读者们有所启发。
刘博 杭州安恒信息技术股份有限公司高级副总裁 首席科学家
ATT&CK框架在2019年的Gartner Security & Risk Management Summit会上,被F-Secure评为十大关注热点。ATT&CK是一套描述攻击者战术、技术和执行过程的共享知识库,能够关联已知的黑客组织、攻击工具、检测数据源和检测思路、缓解措施等内容。ATT&CK能够全面覆盖洛克希德-马丁公司提出的Kill Chain内容,并在此基础上提供更细粒度的攻击技术矩阵和技术详情。ATT&CK分为三个部分,分别是PRE-ATT&CK,ATT&CK for Enterprise和ATT&CK for Mobile。其中,PRE-ATT&CK包含的战术有优先级定义、选择目标、信息收集、脆弱性识别、攻击者开放性平台、建立和维护基础设施、人员的开发。ATT&CK for Enterprise包括的战术有初始化访问、执行、持久化、权限提升、防御逃避、凭据访问、发现、横向移动、收集、命令与控制、数据外传、影响。这些基于APT组织及黑客团伙的披露信息进行分析梳理的详细信息能够有效指导实战化的红蓝对抗,目前已在多个领域得到较好的应用。
在红蓝对抗中,防守方都可以按照事前、事中、事后三个阶段进行应对,在ATT&CK框架的指导下实现安全体系建立、运营和提升的闭环改进。
攻击面评估
攻击面指企业在遭受内、外部入侵时可能的起始突破点或中间跳板,包括但不限于:对外提供业务的Web系统、邮件系统、VPN系统,对内提供服务的OA系统、运维系统、开发环境,员工使用的各类账号、办公终端等。
企业的攻击面是广泛存在的,在企业内进行攻击面评估属于信息收集和脆弱性识别的过程,能够帮助企业在早期应对攻击者入侵活动。该过程映射到攻击链中属于“侦察”阶段。
由于攻防的不对称性,在红蓝对抗中防守方往往处于弱势,攻击方只需要单点突破即可,而防守方需要建立覆盖所有攻击面的纵深防御体系,很难做到万无一失。但在信息收集阶段,是为数不多的防守方占优的阶段,主要原因包括:
ATT&CK框架内所有攻击技术都有对应的攻击目的和执行攻击所需的环境、依赖,对其分解可以提取每项攻击技术适用的攻击对象,参照企业内的资产和服务,评估攻击面暴露情况和风险等级,能够帮助制定有效的攻击面缩减、消除或监控手段。例如,防守方需要在红蓝对抗前检查企业内部的共享目录、文件服务器、BYOD设备是否符合安全基线要求,是否存在敏感信息,并针对这些内容设定合规性要求和强制措施,以缩减该攻击面暴露情况。
综上,ATT&CK框架可以帮助防守方了解攻击目标、提炼攻击面并制定攻击面缩减手段,同时也能够通过攻击面评估为后续增强威胁感知能力、总结防御差距、制定改进方案提供参考标准。
威胁感知体系建立
传统的安全防护和管控措施存在的主要问题在于没有全景威胁感知的体系,无法及时有效地监测威胁事件、安全风险和入侵过程。威胁感知体系的建立,可以有效地把孤立的安全防御和安全审计手段串联起来,形成完整的企业安全态势,为防守方实现实时威胁监控、安全分析、响应处置提供基础。建立威胁感知体系主要包括以下准备工作:
* We can’t detect what we can’t see.
在进行数据源规划时,需根据企业实际存在的攻击面、威胁场景和风险情况进行设计。例如:针对员工邮箱账号可能会遭受攻击者暴力破解、泄露社工库撞库的风险,需要采集哪些数据?首先需要考虑企业实际的邮件系统情况,比如使用自建的Exchange邮件服务,需要采集的数据包括:Exchange邮件追踪日志、IIS中间件日志、SMTP/POP3/IMAP等邮件协议日志。其次还需要具体考虑攻击者是通过OWA访问页面爆破?还是通过邮件协议认证爆破?还是通过Webmail或客户端接口撞库?不同的企业开放的邮箱访问方式不同,暴露的攻击面和遭受的攻击方法也有所区别,需要根据实情梳理所需的数据源。
在数据源梳理上,由于涉及到的威胁类型、攻击方法众多,考虑周全很困难,可以通过参考ATT&CK框架选取企业相关的攻击技术,统计所需的数据源类型,并梳理数据源采集、接入优先级。关于数据源优先级筛选,2019年MITRE ATT&CKcon 2.0会议上Red Canary发布的议题:Prioritizing Data Sources for Minimum Viable Detection 根据总体数据源使用的频率做了Top 10排序,如下图所示:
该统计结果并未考虑企业实际攻击面范围、数据源获取的难易程度等,不应生搬硬套照抄。但在大部分情况下可以考虑先构建包括网络镜像流量、终端行为审计日志、关键应用服务日志在内的基础数据源的采集规划,再通过实际的检测效果增强补充。
ATT&CK框架在这里就起到了非常重要的参考作用,框架中的每项攻击技术,知识库都描述了相应的检测手段和过程,以T1110暴力破解为例,其Detection描述如下图所示。
虽然没有抽象出具体检测方法、检测规则,但提炼出了需要监控的设备以及能够提炼攻击痕迹的日志。参考这部分描述,防守方能高效的通过相关资料收集、内部攻击技术模拟、特征提炼等方式完成检测方法和检测规则的开发、部署、测试。此外,高级持续性威胁(APT)使用了较多的白利用技术,无法有效区分攻击者和普通工作人员。但通过开发检测规则对数据源进行过滤提炼,打上技术标签,后续再综合所有异常行为能够发现此类攻击活动。这样再与传统的检测方法结合,就提供了更加有效的补充手段。
综上,威胁感知体系的建立,需要通过数据源梳理和检测规则开发来完成基础准备工作,ATT&CK框架可以帮助防守方快速了解所需数据源、并协助开发对应的检测规则,使防守方脱离安全可见性盲区,实现安全防护能力的可量化、可改进。
内部模拟对抗
为摸清目前网络安全防御能力并找出薄弱点,部分企业会进行内部红蓝对抗模拟演练,ATT&CK知识库在模拟红队攻击、组织内部对抗预演上具有非常高的参考价值。
综上,内部模拟是红蓝对抗实战阶段验证所有准备工作有效性的手段,作为大考前的模拟考,对防守方具有很大的查漏补缺、优化完善的作用,而ATT&CK框架在这个阶段,对模拟红队攻击、协助蓝队查找问题都起到了参考作用。
准备过程越充分,在实际红蓝对抗行动开展阶段对防守方来说就越轻松。经过验证的威胁感知体系在这里将起到主导作用。
资产风险监控
除了封堵、上报潜在的红队攻击IP外,对于已突破边界防护进入内网漫游阶段的攻击者,基于ATT&CK框架能够有效识别资产(终端/服务器)风险,发现疑似被攻陷的内网主机。
通过为每个资产创建独立的ATT&CK主机威胁分布矩阵图,汇聚该主机上近期被检测到的所有攻击技术活动,然后根据该矩阵图上所标注的攻击技术的分布特征训练异常模型,监控主机是否失陷。异常模型从以下三个维度识别攻击:
以下图为例,主机短时间内触发一系列“发现”战术下的攻击技术,这在日常运维中是较为少见的,与该主机或同类型主机基线对比偏差非常大。在受害主机被控制后可能会执行大量此类操作,故该机器风险很高,判定为失陷/高危资产。
可疑进程判定与溯源
根据采集的终端行为日志(包括:进程活动、注册表活动、文件活动和网络活动),可以通过唯一进程ID(GUID)进行父子进程关联操作。当发现可疑进程活动时,能够回溯该进程的进程树,向上直到系统初始调用进程,向下包含所有子进程,并且为进程树中所有可疑进程添加ATT&CK攻击技术标签,如网络请求、域名请求、文件释放等丰富化信息,帮助防守方的安全分析人员判断该进程是否可疑并及时采取处置措施。
以下图为例,发现可疑进程wscript.exe后溯源其进程树,其中标记了感叹号的子进程为命中了ATT&CK攻击技术的进程,无感叹号的子进程也属于该可疑进程树下,有可能是攻击者利用的正常系统进程或规避了检测规则导致未检出的进程。通过该进程树展示的信息,可以直观发现wscript进程及其派生的powershell进程存在大量可疑行为,这些进程信息也为后续联动终端防护软件处置或人工上机排查处置提供了充足的信息。
应急响应对接
在发现失陷资产、溯源到可疑进程后可导出其进程树上的进程实体路径、进程命令行、进程创建文件、进程网络连接等信息提交给应急响应组进行清除工作。应急响应组通过以上信息可以快速在主机上处置并开展入侵路径分析,通过回溯攻击者入侵植入木马的手段,进一步排查是否存在数据缺失、规则缺失导致的攻击漏报;并通过关联所有具有相似行为的终端,确认是否存在其他未知失陷资产。
以上基于ATT&CK框架建立的资产风险监控和可疑进程判定方法,能够有效地在红蓝对抗过程中及时发现攻击者攻击成功的痕迹,并为溯源和应急响应处置提供数据支撑。而这些都脱离不了以威胁感知体系为核心的蓝队建设思路,更多与ATT&CK框架适配的应用方法也会在后续不断丰富、增强。
防御效果评估
在红蓝对抗结束复盘阶段,防守方对防御效果的评估是非常重要的环节。具体包括以下内容:
防御效果评估是红蓝对抗复盘阶段重要的总结过程,也为后续持续优化改进提供参考。在这里ATT&CK框架起到的作用主要是统一攻防双方语言,将每一个攻击事件拆分成双方都可理解的技术和过程,为红蓝对抗走向红蓝合作提供可能。