作者 | 沈平 上海控安可信软件创新研究院研发工程师;来源 |鉴源实验室
01 什么是TARA
TARA是威胁分析与风险评估(Threat Analysis and Risk Assessment)的缩写,其在ISO/SAE 21434中被认为是网络安全分析的核心方法。网络安全管理贯穿于ISO/SAE 21434所提出的汽车系统全生命周期,例如在概念阶段(21434标准第9章节)中,完成“对象”(Item)定义后,就需要进行TARA分析来识别车辆潜在的威胁及其风险等级,以明确网络安全目标,并为后续生成网络安全需求提供输入,最终指导后续的正向开发。在后开发阶段可对网络安全进行分析,得到的安全漏洞及其风险等级可指导后续的风险处置决策。
在ISO/SAE 21434的第15章节中介绍了TARA的方法论,同时在附录H中以汽车大灯系统为例进行了TARA分析。本文也将结合个人经验对该TARA方法论进行解读。
02 TARA方法论解读
在ISO/SAE 21434的TARA例子中共有7个部分,分别为资产定义(Asset Identification)、影响等级评估(Impact Rating)、威胁场景识别(Threat Scenario Identification)、攻击路径分析(Attack Path Analysis)、攻击可行性评估(Attack Feasibility Rating)、风险等级判定(Risk Value Determination)、风险处置决策(Risk Treatment Decision)。这7个部分的顺序并非固定,图1为21434标准中所建议的TARA分析流程。
图1 TARA分析流程概览图
03 关键概念辨析
为更好地介绍TARA分析,接下来将进行关键概念辨析:
1.资产(Asset):本身有价值的物体或者能产生价值的物体。
2.损害场景(Damage Scenarios,DS):描述对象功能与不良后果之间的关系;对道路使用者或者相关资产造成的危害。
3.影响(Impact):由DS造成的损害、对身体伤害的严重度程度估计。(DS造成为危害的影响)
4.威胁场景(Threat Scenarios,TS):造成一个或多个资产的网络安全属性威胁的潜在原因,以造成损害情景。(DS的原因)
5.攻击路径(Attack Path):一套恶意的行为以实现威胁情景。(实现TS的一种或一组方法,是方法不是物理路径!)
6.攻击可行性(Attack Feasibility):描述了成功执行攻击路径的难易程度。
7.风险等级(Risk Value):结合影响等级和攻击可行性来描述道路车辆的网络安全不确定性的影响。
*注:一个资产可以有多个网络安全属性,一个网络安全属性可对应多个损害场景。一个损害场景可对应多个威胁场景,一个威胁场景可对应多个损害场景。
04 对象定义
在进行TARA分析前需要完成对象定义(Item Defintion)来得到明确的分析范围。所谓对象,就是在车辆级别实现功能部件或组件。对象定义包括目标对象的边界、功能、初步系统架构等。
05 资产定义
本身有价值的物体,或者能产生价值的物体,即可定义为资产。资产可分为实体资产、数据资产(包括ECU固件、通讯数据、用户隐私数据、安全算法等)。识别资产所带有的网络安全属性(Cybersecurity Properties)得到带有网络安全属性的资产,进一步可分析其潜在的损害场景(Damage Scenarios,DS),这是资产定义所需要输出的两大产物。可根据对象定义,借助数据流图(Data Flow Diagram,DFD),从进程、数据流、数据存储、交互方角度考虑得到资产,也可基于预定义分类进行枚举、基于损害场景-威胁场景得到资产。
对于资产的网络安全属性最常用的确定方法为微软的STRIDE模型,该模型通过威胁来映射到相应的网络安全属性,常用的安全属性包括完整性-I、机密性-C、可用性-A。如表1所示。
表1 STRIDE模型->安全属性映射表
对于损害场景的描述可包括对象功能与不良后果之间的关系、外部环境、对道路使用或者相关资产造成的危害。
损害场景示例,假设资产为车辆行驶显示数据,网络安全属性为机密性,那么可以得到损害场景为车辆行驶显示数据被盗,造成乘客隐私信息泄露。如表2所示。
表2 损害场景示例表
06 影响等级评估
对于影响等级的评定可从以下四个评判因子:Safety 安全、Financial 财产、Operational 操作、Privacy 隐私(S、F、O、P)来评定DS的危害影响。每个评判因子评级分为四档:Severe 严重的、Major 重大的、Moderate 中等的、Negligible 微不足道的。对于影响等级评估除了标准附录F以外还可参考J3601。表3-6详细展示了ISO 21434中对于影响等级的评定打分。
表3 Safety 安全评判因子等级评定表
表4 Financial 财产评判因子等级评定表
表5 Operational 操作评判因子等级评定表
表6 Privacy 隐私评判因子等级评定表
07 威胁场景识别
威胁场景是资产被破坏的原因,同时也是损害场景的原因。对于威胁场景的描述可从以下几个角度来考虑:目标资产、资产的安全属性损失、安全属性损失的原因。
威胁场景示例,假设资产为车辆行驶显示数据,网络安全属性为机密性,那么得到威胁场景为行车显示数据在车内传输过程中,数据被篡改,导致行车显示数据的保密性和私密性被破坏。如表7所示。
表7 威胁场景示例表
08 攻击路径分析
对于攻击路径的识别分为两种方法,一种为自顶向下的方法,通过分析实现对应威胁场景的不同方法来推断攻击路径,可借鉴攻击树、攻击图,通过R155进行自检。另外一种为自底向上的方法,从漏洞(Vulnerability)出发, 如果该攻击路径没有导致威胁场景,则可停止该条路径的分析。
图2 攻击树架构图(From EVITAD2.3)
攻击路径示例,对应之前的威胁场景有如下攻击路径,设备接入通信信道和嗅探通信信道包。如下表8所示。
表8 攻击路径示例表
09 攻击可行性评估
评估攻击可行性在标准附录G中列举了三种方法,基于攻击潜力(重点介绍)、基于CVSS、基于攻击向量。
攻击潜力方法对攻击路径实现的难易程度评估分为四个等级:High、Medium、Low、Very Low,主要从以下五个角度考虑:
1. 经历时长(Elapsed Time),指基于专家知识来识别漏洞到最后利用漏洞所花费的时间;
2. 专业知识(Specialist Expertise),指攻击者的能力包括技能、经验等;
3. 对象或组件的知识(Knowledge of the Item or Component),指攻击者对于对象和组件所需要的信息;
4.窗口期(Window of Opportunity),指能够成功攻击的条件因素;
5.设备(Equipment),指攻击者发现漏洞或执行攻击所需要的工具。
根据以上五个维度的打分,相加得到总分,然后根据攻击可行性等级评定表(如表9所示)映射到响应的攻击可行性等级。
表9 攻击可行性等级评定表
在标准中采纳了CVSS(Common Vulnerability Scoring System,通用漏洞评分系统)中可利用度的度量标准。主要从攻击向量、攻击复杂性、权限要求和用户交互四个维度进行评估。
基于攻击向量是对攻击可行性评估比较粗略的方法,以攻击距离远近来评定,主要为网络(Network)、相邻(Adjacent)、本地(Local)、物理(Physical)四个标准进行评定。
10 风险等级判定
危害场景的影响程度和相关攻击路径的可行性通过风险矩阵运行确定一个风险值。如果一个威胁场景对应多损害场景,可为每个影响等级确定一个风险等级。如果一个威胁场景对应多条攻击路径,则取攻击可行性最大的。表10为风险矩阵表。
表10风险等级评定矩阵表
11 风险处置决策
对于每一个威胁场景及其风险值,在标准中建议了以下四种决策:
· 消除风险,通过消除风险源来避免风险,或者决定不开始或继续进行引起风险的活动;
· 缓解风险,通过提供网络安全目标和概念来降低风险;
· 分担风险,购买保险或者与供应商签订风险转移合同;
· 保留风险,通过提供关于风险的网络安全声明来保留风险。
同时在R155中也有对于风险处置的决策可参考。
参考资料:
[1] ISO/SAE 21434:2021 Road vehicles — Cybersecurity engineering.
[2] EVITAD2.3 Security requirements for automotive on-board networks based on dark-side scenarios.
[3] UN Regulation No. 155.
[4] 浅析网络安全标准 ISO/SAE 21434 (十一)TARA分析方法. https://zhuanlan.zhihu.com/p/548263655.
[5] 信息安全(Cyber Security)之TARA分析(二). https://zhuanlan.zhihu.com/p/438190748.
[6] 浅谈ISO/SAE 21434汽车网络安全标准(二)风险评估方法(上). https://www.eet-china.com/mp/a61838.html.
[7] TARA攻击树分析方法论. https://blog.csdn.net/Geely_Tech/article/details/123635208.