青骥编译 l 威胁分析和风险评估(TARA)

来源:公众号“汽车信息与安全”
2021-05-21
3550

青骥信息安全原创编译系列专题

图片
    信息安全威胁分析与风险评估(TARA)是识别潜在的信息安全威胁,评估与威胁相关的风险的过程。SAE J3061,作为业内知名的定义了信息物理车辆系统(cyber-physical vehicle systems)安全开发过程的标准,第一次正式提出了TARA的定义并强调了其在汽车信息安全开发过程中的重要性。
“HEAVENS”模型参考功能安全工程的流程,并设计了与功能安全标准 ISO26262 一致的风险评估框架,以导出专门针对汽车系统的信息安全要求。类似于ASIL等级,“HEAVENS”模型提出了“security level”的概念,以度量在安全风险管理过程中风险水平的情况。“HEAVENS”模型与“EVITA”方法不同之处有2点,一是在威胁识别时,使用STRIDE方法来识别潜在的威胁而不是使用基于每个资产的安全目标来定义安全问卷的攻击树,因此它更适用于非安全专家;另外在影响等级评估时,HEAVENS参考了多项相关标准及法规要求,比EVITA的评分规则更详细更有据可依。



1.整体流程
“HEAVENS”提出的风险评估工作由四部分组成,工作流程如图1 所示,该流程可以灵活的与功能安全流程相结合。
图片
该框架使用以下四个安全目标(security objectives):
1. 功能安全——确保车辆使用者和其他道路使用者的安全等;
2. 财务——防止欺诈性商业交易、盗窃车辆、损害利益相关者的声誉、以及保险和保修欺诈等
3. 操作——保持所有车辆的预期操作性能和智能网联功能;
4. 隐私和法规——保护车辆司机的隐私,以及车辆制造商及其供应商的知识产权;

1.1 定义待评估系统

该方法从正在评估的系统的定义开始。 根据情况和需要评估的内容,系统可以对应不同级别的颗粒度:如整个 E/E 体系结构、某个由几个电子控制单元(ECU实现的车辆功能、单个ECU、ECU 硬件或ECU 软件。

1.2 威胁分析

当确定好需要评估的系统后,就可以开始威胁分析了。威胁分析包括两个步骤:  
第一步是确定所有资产,在资产识别过程中,主要考虑的问题是系统的哪些部分具有价值,需要安全保护。 例如,考虑隐私敏感信息,如车辆位置数据或特定 ECU 上的专有软件。 
第二步是确定对这些资产的相应威胁。在识别威胁时,每项资产都要对照潜在威胁清单进行检查。目前有一些用于识别威胁的分析方法,只要最后可以得出“资产/威胁对列表”的结果便可以结合本方法一起使用,而在这里我们选择了微软公司提出的STRIDE威胁建模方法,因为其已多次在汽车系统中使用并且有很好的工具支持。
    STRIDE 是使用的六个威胁类别的缩写,并将威胁与所对应的安全属性相关联,具体见表1。
 1 STRIDE威胁列表

威胁
定义
对应的安全属性
Spoofing
冒充他人身份
认证
Tampering
修改数据或代码
完整性
Repudiation
否认做过的事
不可抵赖性
Information Disclosure
机密信息泄露
机密性
Denial of Service
拒绝服务
可用性
Elevation of Privilege
未经授权获得许可
授权

威胁建模针对的是一个个具体场景,针对每个业务场景可以使用STRIDE方法识别可以攻击的所有资产,并通过使用工具绘制数据流图(DFD)来建模系统中的数据流来进行自动威胁识别,生成威胁报告。这一步骤的目的是识别威胁和脆弱性的关系。需要注意的是从脆弱性到威胁并不是直接的一对一映射,一个特定的脆弱性可能导致几个威胁,一个特定的威胁可能利用几个脆弱性。

1.3 风险评估

当识别了所有资产的所有威胁,所产生的资产/威胁对将用作风险评估过程的输入。风险评估包括三个步骤:威胁级别的确定、影响级别的确定,最后通过将它们结合起来,确定安全级别。
在风险评估期间,对资产/威胁对进行分析,说明其发生的可能性和影响的严重程度。这两项活动包括估计威胁水平和估计影响水平。威胁级别(TL)是衡量攻击者实现对资产的威胁的可能性,影响级别(IL)是衡量威胁实现后对利益相关者的危害程度。当对特定资产/威胁对估计了威胁级别和影响级别时,便可以通过它们的组合来确定安全级别。安全级别(SL)是对特定资产需求的保护程度的度量,并规范应采取哪些安全对策来避免不合理的风险。它类似于安全完整性级别用于功能安全的方式。

1.3.1 威胁级别

威胁级别(TL)是对某种特定威胁发生的可能性的估计,与Common Criteria (CC)相同,本方法使用四个参数来计算威胁发生的可能性,四个参数分别是:经验知识、掌握的信息、机会窗口、工具设备。每个参数都可以分为四个级别以及有相对应的参考值如表2所示,四个参数的权重可以根据具体需求进行分配,威胁级别的最终值是这四个参数值的加权之和。而这里我们使用的是4个参数的简单线性总和。与其他方法不同,HEAVENS模型在威胁级别参数中并没有将攻击时间和攻击动机列为参数,因为这两个参数都可以在其他参数中进行体现。
 2 威胁级别参数值

经验知识
分值
掌握的信息
分值
机会窗口
分值
工具设备
分值
外行
0
公开
0
无限制
0
标准
0
精通
1
受限制
1
很大
1
专门
1
专家
2
敏感
2
中等
2
定制
2
多位专家
3
关键
3
很小
3
多个定制
3

 经验知识是指攻击所需的一般知识和经验,四个级别分别是:
外行: 不需要专门知识。比如可以是对现有攻击工具遵循简单指令的人,但如果指令或工具不能按预期工作, 则无法成功。
精通 需要一般的信息安全领域知识, 具有简单和常用攻击知识的专业人员能够安装可用的工具,如有必要也能够即兴发挥。
 专家: 具有专业和信息安全领域知识。熟悉底层算法,协议,硬件,软件,熟悉现有攻击的技术和工具, 并能够创建新的攻击。
专家组几个具有不同领域的知识和经验的专家联合发起成功的攻击。
关于掌握的知识是指对攻击目标的了解程度,包括目标信息的一些发布情况、可用性和散布的规模等。此参数主要指攻击者可以从哪里获得有关目标的信息来源以及攻击者获取这些知识有多困难,四个级别分别指:
公开信息 例如,在互联网上、书店或在没有保密协议的情况下共享的信息,如 CAN 或TCP/IP协议。
受限制信息: 根据保密协议,这些信息与合作伙伴共享。例如要求和设计规范或内部文件,必须与供应商或OEM共享。
敏感信息 信息在特定团队之间共享,但其访问受到限制。例如包括ECU 配置参数、车辆配置数据库或源代码等。
关键信息 信息仅限于少数几个人知道。 访问严格控制在特定范围内,例如包括根签名密钥。
前两个级别主要是指在组织以外的信息发布,而“敏感的”和“关键的”信息则主要指组织内的信息分布。由于攻击者获取有关目标的必要信息的难度越来越大, 攻击的可能性由从“公开信息”到“关键信息” 依次递减。
机会窗口是攻击者可用的访问类型,也是攻击者必须实施成功攻击的时间窗口。访问类型可以是远程的,也可以是物理的:
限制 无限的物理访问,或无限时间的网络访问。 例如, 设备保持联网状态或者车辆所有者可以进行无限制的物理访问。
很大有一定的时间限制,但是物理和/或远程访问可用性高。
中等有限的物理和/或远程访问权限,低可用性和严重的时间限制。如在不使用任何特殊工具的情况下对车辆内部或外部的物理访问。
很小: 很低的可用性。对车辆部件进行复杂拆卸所需的物理访问,以访问内部部件以对资产进行攻击。
设备是识别或利用漏洞所需的设备。这可以是硬件或软件,四个级别分别是:
标准工具攻击者很容易获得这些设备。 设备可能是目标本身的一部分例如操作系统中的调试器,或比较容易获得的,如笔记本电脑等常见的IT设备或者简单的OBD 诊断设备等。
专门工具 攻击者不容易找到这些设备,但可以通过一些方式获得,比如购买适量的设备或开发攻击脚本。例如车载通信设备、网络接口控制器、昂贵的车间诊断设备、功率分析工具等。
定制工具由于设备可能需要特别生产,或由于设备非常专业其分配受到控制或限制,而公众无法随时获得这些设备。或者设备可能非常昂贵。
多个定制设备 成功的攻击需要多种定制设备。
根据四个参数相加的最终值,本方法提供了五个级别来定性地说明威胁级别:无、低、中、高和严重。威胁级别和分值的对应关系, 如表 3 所示。 
 3 威胁级别参数

威胁总和
威胁级别(TL)
TL 
> 9
0
7 - 9
1
4 - 6
中等
2
2-3
很高
3
0-1
严重
4

 

1.3.2 影响程度(IL

特定资产/威胁对的影响水平是评估威胁发生后不同利益相关方的预期损失。我们从之前提到的4个安全目标的角度来估计影响。四个参数中的每一个都可以分配四个级别中的一个:无、低、中或高。各级均有相应数值,如表 4 所示。
 4:影响级别参数值

功能安全
操作
财务
隐私和合规
分值
0
1
中等
中等
中等
中等
10
很高
很高
很高
很高
100

下面将详细解释每个影响级别参数。
1. 功能安全影响:安全影响是指车辆使用者、道路使用者和基础设施的安全。安全是任何汽车系统的第一要求。四个安全级别对应ISO26262中的安全级别。“无”表示没有伤害,“低” 表示轻、中度伤害,“中等”表示有可能的严重和危及生命的伤害,“很高”表示存在不确定的生命损伤和致命伤害。关于每个级别的更详细的解释可以在ISO26262中找到。
2. 财务影响:财务影响包括所有利益相关方的所有直接和间接财务损害。直接经济损害可能包括产品责任问题,如处罚或召回,立法问题,如因不符合规定而受到的处罚,或因非法激活可销售功能而造成的收入损失。另一方面,间接经济损害可能包括名誉损害、市场份额损失、IP 侵权等。请注意, 这里也要考虑对客户、供应商和其他利益相关者的财务损害。直接经济损失比较容易计算,而间接经济损失的数值难以估计。例如,几家汽车制造商最近因各种安全问题召回某些型号的汽车, 造成了直接的财务影响。同时,召回也产生了间接的财务影响, 因为它们损害了汽车制造商的声誉。财务损失总额是直接成本和间接成本之和。而且财务损失的分类也取决于单个利益相关方的财务实力。例如,对于收入总额达数十亿美元的大企业来说,损失 10 万美元可能是相对微不足道的,而即使损失 1 万美元也可能威胁到小企业的存在。因此,本框架认为不考虑直接的金额而是损失和销售总额或利润总额的百分比更合适。
因此我们结合BSI标准将对财产的影响分为四个等级,分别是:“无”意味着对利益攸关方没有明显的影响或明显的后果;“低”意味着对利益相关方来说, 财产损失仍然可以容忍;“中等”意味着存在威胁利益攸关方存在的重大财政损失;“很高”影响意味着财产损失影响着利益攸关方的生死存亡。
3. 操作影响:操作影响是指对功能安全或财务影响很小或根本没有影响的损害,例如失去巡航控制或失去 CD 播放机或空调等舒适和娱乐系统等次要功能。主要功能是与驾驶、制动或转向有关的功能,即与车辆运输能力直接相关的功能。次要功能是所有其他功能,例如,舒适功能,如媒体播放器或空调。当操作损害造成安全问题或经济损害时,这些参数也包括在内。因此,一个特定事件的影响可能需要通过不只一个影响参数来衡量。我们根据FMEA(故障模式和影响分析)来分类操作影响。“无”意味着没有明显的效果,“低”意味着相关项的外表或者可以听到的噪音影响到了25%-75%的顾客,“中等”意味着一些次要功能的降级甚至不可用或一些主要功能的降级,“很高”意味着失去主要功能,使车辆无法操作,并可能影响功能安全或立法方面。
4. 隐私和合规影响:隐私和合规影响涉及利益相关者的隐私侵犯或违反政府法规,如违反环境法或交通法。估计隐私和立法影响的等级参照德国“RFID 应用隐私影响评估指南”中定义的影响水平。“无”意味没有明显的效果。“低”影响是指虽然侵犯隐私但没有直接的潜在风险或者造成隐私信息滥用,或没有明显后果的违规,例如没有罚款的警告。“中等”影响指会导致滥用的隐私侵犯,或具有商业和财务影响的违法行为,如罚款或声誉损失。最后,“很高”影响对应于多个利益攸关方的隐私侵犯,导致滥用,或具有重大商业和财务影响的违法行为,例如市场份额、信任或声誉的重大损失。
与威胁级别参数不同的是,影响级别参数主要是面向利益攸关方的,因此相对“静态”,即预计它们不会随着时间的推移发生重大变化。还应该注意的是,在考虑影响等级时不从攻击者的角度出发即不考虑对攻击者的潜在好处,因为在威胁等级时已经充分从攻击者角度考虑了。

1.3.3 安全等级

定义安全级别可以指导系统设计和开发过程中保护机制的选择和所需的保护级别。表 5 描述了如何使用威胁级别和影响级别的组合来获得安全级别。安全级别的目标和评分过程类似于汽车安全完整性等级(ASILs)的评分。但是需要注意的是由于威胁级别的动态性质, 安全级别也比 ASIL 更具动态性。
我们建议使用五个递增的安全级别:质量管理(QM)、低、中、高和严重。质量管理是从 ISO26262 中借用的术语,这意味着不需要对降低风险进行特殊控制,通常的质量措施是足够的。这也意味着,对于安全级别为QM 的资产/威胁对,不会制定任何安全要求。对于其余四个安全级别,必须制定高级别的安全要求。注意安全需求的严格性与现阶段的安全级别无关。这类似于 ASIL 在ISO26262 中的工作方式。
 5:从影响和威胁级别计算安全级别

安全级别(SL)
影响水平(IL)
 
 



威胁级别(TL)

0
1
2
3
4

0
 
QM
 
QM
 
QM
 
QM
 

1
 
QM
 
 
 
 
中等

2
 
QM
 
 
中等
 
中等
 
很高

3
 
QM
 
 
中等
 
很高
 
很高

4
 
 
中等
 
很高
 
很高
 
严重

 
一个资产可能与几个威胁相关,因此,一个资产可能会得到多个安全级别,此时要选取最高的安全级别作为该资产的安全级别。

1.4 安全要求

在概念阶段,这一步骤与 ISO26262 和CC中的过程密切相关。在 ISO26262 中,功能安全要求是在概念阶段结束时,根据危险分析和风险评估确定 ASIL。功能安全需求与信息安全需求具有相同的目的,即制定高层次的需求。而在CC的标准术语中,识别高级别安全需求的这一步骤对应于制定特定安全问题解决方案的高级别大纲,并将该解决方案转换为信息安全功能需求(SFR,security functional requirements)。SFR 是以标准化语言制定的独立于实现的安全要求。
而我们在进行了威胁分析和风险评估之后,剩下的就是对已确定的资产/威胁对得出高级别的安全需求,在这之后可以得出详细的和技术上的安全要求。此时,制定的高级别安全要求与安全级别无关。安全级别只表示必须制定安全要求,只有当制定技术、硬件或软件安全要求时,才会将安全级别与采取的安全措施对应起来。应当再次强调的是,对安全级别为QM 的资产/威胁对根本没有制定安全要求,而必须对所有其他资产/威胁对制定高级别要求。
在开发生命周期的概念阶段进行的威胁分析和风险评估时,通常还无法获得实现细节,因此,有时还不能确定为满足高级别安全要求而需要实施的具体安全机制。即便如此也应该在产品开发阶段为每个资产/威胁对分配一个安全级别及其高级别安全要求,以为后阶段选择适当的安全机制来满足特定安全级别的要求。
参考文献:

[1] Mafijul Md. Islam, Aljoscha Lautenbach, Christian Sandberg, Tomas Olovsson  <A Risk Assessment Framework for Automotive Embedded Systems.>


END



收藏
点赞
2000