威胁分析和风险评估(通常称为 TARA)是ISO/SAE21434标准定义的关键活动。学术界和工业界都描述了许多不同的风险评估方法,其中大多数都可以通过安全分析师来实现。
下面描述的工作流程受到MoRA(模块化风险评估)的启发。(MoRA是由Fraunhofer AISEC开发的)。其他流行的方法通常是基于攻击树的,可以与MoRA结合使用或独立使用。
重要的是,该方法应根据开发过程的状态进行扩展,以便从一开始就可以进行安全的系统设计,但也可以应用于现有的系统。
如果能够将影响评估和威胁评估明确分开,就不那么困难了。评估系统的模型非常有助于支持这一点,因为它可以作为独立的单元,将所有内容保持在一起。这是确定风险所必需的,风险被定义为潜在损害(影响评估的结果)和可能性(威胁评估的结果)的组合。
模型系统
在第一步中,必须收集或导入有关正在开发的系统(SUD)或评估目标(ToE)的数据。主要的建模实体是函数、组件、数据和数据流。
函数描述系统的功能。组件表示硬件或通信参与者。数据是存储在组件内部或两者之间传输的任何信息。实际通信由数据流捕获。此外,还对函数与其他实体之间的关系进行建模(“函数映射”)。
需要注意的是,ISO21434 将此称为项目定义,并将其视为执行 TARA 之前的一个步骤(第 9.3 节)。但由于它是每个TARA的必要组成部分,因此希望将其视为该过程的第一步。
确定保护需求
当上述任何系统元素附加了机密性,完整性或可用性等安全属性时,例如“个人信息的机密性”,都可以成为资产。这是由安全目标捕获的。对于每个安全目标,都必须评估其影响。这是基于损坏标准发生的。可能的损害标准是安全,财务损失,法律后果或声誉损失。这会导致潜在的损坏。ISO21434 将此称为资产识别、威胁情景识别和影响评级(第 8.3 节至第 8.5 节)。
分析威胁
应根据已知威胁或漏洞的目录以及对策来分析威胁以及可能的控制措施。已识别的威胁与组件或数据流相关联。根据时间、访问、知识和设备等风险因素评估威胁。这会产生估计的可能性。ISO21434 将此称为攻击路径分析和攻击可行性评级(第 8.6 和 8.7 节)。
分析风险
根据系统模型,可以计算安全目标如何受到威胁。只要估计的威胁可能性符合安全目标的影响(潜在损害),就可以计算风险级别。然后可以对这些风险进行适当的分析和处理(例如,通过缓解或避免)或接受。ISO21434将这些活动命名为风险确定和风险处理决定(第8.8和8.9节)。
通过控制降低风险
了解现有系统的风险级别可以识别不可接受的风险。不可接受的风险是那些具有高潜在损害和低估计攻击努力的风险。为了做出明智的风险处理决策,安全分析师需要找到良好的控制措施,以减少潜在的损害(例如减少财务损失的保险)或增加所需的攻击工作量(例如加密以加强机密性)。
但是,控件本身也会引入一些需要保护的资产,例如加密密钥。因此,与控件共同引入的资产还需要进行保护需求的识别(例如密钥的机密性),威胁和攻击路径的分析(例如从另一个设备中提取共享密钥)以及风险分析。在分析中包含控件使 TARA 成为一个迭代过程:安全分析师将循环回对控件进行建模并评估其结果,直到找到似乎令人满意的控制配置。
据笔者所知,ISO没有描述这个循环。概念阶段的控制措施称为“网络安全要求”,ISO/SAE21434中的TARA不考虑其共同引入的资产(例如密钥的机密性)。只有在开发阶段,控件才是根据给定的网络安全要求派生的,在项目后期的阶段,它们将需要执行在此处描述的相同的循环。
想进一步讨论这个问题吗?如对以上内容有任何需要交流的,欢迎与作者直接沟通,微信号:anling_service