登录| 注册 退出
驭捷智能

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)

2021-03-23       浏览:  
分享到:

上一篇,我们介绍了汽车网络信息安全分析(SAAN)的框架,并且对分析流程的三个主要步骤进行了详细的解释。

在本篇中,我们描述了SAAN背后的方法和概念。可采用概率模型检查来分析架构信息安全。具体来说,我们概述了从架构中合成马尔科夫模型所需的步骤(01),对模型的边缘进行加权的组件评估(02),以及分析模型的属性定义(03)。

当从架构中转换一个模型时,我们是通过现有的漏洞数量来建模ECU和接口的。我们规定发现新的漏洞(例如,由安全研究人员发现)的比率为汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图1),漏洞被修补(例如,通过空中更新(OTA))的比率为汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图2)。在组件评估中确定这些值。我们认为网络和总线是被动的,取决于所有连接的ECU的最不安全状态。信息则根据保密性、完整性和可用性的安全原则进行建模。

  • 保密性是指保护信息不被未经授权的实体读取

  • 完整性描述了对报文的创建和修改的保护

  • 可用性是指保护信息不被中断或删除

根据对信息的保护(无、哈希加密、加密)和传输所采用的通信网络,我们分别对每个原则进行了分析。

—示例

为了说明这个过程,我们搭建了一个最小的架构,在这个架构中,有一个远程信息处理ECU(图1.1中的3G)连接到CAN总线上。CAN总线用于传输报文汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图3),该报文既不被远程信息处理ECU发送也不被该ECU接收。将这个架构转化为马尔科夫模型后,我们得到图1.2所示的模型。这是一个非常简化的综合模型,只考虑了远程信息处理ECU、总线和汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图4)的保密性。此外,在建模过程中,我们只考虑每个模块有一个漏洞的情况。

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图5)

图1.1


汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图6)

图1.2

分析这个模型后发现,从安全状态汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图7)开始,我们就在远程信息处理单元中发现了一个漏洞,其速率为汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图8)。一旦有发现漏洞后,则CAN总线立即会被视为是可利用的汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图9)。远程信息处理单元可以以 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图10) 的速率进行修补。如果未进行修补,并且发现了保护报文m的漏洞(远程ECU没有密钥)(速率 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图11)),我们就会进入状态汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图12),报文就会被利用。从这一刻开始,报文汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图4)的内容不再视为保密,因为攻击者可读取和更改报文内容了。为了补救这种情况,应该修补报文保护和远程信息处理单元。在我们的示例模型中,报文保护和远程信息处理单元分别以汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图14)汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图15)的速率发生。另外,也可以通过给远程信息处理单元打补丁来拒绝攻击者访问。

这是一个简化的例子,只需要建模技术的一个小子集即可。在下文中,我们将全面解释综合规则以及组件的评估,并会分析概率特性的模型。

01模型转换

为了能通过概率方法分析通信架构,我们需要将汽车通信架构转化为马尔科夫模型。转换的过程考虑了所有的通信参与者(即ECU)和互连(如总线系统和网络)情况。然后,我们进一步将ECU分离成每个通信系统的接口,以便分析不同通信系统的影响。此外,我们还分析了系统中传输的报文。

—术语

为了建立安全分析的架构模型,我们规定了所有ECUs 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图16) 和所有总线汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图17)的集合,我们还规定了每个ECU  的所有接口 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图18) 的集合,接口 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图19) 连接一个ECU 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图20) 与总线或外部网络 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图21)。因此,我们将ECU定义为汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图22),将总线定义为汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图23),其中 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图24) 是总线 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图25) 上的ECU的集合。为了分析报文汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图4),需要发送ECU 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图27)、接收ECU 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图28) 的集合以及消息传输的总线 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图29) 的集合汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图30)。包括完全预定的报文集等数据可从架构中得到。在任何时间点上,每个模块的最大利用次数定义为汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图31)。该关系汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图32)说明了状态汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图33)汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图34)的变化,速率为汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图35)

—ECU与接口

为了建模架构,需要将每个ECU拆分成若干个接口。如果总线可利用,根据概率可利用率汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图36)增加可利用次数汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图37),对于每个接口汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图38),分别分析可利用性 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图39)

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图40)

如果汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图41),且汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图42),则汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图43)


由此得到的可利用值说明ECU中存在并行利用数量 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图44)、接口中的 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图45) 或报文的汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图46)。我们使用汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图47)来限制漏洞的最大数量,降低模型复杂性。基于补丁率汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图48),这种关系的逆确定了接口汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图49) 中信息安全漏洞的补丁。

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图50)

如果 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图51), 且汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图52),则 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图53)

每个ECU 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图54) 的可利用性是基于这个ECU的所有接口的可利用性而来。


汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图55)

—总线与网络

同样,CAN总线汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图56) 的可利用性 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图57) 也取决于每个连接ECU的可利用性。

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图58)

一旦FlexRay总线汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图59)被使用,则在ECU 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图20) 能够在总线上自由传输之前,需要利用总线保护器汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图61)

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图62)

直接连接到互联网的3G等网络或总线,因为攻击者可以持续访问这些网络或总线,因此,将这些网络或总线视为随时可被利用。我们设定一个恒定的可利用值1来模拟这一特性。

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图63)

—报文

报文的可利用性又可细分为影响类别汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图64)的可用性、汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图65)的完整性和汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图66)的保密性。可用性高度依赖于所采用的通信系统,而完整性和保密性则基于对报文的保护情况。具体来说,散列加密和加密技术可以解决这些类别中所面临的问题。当使用CAN总线时,如果用于报文传输的任何一条总线被利用,则不能保证可用性。

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图67)

如果发送或接收的ECU被利用,即使加密了报文,也不能保证报文汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图4)的保密性和完整性。为了保证实时性能,我们假设采用对称加密,这样报文加密的密钥同时存储在发送和接收的ECU上了。这里不分析安全密钥存储,但可以作为一个子模块集成到ECU模块中。保密性汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图69) 和完整性汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图70)的行为类似,但取决于用于各自报文汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图4)的保护机制。在本节的其他部分,我们描述了保密性的转换。将公式中的汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图72) 替换为 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图73),这些规则同样适用于报文完整性。

如果发送者或接收者可可借以获益,则违反了报文的保密性。

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图74)

此外,任何用于传输汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图4)的总线上的ECU都可以攻击保密性。攻击的概率取决于所采用的加密算法及其实现的强度。为了描述这种行为,我们利用保护方法汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图76)的利用率,并定义以下关系:

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图77)

如果所有传输网络上的ECU都不能被利用,那么,报文相应地也不能被利用。

上述操作的逆描述了修补消息加密的缺陷操作,该描述为:

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图78)

逆描述了修补消息加密的缺陷操作,该描述为:

据此可推断出架构转化为马尔科夫模型状态的概念。

02组件评估

为了分析上一节中生成的马尔科夫模型,我们需要给边缘分配权重。这些速率说明随着时间的推移,设备被利用的概率以及设备可以被修补的速率。

—可利用率

在SAAN中,我们通过修订版的 CVSS 来确定比率。CVSS是为评估软件系统漏洞的开放标准而开发的,由美国国家标准与技术研究所(NIST)负责更新维护。CVSS能根据对多个子项和类别中的单元的评估生成一个组件的安全得分。开发子分数中使用的标准与汽车领域的接口所需的标准类似。我们采用可利用子分数(见表1.1),进一步调整以适应汽车领域。根据子类别的得分,我们计算出可利用性的得分为:

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图79)

根据可利用性得分汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图80),我们计算出率:

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图81)

我们将可利用率规范为1年。

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图82)

表1.1

为了说明其评估情况,我们以远程信息处理ECU的3G接口为例。由于该设备与互联网相连,接入矢量跨多个网络 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图83) 。由于其开放的表面,我们假设该设备的制造商已经加固了攻击,因此想要访问该网络的复杂层度很高汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图84)。为了访问设备,我们进一步假设需要多个认证步骤汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图85)。由公式(3.11)可知,我们设定汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图86)=3.15。根据公式(3.12),可利用率可以确定为汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图87)=1.85。这说明通过该设备的可利用率,我们可以推断该设备一年会被攻击1.85次。

在后续更新的文章的其余部分,我们将这些基于CVSS的评估用于所有ECU的接口。

—补丁率

许多因素决定了向车辆提供补丁的数量和速度。首先,补丁的开发时间是补丁率的上限。此外,如果为了实现安全补丁而需要改变与安全相关的功能,那么所需的测试量会很大。因此,我们根据要修补的功能的 ASIL 级别来分配修补率。表 1.2 中显示了与 ASIL 相关的修补率。虽然与安全相关的设备(如网关(GW))只能以相对较长的时间间隔进行修补,但与安全无关的功能(如远程信息处理单元(3G)),因为需要的测试较少,可以以较短的时间间隔进行修补。

在马尔科夫模型中使用上述转换率,使我们能够以时间为基础对其进行分析,从而形成连续时间马尔科夫链(CTMC)。

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图88)

表1.2

03属性定义

从架构中创建CTMC模型并按照上一小节所论述情况分配过渡率后,我们需要确定我们分析的目标,即模型的属性。稳态分析是对CTMC模型进行评估的一个常见属性。在这里,可以用传统的矩阵运算来计算在任何采样时间点处的每个状态的概率。查看图 1.2 中的例子。在速率汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图89) =汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图90)  = 52(每周)和 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图91)  = 汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图92)   = 2(每年两次)的情况下,得到了转移率矩阵:

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图93)

请注意,矩阵对角线上的值是该行速率的负和。

稳态解汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图94) = 0,得平稳分布:

汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图95)

由此可知,在任何给定的时间点,处于汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图96)可被利用的状态汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图97)的概率为0.0699%。然而,这种静止信息对于实际的安全问题来说并不是决定性的。让我们感到好奇的是模型在一年内至少达到状态汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图98)一次的概率。为了表达这一点,对于CTMC,我们需要定义一个基于奖励的属性,对状态的每次出现进行计数。在本例中,我们定义汽车E/E架构网络安全设计(八):系统级汽车架构安全分析方法(2)(图99)。汽车领域的属性将在下一期的文章中详细介绍。


在线
客服

在线客服 - 驭捷智能周一至周日 10:00-24:00(欢迎呼叫)

选择下列服务马上在线沟通:

客服
热线

18917451722
6*12小时客服服务热线