文章目录
概述
TARA,全称Threat Analysis and Risk Assessment,威胁分析与风险评估,是汽车电子电气架构中常用的网络安全威胁分析与风险评估方法论。TARA从道路交通参与者角度,确定道路交通参与者受威胁场景影响的程度。
注:对照功能安全HARA分析:
HARA(Hazard Analysis and Risk Assessment)是指危害分析和风险评估。危害分析:危险分析是整个过程的第一步,用来评估风险的ASIL等级。危险分析的目的是确定ASIL水平和所需的安全状态。风险评估(包含两方面):危害识别:识别可能造成危害的危害和风险因素。风险分析和评估:通过S、E和C分析和评估与该风险相关的风险。HARA是概念阶段的工作产品,即ISO26262V循环的第3部分。本标准的这一部分提供了HARA的详细说明。
在ISO/SAE 21434中,主要包含了资产识别、威胁场景识别、影响等级、攻击路径分析、攻击可行性等级、风险评估上确定、风险处置决策,共7个基本的步骤,此7个基本步骤不一定需要完全按照ISO/SAE21434的顺序进行。ISO/SAE21434标准中,针对网络安全活动做了很多的定义,同时也对安全活动的裁剪做出了定义和分析方法。
如上图所示
对应着上述七个步骤,TARA分析有七项基本目标:
(1)15.3资产识别,可以根据不同的维度去识别自身控制器的资产
(2)15.4威胁场景
(3)15.5危害评级,确定威胁场景的影响等级
(4)15.6攻击路径,即威胁场景的攻击路径
(5)15.7攻击可行性评级,攻击路径实施的难易程度
(6)15.8风险值确定,
(7)15.9风险处理决策;
2.资产识别
资产:一切有意义的东西都可以叫做资产(通信、数据、硬件等)
在资产识别环节,需要识别出TARA目标范围内那些具有网络安全特性的资产,这些资产的网络安全属性遭到破坏时可能产生一些损害场景。通常情况下,这里指的是软件的信息资产(或称为数据资产),在某些特殊情况下,也可能会是硬件资产。
如:配置数据、代码、标定数据、加密密钥、数字签名可以说都是数据资产;收发的报文、或者无线都可以是通信资产;PCB上的芯片是硬件资产;还有可能存在的调试接口,对外的OBD等
注:安全属性:最基本的是CIA三元组(Confidentiality-保密性,Integrality-完整性,Availability-可用性),除此之外,还可以衍生出真实性(Authenticity)、不可抵赖性(Non-Repudiation)等
3.威胁场景识别(见15.4章节)
在进行威胁场景识别时,可以包括或者关联其它更进一步的信息。例如,损害场景,以及资产、攻击者、方法、工具、攻击面之间技术上的相互依赖性。另外,威胁场景识别可以使用小组讨论的方法,也可以使用诸如EVITA、TVRA、PASTA、STRIDE等系统化的威胁建模方法。在进行描述威胁场景时,主要进行描述目标资产、所破坏的资产属性和对应的威胁场景。
4.危害评级(见15.5章节)
应根据安全、财产、操作和隐私(分别为S、F、0、P)影响类别中对道路使用者的潜在不利后果评估损害情景。
在对损害场景的影响评级时,除了考虑这几个维度之外,还需要确定每个维度的影响级别,比如:极其严重(severe)、高(major)、中等(moderate)、忽略不计(negligible)。
4.1安全(见附录F2)
4.2财产(见附录F3)
4.3操作(见附录F4)
4.4隐私(见附录F5)
5.攻击路径分析(见15.6章节)
应对威胁场景进行分析,以确定攻击路径。
注1:攻击路径分析可基于:自上而下的方法,通过分析实现威胁场景的不同方式(如攻击树、攻击图和自下向上的方法,通过识别的漏洞构建攻击路径。
注2:如果部分攻击路径不会导致威胁场景的实现,则可以停止对该部分攻击路径的分析。
攻击路径应与攻击路径可实现的威胁场景相关联。
注3:在产品开发的早期阶段,攻击路径通常不完整或不精确,因为具体实施细节尚不清楚,无法识别特定漏洞。在产品开发过程中,攻击路径可以随着更多信息的可用而更新,例如,在漏洞分析后。
6.攻击可行性(见15.7章节)
攻击可行性评级的主要目的是,给每条攻击路径确定一个攻击可行性的等级。具体的攻击可行性等级,可以基于组织的需要来定义,比如高、中、低。
更进一步,攻击可行性评级的方法有多种,比如基于攻击潜力、基于CVSS、基于攻击向量等。 ISO/SAE 21434中指出可以基于这三种方法中的任何一种进行攻击可行性评级。
注:CVSS相关可以参见路径:http://www.first.org
6.1基于CVSS的方法
为了评定信息技术的安全漏洞,常用的方法是CVSS。在CVSS的基本指标组中的“可利用性指标”可以用来评估攻击的可行性。可利用性指标主要包括:攻击矢量、攻击复杂性、需要的特权、用户互动。
对于CVSS指标的评估,需要根据预先定义的范围,为每个指标设定数字值。整体的可利用性指标值可以根据下面的简单公式计算产生。
E = 8.22 × V × C × P × U
其中,E是整体可利用性指标值;V是攻击矢量指标值,范围是[0.2, 0.85];C是攻击复杂性指标,范围是[0.44, 0.77]; P是所需特权的指标值,范围是[0.27, 0.85];U是用户互通的指标值,范围是[0.62, 0.85]。这样一来,可利用性指标的范围在[0.12, 3.89]。具体打分可以参见CVSS中的评估。
注:https://www.first.org/cvss/v3-1/cvss-v31-specification_r1.pdf
6.1.1攻击矢量
6.1.2攻击复杂度
6.1.3需要的权限
6.1.4用户互动
下表是ISO 21434中给出的CVSS可利用性指标与攻击可行性之间的映射示例,每个范围都是等距的。
7.风险值确定
对于每一种威胁场景,需要根据其相关损害场景的影响,以及相关攻击路径的攻击可行性来确定风险值。
如果一个威胁场景可以对应一个以上的损害场景;或者一个损害场景在一个以上的影响类别中产生影响,则建议给每个影响等级单独确定一个风险值。
此外,如果一个威胁场景可以与一个以上的攻击路径相对应,则可以将相关的攻击可行性评级结果酌情汇总,比如将攻击可行性评级最大的攻击路径赋予威胁场景。
威胁场景的风险值应设置在[1, 5]上,其中1代表最小的风险,5代表最大的风险。
在实践中,可以使用风险矩阵法或定义好的风险公式来确定威胁场景的风险值,风险矩阵法比较常用。下图所示的是ISO 21434附录中给出的风险矩阵示例。
8.风险处置决策(见15.9章节)
对于每个威胁情景,考虑到其风险值,应确定以下一个或多个风险处理选项
避免风险;例1:通过消除风险源来避免风险,决定不开始或继续导致风险的活动
降低风险;
分担风险;例2:通过合同分担风险或通过购买保险转移风险。
保留风险。注意,保留风险和分担风险的理由记录为网络安全索赔,并根据第8条进行网络安全监控和漏洞管理
转自https://zhuanlan.zhihu.com/p/590943970