登录| 注册 退出
驭捷智能

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

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

过去的20年见证了汽车系统中的电子和软件数量的迅猛增长。现代的顶级汽车包含了多达100个电子控制单元(ECU)和若干异构总线系统,涵盖了驾驶的舒适性到主动安全功能等各种应用。

虽然功能和功能安全始终是汽车架构设计的基本考虑因素,但信息安全所面临的问题也日益增多。智慧车载云服务的好处是能满足现代信息娱乐系统、自适应路线规划或OTA更新等要求,然而,随着这些应用的普及,黑客的攻击也会随之而来。

为了确保车辆安全,目前的解决办法就是通过在车辆网络的外部接口设置防火墙进行屏蔽。但是,这种方法却忽视了车辆内部安全。一旦有攻击者突破了防火墙,攻击者就能访问车辆网络。图1.1就是这样的一个攻击案例。

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

图1.1 

研究表明,在一开始设计汽车时,如果设计工程师没有考虑到信息安全问题,那么这种汽车构架会极易遭受攻击。极端情况下,如果黑客攻击了汽车的一个安全关键控制功能,可能会导致严重的致命后果。安全研究人员模拟了不同的攻击方式,及其模拟攻击对控制功能的影响。模拟实验表明,如果驾驶辅助功能的通信不安全,那么通信极易被篡改。最新的技术融合了功能安全和信息安全两方面,这种融合设计有效地保护了控制器区域网(CAN)和FlexRay等车内通信系统。汽车领域必须有效地实现内部总线的加密和认证。

本文介绍了一种在系统级对汽车架构进行安全分析的方法和框架——汽车信息安全分析(SAAN)。当前,即便是最先进的汽车信息安全技术也只是考虑了组件层面,而如果对每个单个的组件漏洞都进行建模,这样的方法也仅仅只能检测到系统漏洞。而SAAN是在系统分析层面,采用了模型检查来验证计算机网络和协议,基于汽车底层架构,对DoS攻击协议等所有流量的安全性进行了量化。

由于篇幅有限,本篇文章我们将先介绍SAAN的框架,后续还会对SAAN有更多详细的介绍。

SAAN的框架包括以下三个步骤:

1. 将所考虑的汽车架构转化为马尔科夫模型

2. 对各组件进行评估,以确定马尔科夫模型的过渡率

3. 为Model Checker(模型检查器)进行属性定义,以确定适当的信息安全价值

有了完整的马尔科夫模型和属性,概率模型检查器可以确定所考虑架构的安全值。

汽车网络信息安全分析(SAAN)

在下文中,我们将概述SAAN分析方法。在描述问题后,我们将解释分析流程的主要步骤。

01问题描述

汽车网络由大量的ECU组成,每个ECU有专门的任务,比如执行传感、计算或运行等功能。功能采用分布式的方式,需要通过不同的共享总线系统(如CAN和FlexRay)进行通信。但如果系统受损,通过共享总线使用预定义的通信和未加密的报文流就会成为大问题。

一般来说,汽车领域的组件或功能是独立开发的。独立开发完成后,再将各个独立组件集成到架构中。虽然在子系统级的开发过程中可能会考虑到安全方面的问题,但往往忽视了系统级的脆弱性。为了解决这个问题,SAAN作为一种补救措施,用于回答设计和集成期间的以下问题:

1. 组件漏洞对具体功能的安全性有什么影响?

2. 在安全性方面,与其他架构设计相比,某种架构设计的决定是否更有优势?

3. 在运行组件的过程中,应在多大层度上来考虑信息安全问题?

请注意,本文考虑的对象是系统级别的信息安全,我们抽象了安全启动、密钥存储等ECU内部安全的各个方面。

由于汽车架构是由许多不同组件组成的高度异构系统,因此必须在系统级对所有重要方面进行建模。例如,在支持安全方面,汽车中使用的通信系统会有很大的不同,特别是在可用性方面。因此,需要给这些通信系统建立适当的模型。ECU也可能因连接到多条通信总线上而导致攻击概率会因潜在攻击路径的不同而不同。最后,为了描述ECU和其他组件信息安全的特性,有必要先量化ECU被利用的速度,以及ECU被修补的速度。为此,在对系统进行建模时,应考虑到安全评估和汽车安全完整性等级(ASIL)值。

02分析流程

图1.2概述了我们对汽车架构的安全分析方法,包括三个步骤:模型转换、组件评估和属性定义。最后,通过概率模型检查器确定架构的安全性。

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

图1.2

1)模型转换

就信息安全而言,为了能对架构进行处理,我们将其分解为相关的组件。组件包括总线、ECU、消息、接口等。

对于每个组件,我们利用马尔科夫模型确定其可利用性和补丁率。最后,将马尔科夫模型组合成一个系统,实现概率模型检查。根据所实验的系统,可以灵活地扩展或调整这种转换。在后续更新的文章中,我们提出了一种具体的转换方法。

2)组件部分评估

与架构的转变相对应,我们有必要评估各个组件的可利用性和补丁率。这些值决定了Markov模型的转换率。对于可利用性,我们建议根据一个既定的标准[148],采用通用脆弱评分系统(CVSS)来评估组件的脆弱性。

也可以在调整后使用类似的通用原则标准。我们观察到,鉴于组件的ASIL值,在很大程度上,补丁率取决于组件的功能安全要求。如果软件发生变化,则需要高成本来重新测试和验证。这些速率可以由用户根据开发流程和现有数据调整。虽然评估最好是在结合ECU信息安全元素的基础上的子组件级别上进行,但在此实验中,我们使用了一种简化的基于组件的方法。SAAN 的粒度可以放大到所需的水平。在后续更新的文章中有将详细说明使用CVSS和ASIL的组件评估。

3)属性定义

通过确定特定的属性,我们能够从安全性方面研究架构的某些方面。稳态分析是系统在某个时间点收敛到稳定状态的一种分析方法,与稳态分析相比,本文的分析方法功能明显更强大。因此,属性可以是在10年内某个功能被利用的累计时间。关于属性的定义,在下篇文章中说明。




在线
客服

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

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

客服
热线

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