回顾自己写的文章,大多都是实践总结类,质量有高亦有低。在实践之前,其实也会去看最佳实践案例,但不太感兴趣行业报告,总觉得很高大上且空洞,获益较浅。不过,随着这几年陆续接触到一些做科研的老师、重视理论和方法论的客户…观点逐渐产生了改变。在回顾看这类报告时,似乎已经能够看出点内容来指引实际工作。遂,计划新写一个系列文章,专门用于记录和分享研读行业报告之后的收获、及应用。
该报告《供应链攻击威胁局势报告》,至少有三大亮点收获:
本文将供应链攻击的定义和分类系统进行摘录,并尝试将所学应用于分析当下热议的XZ/liblzma,以及分析即将开始的国家级攻防实战演习筹备。
01
—
1.1 ENISA
欧盟网络安全局(the European Union Agency of Cybersecurity),成立于2004年,致力于整个欧洲实现高水平网络安全的联盟。为欧盟网络政策做出贡献,通过网络安全认证计划增强 ICT 产品、服务和流程的可信度,与成员国和欧盟机构合作。
ENISA对外发布了很多权威的网络安全报告,官网上有很多细分领域的文章,值得网络安全从业人员的关注。
1.2 Threat Landscape
ENISA在2021年发布的供应链攻击态势报告,虽说是快3年前的报告,但仍然是供应链领域发布的最新版本。
1.3 Report Structure
该报告分七个章节围绕供应链攻击的定义、生命周期及分类进行介绍,最后用24个攻击案例进行进行剖析。此外还将供应链攻击与APT进行关联,认为供应链攻击的每个组成部分可看作APT攻击,其生命周期一般也遵循APT攻击的攻击阶段。但是供应链分析系统描述了供应链攻击本身的所有详情,因此有可能成为MITRE ATT&CK®知识库的补充。
02
—
供应链是指创建和传递最终解决方案或产品时,所涉及到的流程、人员、组织和分销商。在网络安全领域,供应链涉及范围很广泛,包括资源(硬件和软件)、存储(云上或本地)、分发途径(web应用,线上商店)以及管理软件。
在一个供应链中有四个关键元素:
一个供应链攻击至少是两次攻击的结合,第一个攻击是供应商及其资产,第二个攻击是供应商提供服务的客户及其资产。
03
—
该报告提出一种分析系统对供应链攻击进行分类,并将后续分析结构化。该分类系统考虑到供应链的四个关键元素以及攻击者所使用的技术。该分析系统有助于组织机构了解供应链攻击的多个组成部分:供应商攻击技术、供应商被攻击资产,客户攻击技术和客户被攻击资产:
* Drive-by Compromise[T1566],路过式攻击,如挂马,网站上的恶意脚本通过恶意软件传染给用户。
3.1 Attack techniques used to compromise a supply chain
用于攻陷供应链的攻击技术,是指攻击“如何”发生(指攻击类型),而不是用“什么“发动了攻击(指实际实现攻击的手法)。如下列举的攻击技术类别,涵盖了供应链攻击中最常使用的攻击技术。任何一个类别中,都可能用到不止一种攻击技术。
* Conterfeiting(伪造),例如恶意程序模拟USB启动,植入后门。
3.2 Supplier assets tagerted by a supply chain attack
遭攻击的供应商资产指的是针对供应商的攻击目标是“什么”,便于发动后续攻击(后续在此基础上,攻击供应商的客户)。一项或多项目标资产通常和最终目标之间存在直接关系,而且通过分析受影响资产清单,就很有可能了解攻击者的最终意图。
3.3 Attack techniques used to compromise a customer
用于攻陷客户的攻击技术,指在通过供应商攻陷客户过程中使用的攻击技术。每种技术识别攻击如何发生而非被攻击的是什么(这个概念如3.1中一样,是类型与具体事项方法的关系),同一起攻击中可能使用了多种攻击技术。
* 值得关注:Trusted Relationship[T1199], 如信任证书、信任产品自动升级、自动备份,这非常难防守。
遭受攻击的客户资产,通常是攻击者的主要和终极目标。
每个元素说明客户遭受攻击的是什么,不同的攻击技术可能用到相同的攻击资产上。
04
—
基于分类系统的实战应用
在该报告中,个人认为最有用的要数分类系统,可以把它用作指南模板,用于分析新型的潜在供应链攻击。用两个近期相对贴近的案例,进行简单分析以落地所学的方法论,如下所述:
4.1 XZ/liblzma后门案例浅析
本周六一大早,看到工作群里被领导艾特准备XZ应急。这是一起针对开源组件的投毒事件,看了下openwall上的分析,攻击方法和危害远比之前遇到的要复杂。
随着研究的人越来越多,从深度上大概知道了其复杂的利用原理、从广度上看到了可能影响到其他生态的组件。信息比较多,对外发文的除了安全厂商,还有很多从业者的公众号。看多了感觉思路不清晰、甚至有点乱,于是就按照分类系统框架进行了梳理:
近期,有小道消息称今年的国家级实战演习聚焦在:软件供应链安全。相关部门欲通过实战对抗,发现防守方供应链安全管理存在问题,从而督促防守方加强供应链安全管理。但若要参加演习,仅加强自身的供应链安全管理还不够。因为每家公司就是供应链上的一环,受上游供应商影响的同时,还提供软件或服务给下游客户。故可借助分类系统辅助分析,得出应该加强安全建设的具体方向:
在报告的原始内容基础上,依据实际情况对供应商和客户使用到的攻击方法和资产进行调整,如:
关于该分类方法的落地,可以简单的总结为:结合实际情况,按照分类进行实例化,从而梳理出面临的风险途径并加以治理。如就安全公司提供安全产品而言,在供应商表格的右侧可提炼出五类风险需要治理。进而再切换到用户视角,可能传递风险的途径有产品漏洞(对应供应商风险中,OEM产品漏洞、三方组件漏洞和自研产品漏洞)和产品升级信任关系(对应供应商风险中,三方组件投毒、产品发布流程攻击、产品云端公共服务攻击等)。
至此已经分析出从供应链视角,安全厂商或软件提供商要做好供应链安全,需要重点关注的三个方面:产品漏洞,产品升级机制/通道安全,及对供应商的安全管理。