左 政,王云鹏,麻 斌,2,邹博松,曹耀光,杨世春
(1. 北京航空航天大学交通科学与工程学院,北京 102206;2. 吉林大学通信工程学院,长春 130022;3. 中国软件评测中心,北京 100038;4. 北京航空航天大学前沿科学技术创新研究院,北京 102206)
现代汽车工业正在朝着智能和网联的方向飞速发展,在为人类出行方式和城市交通体系带来积极而深远变革的同时,汽车网络安全问题也日益凸显[1-2]。为此,国内外学者和研究人员针对智能网联汽车信息安全问题进行了大量的研究[3-5]。
汽车内部电子电气架构由大量ECU 组成,这些ECU 执行传感、计算、驱动等特定任务,为驾乘人员提供安全、舒适的出行体验。ECU 以分布式处理方式实现各类功能,并通过异构网络系统(CAN、LIN、以太网等)进行通信。一旦某一网络节点遭到破坏,将对整个车载网络系统造成严重的安全风险。因此,为保障车载网络系统整体架构的信息安全,需要在汽车电子电气架构设计时,根据整体网络拓扑TARA 分析,包括评估每个有信息安全需求的组件可能遭受攻击的路径及各组件在该网络特征下的安全风险,并将评估结果作为信息安全设计的依据[6-8]。
现有面向汽车电子电气架构的TARA 方法包括HEAVENSE (healing vulnerabilities to enhance software security and safety)、EVITA(e-safety vehicle intrusion protected applications)[9-10]等 理论。其中,EVITA 方法是基于ISO26262[11]的功能安全评价体系对车载网络组件安全性进行评估,针对功能安全、隐私、财产和操作4 个评估维度定义出5 类安全等级。而HEAVENSE 方法首先采用微软公司提出的STRIDE威胁识别模型[12-13],分别对网络组件是否存在欺骗(snoofing)、篡改(tampering)、否认(repudiation)、信息披露(information disclosure)、拒绝服务(denial of service)、权限提升(elevation of privilege)6 个维度的威胁进行评估分析,再对网络组件的安全属性需求与威胁分析结果建立联系,定义网络组件的风险程度,最后对网络组件的安全目标与风险程度建立联系,评估得出威胁的潜在影响。上述方法虽然可以有效地评估出车载网络各组件在不同环境下的风险程度,但是无法计算出精确的风险差异值,且无法对安全防护技术的效用进行评估,进而导致其为车载网络架构安全设计提供的参考作用受限。
为实现车载网络架构安全性的精确量化评估,本文中提出了一种基于攻击和修复结合的威胁分析与风险评估方法,首先通过对车载电子电气架构特征进行分析,针对有安全性需求的组件,评估其可能遭受的攻击路径及可能采用的漏洞修复路径,并结合连续时间马尔科夫链将攻击路径和修复路径转化为AFC-TARA 模型。其次通过CVSS和ASIL估算出攻击路径内各组件在固定周期内被破解以及漏洞被修复的频次。最终计算出有安全性需求的组件的风险率,并通过对攻击路径内各组件的安全策略进行优化,对比优化后安全性需求组件的最终风险率,从而评估不同安全策略的优劣性。
由于汽车电子电气架构是由许多不同种类组件组成的高度异构系统,不同组件在安全性方面的差异很大[4,14],且存在多种潜在攻击路径[15-17],因此需从系统层面对重要组件和网络架构进行建模。本文以典型域集中式电子电气架构为基础,基于AFCTARA 对架构中有信息安全需求的组件进行风险率量化评估分析,该评估方法的核心为连续马尔科夫链模型构建。评估流程如图1所示,主要包括3个步骤:马尔科夫链模型安全状态定义、风险与修复转移速率计算、组件风险率量化评估。
图1 基于AFC-TARA的汽车电子电气架构组件风险率量化评估分析流程
为构建用于车载网络组件风险率量化评估的连续马尔科夫链模型,需完成安全状态及状态转移速率的定义和计算。
本小节定义安全状态,首先将网络架构中各组件抽象为数学表达式。分别对车载网络中的电子控制单元e∈E、通信总线b∈B和ECU 的各式接口Ie建立组件集,具体可表示为某个ECU 通过某种接口ib∈Ie接入一种总线网络b∈Be或一种外部通信网络。按照此种表述形式,可将ECU 组件定义为e={Ie,Be};将总线网络定义为b={Eb},其中Eb表示为总线b上的所有ECU 的集合。其次,关于车载网络中的消息m,可将ECU发送的消息定义为Sm,将ECU接收到的消息定义为Rm,将总线B上传输的消息m定义为Bm,则m={Sm,Rm,Bm}。此外,网络中各组件在任意时间点的最大有风险资源的数量可定义为nmax,组件从状态x1到x2的转移速率定义为ξ,转换关系可通过式x1→ξx2表达。
基于上述基本数学表达式抽象,进一步给出马尔科夫链模型安全状态的定义。
首先基于对外接口对各ECU 组件的安全状态进行定义。各ECU 组件根据包含的接口类型进行分类。其中接口类型ib的风险点可定义为ε(ib) ≥0。随着这种接口的风险值ηib增加,则有风险点的数量也随之增大,具体转换关系可表示为
除了接口中的风险点ε(i)外,车载网络中还包括ECU 组件的风险点ε(e)、消息组件的风险点ε(m)。参数nmax表示车载网络中风险点的总数量。与风险值相反,参数φib代表总线接口的修复值,表示网络中接口ib的风险点被修复,具体转换关系可表示为
此外,车载网络中各ECU 的风险点与该ECU 拥有的接口数量相关,具体关系可表示为
其次根据连接于总线的ECU 状态进行总线安全状态定义。车载网络中各总线的风险点与该总线上连接的所有ECU 的风险点总和相关。一条CAN总线可定义为bc,其风险点可表示为
本文重点研究域集中式电子电气架构,将车载以太网定义为bEth。除需关注域控制器的风险点外,还需考虑中央网关的风险点ε(gw)。车载以太网的风险点可表示为
若车载网络中某一组件与互联网直连,如TBOX 通过4G 移动网络接入移动互联网,则该组件将被认为长期处于风险状态,即该组件随时可能被攻击者非法控制。因此,该组件的有风险点被定义为常数1,具体关系可表示为
最后,根据总线安全状态对车载网络中的消息进行安全状态定义。消息m的安全性需求包括可用性A、完整性G 和机密性C 3 类。其中可用性高度依赖于消息传递的通信网络的负载情况,而完整性和机密性主要与消息所采用的密码防护策略相关,如采用何种加密散列或对称加密算法对消息进行加密处理。对于CAN 总线网络,如用于传输消息的总线被攻击者利用,则整个总线网络的可用性需求将无法得到有效保证,具体关系可表示为
为保证车载网络通信的实时性,通常采用对称加密技术保障消息的机密性和完整性。对称加密技术需要将密钥同时存储于发送和接收消息的ECU内,若发送或接收消息的ECU 处于风险状态,即使消息采用加密传输,也无法保证消息的机密性和完整性。
以机密性安全策略为例对消息组件的安全状态进行转换。如果发送方或接收方处于有风险状态,则消息m的机密性无法得到保障,该状态可表示为
此外,如消息m在总线上传输,则与总线直接相连的任意ECU 都有能力破坏消息m的机密性。这种攻击发生的概率取决于消息m使用的加密算法的强度。总线上消息m的机密性被总线上其他ECU破坏的状态转换关系可定义为
因此,只有当传输消息m的总线上所有连接的ECU 都处于无风险状态时,则消息m处于无风险状态。
与式(9)的风险值转换关系描述相反,如对消息m机密性安全策略的漏洞进行修复,状态转换关系可表示为
利用上述安全状态定义可对车载网络架构中各组件的安全性进行分析,并得出连续时间马尔科夫模型中各组件安全状态的转换关系。
在前述安全状态定义的基础上,本小节进一步给出状态转移概率(即风险值η和修复值φ)的估算方法。
关于风险值,所提出AFC-TARA 采用ISO21434标准风险评估中推荐的通用漏洞评分系统(common vulnerability scoring system,CVSS) 3.1 版本[18]作为基础计算模型,并对此模型进行标准化修正,将分值转换为具有物理意义的频次,从而估算出组件由安全状态转换为风险状态的转移速率,即风险值η。CVSS通常用于评估软件系统漏洞,由美国国家标准与技术研究所(national institute of standards and technology,NIST)维护。通过对组件的网络特征、软件特性、安全策略等维度进行评估,计算出组件的可利用性评分,CVSS的评分标准见表1。
表1 CVSS的评分标准
车载组件风险值的具体估算流程包括3 个步骤,分别为确定可利用度分值、确定影响度修正分、车载组件得分标准化修正。其中,可利用度分值的计算方法如式(11)所示。
式中:参数AV、AC、PR、UI须根据车载组件的实际表现情况对应表1 进行取值。此外,影响度修正分的计算方法如式(12)所示。
式中:CF、CR、AB分别代表组件针对机密性、完整性、可用性所采取的实际安全策略的强度;CR、IR、AR分别代表组件在车载网络中对机密性、完整性、可用性的安全防护需求程度的权重值。
由于连续时间马尔科夫模型的状态转移速率与时间紧密相关。因此需要对车载组件得分进行标准化修正,使最终结果具有时间物理意义,具体计算方法如式(13)所示。
首先,软件版本迭代所需的最小开发周期限制了修复值的上限。其次,如果软件升级包的内容与汽车功能安全相关,则软件升级包的发布相较于其他常规功能还需要进行大量额外测试。因此,所提出AFC-TARA 根据行业内车载组件软件发版的普遍周期特性,结合ISO26262 标准中汽车安全完整性等级(ASIL)特征[19],对组件的修复值进行估算,具体映射关系见表2。
表2 ASIL评级示例与修复值关系
采用上述与时间周期相关的风险值和修复值作为连续时间马尔科夫链模型状态转移速率的评估参数,可以有效估算出有安全需求的组件在特定时间周期内被恶意利用的风险率。
其二,建立新型农业经营主体与农户相结合的模式,使其在新型农业经营主体与农户间产生邻里效应。政府应加大对“新型农业经营主体+农户”模式的扶持力度,推动合作社农业保险和龙头企业农业保险的大力发展。一方面,应增强对农户的认知培训,实现新型农业经营主体和农户的有效对接;另一方面,应提供良好的对接环境,建立相关的法律法规,使农户在对接过程中能享有与新型农业经营主体平等的地位,从而提高农户参与合作社的意愿,使农户与合作社形成紧密的利益共同体,且在条件允许的情况下,扩大合作社规模,形成合作联社,发挥农户之间的联动效应。
利用前述安全状态及状态转移速率的定义,即可构建用于评估组件风险率的连续马尔科夫链模型,并评估链条内某个组件转换为某一状态的概率,即进行组件风险率评估。
稳态分析是马尔科夫链模型的常用分析方式,但稳态评估结果对车载网络架构的安全性评估并没有较高的实际意义。车载网络架构模型更关注某个车载组件在固定时间周期内可能被恶意利用的概率。例如,某个有机密性安全需求的消息组件在一年内被破解的概率。为此,所提出AFC-TARA 量化方法参照文献[20],对固定时间间隔内连续时间马尔科夫模型的状态发生概率进行计算,即只考察目标组件在某一固定时间间隔内进入风险状态的概率。
将风险率量化评估的特性定义为时间间隔t与风险状态向量ρ的关系,即φ={ρ,t},将车载网络中需要量化评估分析的组件定义为c∈C。风险状态向量ρ的长度与网络模型中由攻击链路产生的风险状态的总数相等,即|ρ|=|S|。模型中每个组件的安全子状态可用s(n,c)表示,如果该子状态为风险状态,则该状态所处的向量ρ的分量为1,如为安全状态,则分量为0,具体可表示为
转移速率矩阵Q中的元素由各状态间的转移速率(即风险值和修复值)决定,其中转移速率R(x,y)代表矩阵Q中坐标(x,y),即安全状态从x到y的转移速率。如两个状态间不存在直接转移关系,则矩阵Q中这类转移关系的元素为0。由于矩阵Q须保证每行元素之和为0,则坐标(x,x)的值等于该行其他元素和的相反数,矩阵Q可表达为
基于上述定义,计算时间间隔t内组件的风险率。
首先,需对矩阵Q进行标准化处理。将矩阵Q除以q,其中q为矩阵中元素绝对值的最大值。由于AFC-TARA 模型中的转移速率皆为正值,因此q≤0的情况不需要被考虑。
根据文献[20]中定义12 的结果可得到式(16)所示的矩阵:
式中:I为单位矩阵;Punif表示在连续时间马尔科夫模型中嵌入的均匀离散时间马尔科夫链。Punif考虑了单个时间步长的所有转移速率,而(Punif)m考虑了m个时间步长状态间的所有转移速率。
其次,为了计算转移模型,可将连续时间马尔科夫模型假设为指数分布。为对这种指数行为进行建模,对每一步采用泊松分布(γ)。泊松分布的参数为λ=q·t和k=m,从而对以q为参数的速率分布进行建模,在时间t内触发m次。而累积泊松概率的计算需要对指数行为进行建模。
由于式(17)无法直接求得经过t时间后某一状态的概率,需要引入向量ρ并将希望量化评估的状态分量设为1。计算方法可参照文献[20]中的命题4,即
最终,组件在固定时间间隔内风险状态的量化评估结果可定义为
本节以图2 中所示的典型域集中式电子电气架构为研究对象,使用前述AFC-TARA 方法进行风险评估与威胁分析。具体研究场景为底盘域控制器向信息娱乐域控制器实时传递车速信息,所涉及子系统包括车载中央网关、底盘域控制器(chassis domain controller,CDC)、外 部 通 信 域 控 制 器(connected domain controller)、信息娱乐域控制器(in-vehicle infotainment domain controller,IVI DC)及安全防护域控制器(safety & security controller,SSC),如图中红色虚线框所示。评估结果将输出组件在不同安全防护策略下的风险率,以量化评估不同安全防护策略对车载网络安全防护能力的提升程度。所使用建模工具为Matlab 2020b,风险率评估工具为PRISM V4.6[21]。
图2 风险率评估参考子系统架构
子系统可转换为如图3 所示的连续时间马尔科夫链模型。模型中每个组件的安全子状态可用s(n,c)表示,如果该子状态为风险状态,则该状态所处的向量ρ的分量为1,如为安全状态,则分量为0。
图3 子系统马尔科夫链模型
为验证ARC-TARA 量化评估的可行性,本文对防护方和攻击方进行如下前提假设。
(1)攻击方基于移动通信网络作为切入点对子系统发起攻击,并选择底盘域控制器向信息娱乐域控制器传递的车速信息组件作为攻击对象,即攻击目标为使智能仪表无法实时显示正确的车速信息。具体攻击路径为先通过移动通信网络获取TBOX 的控制权限,随后破解中央网关的安全防护机制,最后破解底盘域控制器与信息娱乐域控制器之间的安全通信加密机制,即可伪装身份将恶意报文通过中央网关转发至信息娱乐域控制器,最终展示错误的车速信息。
(2)如1.1 小节所述,认为TBOX 和外网连接控制器完全暴露在开放互联网环境中,在整个攻防对抗中完全不设防。
(3)防护方从两个方面对车速消息组件进行安全防护,包括中央网关提供的安全防护与车速消息组件加密传输提供的安全防护。
基于上述假设,依据中央网关是否采用入侵检测系统与安全通信防御机制,共给出4 种不同的子系统变体,如图4 所示,图中分别用蓝色和红色箭头标注了车速信息的正常传递路径和攻击路径。图4(a)中央网关无任何防护机制。图4(b)中央网关配置了入侵检测系统,攻击者通过标准攻击路径发起攻击时,将触发中央网关入侵检测系统的预警机制。预警平台接收到入侵行为后,将针对入侵行为进行漏洞风险分析并开发升级补丁,通过远程升级的模式修复漏洞。为此,攻击者需要在漏洞被修复前,实现对智能仪表加密机制的破解。图4(c)中央网关内集成了安全认证功能,攻击者如延用上述攻击路径,需要破解中央网关的身份认证机制。图4(d)由于中央网关内同时配置并集成了入侵检测系统与安全认证功能,攻击者须同时破解中央网关的入侵检测机制和安全通信机制,并在漏洞修复前,实现对智能仪表的攻击。
图4 4种典型车载电子电气架构子系统拓扑图
根据CVSS 3.1 评分标准、ASIL 等级划分及式(13),对子系统中TBOX、中央网关及车速消息3 个组件的风险值和修复值进行评估。需要指出,在评估过程中除了考虑中央网关提供的安全防护与车速消息组件加密传输提供的安全防护外,还须考虑车速消息组件本身的安全需求,包括同时满足机密性和完整性、仅满足机密性、仅满足可用性3 种。另外车速消息组件可以采用的加密传输方式包括无加密、HMAC 及AEAD 3 种。评估结果如表3 所示,可以看到,中央网关使用不同的安全防护策略,其对应的风险值与修复值随之相应变化。而针对不同安全需求,车速消息3 种不同的加密传输方式也体现出不同的风险值。
表3 网络组件转移速率评估值
在获得子系统内不同组件的风险值与修复值后,即可根据建立的连续马尔科夫链模型对消息组件的风险率进行求解。最终计算所得消息组件在不同安全需求与不同防护措施条件下的风险率如图5所示。
图5 风险率量化评估分析结果
图5(a)针对信息娱乐域控制器的消息组件须同时满足机密性和完整性的安全需求场景,若中央网关无安全机制且信息娱乐域控制器的消息组件无加密机制,固定时间周期模型属性定义为1 年,则车速消息组件的风险率为1.7%。若采用HMAC 加密机制,则车速消息组件的风险率降至1.23%。若采用AEAD 加密机制,则车速消息组件的风险率降至0.57%,安全性提升约3 倍。这是由于HMAC 加密机制仅能满足完整性需求,而AEAD 加密机制可同时满足完整性和机密性需求。当中央网关配置入侵检测系统后,车速消息组件的安全性提升约1.7 倍,采用3 种加密机制的风险率分别为1.00%、0.72%和0.33%。当中央网关集成安全通信机制后,车速消息组件相较于无安全机制安全性提升约为3.3倍,相较于仅配置入侵检测系统的安全性提升约为2 倍。当中央网关同时采用入侵检测系统与安全通信防御机制,车速消息组件相较于无安全机制安全性提升约为5.2倍。
图5(b)针对车速消息组件仅须满足完整性的安全需求场景,当车速消息组件未采用任何加密机制,车速消息组件的风险率与同时满足机密性和完整性安全需求的结果相同。此外,由于HMAC 加密机制与AEAD 加密机制都能满足数据完整性安全需求,因此车速消息组件采用HMAC 或AEAD 所得的风险率相等,结果与同时满足机密性和完整性安全需求场景相同。
图5(c)针对车速消息组件仅须满足可用性的安全需求场景,车速消息组件采用任何加密机制都无法影响车载智能仪表上车速消息组件的风险率,这是由于攻击者只要与目标域控制器建立通信,即可影响目标网络的可用性。为此,可通过采用入侵检测系统或安全通信防御机制提升中央网关的防御能力,降低攻击者接入目标网络的概率,才能提升消息组件的可用性安全需求,从而降低消息组件的风险率。
综上,基于密码学的安全通信机制可有效降低域集中式电子电气架构中车载网络组件的风险率,实现组件安全性提升。其次,车载网络采用入侵检测系统同样对降低组件的风险率有一定的帮助,但在面临同样强度攻击时该方法降低风险率的幅度弱于基于密码学的安全通信机制,因此入侵检测系统可作为提升网络组件安全性的重要补充。最后,在计算资源允许的条件下,可同时采用基于密码学的静态防御机制和基于入侵检测系统的动态防御机制,更大幅度地提升网络组件的安全性。
为了评估不同风险值和修复值对组件风险率的影响,以指导防护方进行合理的安全防护策略设计,以图4(a)的子系统模型为参考架构,分析车速消息组件风险率的变化趋势与子系统中其他组件的风险值和修复值的联系。由于TBOX 组件作为子系统的主要攻击入口,车速消息组件的风险率主要取决于TBOX 组件的风险值和修复值。为易于验证,本实验将TBOX 组件风险值和修复值的取值范围定义为0.1~8 760之间,该取值范围转换到时间维度分别表示为组件发现并修复风险漏洞的时间周期为10 年至1 h。如将风险值设为变量,则修复值固定为φ=52,即固定每周修复一次。如将修复值设为变量,则风险值固定为η= 2,即半年发现一次可利用的漏洞。
车速消息组件风险率的变化趋势如图6 所示,其中图6(a)为TBOX 组件的风险值对车速消息组件风险率的影响,图6(b)为TBOX 组件的修复值对车速组件风险率的影响。可以发现,随着软件版本迭代周期的缩短,组件风险率随之降低。当更新频率达到φ= 71,即约5.14 天修复一次后,车速消息组件的风险率降至1%以下。如同样以1%作为风险率的阈值,则在固定修复值的情况下,风险值的最大值为η= 1.1,即发现TBOX 组件的可利用漏洞的时间需大于331.8天。
图6 风险值或修复值变化对组件风险率的影响
通过对转移速率的变化趋势进行评估,可估算出为满足组件安全标准所需要的风险值与修复值阈值。风险值可用于指导组件设计方对组件进行不同程度的加固防护,以改善组件的风险值。修复值可用于为组件安排安全合理的更新迭代频率。
为解决传统威胁分析与风险评估无法实现对信息安全防护技术效用进行量化评估的问题,本文提出了一种同时考虑攻击与防护效用的改进威胁分析与风险评估方法。首先,结合组件的攻击变量和防御变量特征,对ECU、网络、消息信号等组件的安全状态转换逻辑进行了分析,并利用连续时间马尔科夫链对车载组件的安全状态转换逻辑进行了建模。其次,在所构建的连续时间马尔科夫链模型中,通过将单一组件的安全评估结果与链条中其他组件的安全状态、攻击变量、防御变量的变动相关联,由此实现系统或整车级的安全分析与评估。最后,建立了安全状态标准化转换模型,将CVSS 漏洞评估与ASIL 评估得到的可利用度分值和安全等级转换为与时间频次相关的风险值与修复值,并将这两个指标作为马尔科夫链模型的转移速率;建立了安全状态检测器,实现对固定时间周期内系统架构中各组件风险率的精确评估。
选取了典型域集中式电子电气架构中底盘域控制器向信息娱乐域控制器实时传递车速信息的场景进行安全分析和方法有效性验证。评估结果显示:(1)中央网关、底盘域控制器和信息娱乐域控制器均不采用任何防护措施的条件下,车速信息在一年内被恶意利用的风险率为1.70%;若中央网关同时采用密码学防护措施与入侵检测系统、底盘域控制器及信息娱乐域控制器采用AEAD 加解密防护手段,则车速信息在一年内被恶意利用的风险率降为0.11%,下降超15 倍。(2)底盘域控制器及信息娱乐域控制器不采用任何防护措施的条件下,中央网关仅采用密码学防护手段时车速信息在一年内被恶意利用的风险率为0.51%,而仅采用入侵检测系统时车速信息在一年内被恶意利用的风险率为1.00%,证明在此场景下密码学防护手段相较入侵检测系统能提供更高的安全性。
本文提出的AFC-TARA 方法相较传统TARA 方法具有同时考虑攻击侧与防护侧效用、支持系统或整车级安全分析、支持安全风险量化评估的优点,可以为域控电子电气架构或其他车载网络架构的信息安全设计和优化提供基础支撑。