【Zeekr_Tech】TARA 攻击树分析方法论
本文作者:极氪软件及电子中心-Oliver Xiao
TARA 分析帮助开发人员系统性地找出目标存在的安全问题,然后妥善地处置这些问题,重点在于系统性,而不是纯靠开发人员的灵光一闪。 ISO 21434 定义的 TARA 规范示意图如下。“风险值 = 攻击可行性 x 损害程度”作为中心思想,以此判定 CAL 等级,确认处置措施。攻击树分析是核心的环节,表述了抽象的威胁场景具体有哪些实现路径。下面简要分析如何做攻击树模型。
图 1. TARA 方法论
攻击树模型的一个总要前置条件是确认安全目标。这里以整车电子电气架构作为一个示例去考虑系统边界,暴露在最外侧的是各种物理接口和传感器,再往内就是各种通讯总线,处于端点的是控制器。从信息交互实体和传播路径考虑,边界内的主要的安全资产可以分类为:
1. 各类物理接口
2. ECU 固件
3. 总线通信
4. 用户数据
5. 密码学相关数据
6. 服务或功能
图 2. 整车系统边界
安全属性模型,有经典的 CIA,还有 STRIDE 威胁模型(对应 6 个属性),对于车载网络环境,更适合的是 EVITA 提出的模型,包含以下安全属性:
-真实性(身份认证)
-完整性
-可用性
-授权
-抗否认性
-新鲜度
-匿名
-机密性
我们将资产和安全属性做一个映射,如下表所示:
安全目标可以看作是保护资产的安全属性,那么威胁则是资产的安全属性可能遭到破坏的场景,损害场景则是相应威胁可能导致的破坏或造成的损失。
安全目标 = 保护资产 X 的安全属性 Y
威胁场景 = 何种方式破坏资产 X 的安全属性 Y
损害场景 = 破坏资产 X 的安全属性 Y 后可能导致的损害
以 ECU 固件的完整性为例,安全目标是保护 ECU 固件的完整性。完整性遭到破坏,即固件遭到篡改,为 ECU 固件的威胁场景。而具体遭到篡改的数据位置不同,造成的后果也不同,可能有以下几种损害场景:
1.篡改了代码段,修改了 ECU 功能,车辆功能发生变化
2.篡改了代码段,植入后门
3.篡改了代码段,屏蔽了认证过程,提升权限
4.篡改了标定数据,车辆性能发生了变化
5.篡改了车辆配置,激活了未付费购买的功能
具体的攻击树实现路径分析,严重依赖于网络安全开发人员的经验。我们也可以参考一些开源的攻击路径数据库,如 CAPEC。CAPEC 数据库从多个视角对攻击路径进行了分类,常用的有按攻击机制分类和按域分类。这些分类也可以作为参考,进行枚举攻击路径。
按照攻击域来分类:
3000 - Domains of Attack
Software - (513)
Hardware - (515)
Communications - (512)
Supply Chain - (437)
Social Engineering - (403)
Physical Security - (514)
按照攻击机制来分类:
1000 - Mechanisms of Attack
Engage in Deceptive Interactions - (156)
Abuse Existing Functionality - (210)
Manipulate Data Structures - (255)
Manipulate System Resources - (262)
Inject Unexpected Items - (152)
Employ Probabilistic Techniques - (223)
Manipulate Timing and State - (172)
Collect and Analyze Information - (118)
Subvert Access Control - (225)
R155 法规也提供了一个威胁的攻击方法清单(附录 5 表格 A1),可用于自查枚举结果是否完备。
由于攻击树和对应的措施严重依赖专家经验,建议建立一个汽车电子电气架构的通用技术攻击路径数据库,数据库有多个视图,可以从资产类别、安全属性、攻击机制等方式进行分类。再配合可视化工具从系统的拓扑图上分析,从根节点出发,沿着数据流画出攻击路径上需要经过的节点,以及每个节点或通讯管道的哪些安全属性遭到破坏。我们可以先不考虑每个步骤的可行性有多大,画出如下路径图。
图 3. 攻击路径上标注节点安全属性示例
然后开发人员可以适用工具从数据库中根据安全属性、资产种类查询到对应节点存在哪些攻击方法,包括攻击方法描述、前置条件、攻击原理与示例说明、相关漏洞、减缓措施,并从前置条件可以推断此攻击方法是否适用当前节点,即可完成攻击树模型的确定。当电气拓扑很复杂,或者是目标资产的分发路径多样化,导致攻击分支过于庞杂时,可以做适当的裁剪,当识别到某个路径的可行性非常低时,可无需继续向下展开分析。
目前极氪 2.0 区域控制电气架构已开发完成,在这个电气架构开发过程中已经融入了一套相对完善的整车信息安全架构策略,作为走在行业前列的极氪,要力图打造最安全的汽车,所以在 2.0 电气架构车型开发上,信息安全团队从整车功能清单及整车控制单元为切入口,再一次全面的进行 TARA 分析,完善通用技术攻击路径数据库,同时极氪软件及电子中心将与信息安全实验室在 2.0 电气架构的车型上开展云、管、端全维度的红蓝军攻防对抗试验,通过攻防试验不断加固极氪车型的信息安全盾牌。
目前由极氪软件及电子中心主导的基于中央计算平台的 3.0 电气架构正在如火如荼的研发中,在新的电气架构中,因其可承载功能将变得有无限可能,基于整车功能清单的 TARA 分析已不再适用,整车的功能不再是一成不变的,也不仅仅是通过激活某个已预埋的功能实现功能扩展,而是在未来无数新的应用场景下,更多由广大外部开发者实现,存在更多的不确定性。TARA 方法论虽然不会发生大的变化,但分析目标将会从功能划分转到基础通信架构、ZEEKR_OS、整车原子服务等维度,夯实新一代电气架构的信息安全有了新的挑战。
版权声明: 本文为 InfoQ 作者【Zeekr_Tech】的原创文章。
原文链接:【http://xie.infoq.cn/article/77cb3095c61acea21d61a8dd6】。文章转载请联系作者。
评论