智能汽车的入侵检测系统安全研究

2021-07-01 13:21柴艳娜李坤伦宋焕生
西安电子科技大学学报 2021年3期
关键词:前车攻击者控制器

柴艳娜,李坤伦,宋焕生

(长安大学 信息与网络管理处,陕西 西安 710064)

在信息世界里,入侵检测系统(Intrusion Detection Systems,IDS)的经典定义便是监控流量进出网络的安全系统[1]。但是随着系统变得越来越复杂和越来越连通,越来越多复杂巧妙的入侵行为被发现,并且已不仅仅局限于信息世界。信息物理系统(Cyber Physical Systems,CPS)便是信息世界和物理世界相遇的地方,它们通常是IT系统或网络与电子机械部件的混合物,典型的例子有各种车联网系统[2]、远程手术机器人[3-4]和智能电网[5-6]。

信息物理系统的攻击可以损害到真实世界,将成为未来世界的一个重大安全隐患,且随着工业4.0的逐步实现而威胁日益变大。信息物理系统的简单网络攻击都可能在复杂互联互通的系统里产生一连串故障。

包括计算机网络[7]在内的所有已知攻击手段,都可能被用于攻击网络控制类型的信息物理系统,生活中有诸多这类系统的例子,如新车包括智能汽车,都使用控制器局域网络(Controller Area Network,CAN)总线来连接不同的微控制器以管控汽车的物理零部件。随着车联网(Internet of Vehicles,IoV)和汽车自组网[8](Vehicular Ad-hoc NETworks,VANET)的出现,汽车与外界的连接愈发普遍,如OTA(Over The Air)软件更新和信息收集,这种安全挑战就变得更有压力[9]。2015年7月,两名黑客演示了如何远程侵入和控制一辆2014款Jeep自由光,利用连接移动数据网络的车载娱乐系统Uconnect的漏洞[10-11],他们成功给汽车刷入带病毒的固件,并向控制器局域网络总线发送指令控制汽车,最终迫使菲亚特克莱斯勒集团之后宣布召回140万辆汽车返厂升级系统。此类事件提醒研究人员要多关注车联网的安全性[12]。

越来越多的汽车正在依赖于网络化控制系统,当其总线或冲突域(Collision Domains)与连接到互联网的部件共享或者有路由进行连通时,安全隐患便随之而来。通过一些软件定义网络(Software Defined Network,SDN)进行隔离是最佳的手段,但是也扩大了遭受攻击的范围,任何错误的配置信息都可以打开进入智能汽车内部的渠道。

传统的入侵检测系统用于发现计算机网络的异常行为,但是在信息物理系统中,单纯分析流量而不清楚每个数据包作用于物理系统的实际效果,是不能判别其恶意的。

文献[13]将信息物理系统安全风险进行分类,并定义了隐蔽攻击(Covert Attacks)这一新类型。隐蔽攻击是欺骗攻击(Deception Attacks)的子集,攻击者获取信息物理系统部分组件的控制权,同时试图让攻击影响足够小,从而让人无法观察到异常。隐蔽攻击分为两种:一种是试图让物理部件产生持续平稳的错误输出,随着时间来逐步消耗系统的服务性能;另一种则是短暂的影响系统输出,间隔一段时间重复发生以达到相同的效果。

假定自适应巡航控制(Adaptive Cruise Control,ACC)系统是易于遭受攻击的,笔者提出两种针对A自适应巡航控制系统的隐蔽攻击:第1种攻击里,当实验汽车降低车速时,攻击者立刻操作巡航控制器使汽车产生突然加速,试图产生事故或者增大事故概率;第2种攻击则是攻击者接管控制权,让巡航控制器不断产生控制信号,降低实验汽车与前车的安全车距,从而增大事故风险。然后,设计一套尽可能准确模拟巡航控制系统响应的观察方法,利用其所训练的参考模型,提出针对这两种隐蔽攻击的入侵检测机制。当检测到与预期行为偏差巨大的情况时,入侵检测系统便触发警告,并切换到内置于补偿系统的故障安全控制器(Fail-safe Controller)。

为了评估检测和补偿机制的效果,笔者在MATLAB Simulink平台上进行了广泛的模拟实验。结果表明,检测机制可以成功地发现对自适应巡航控制系统的隐蔽攻击,而相较于没有采用任何保护机制,由P控制器(P-controller)所构成的补偿器也很明显地降低了对系统攻击所造成的影响。

1 自适应巡航控制

自适应巡航控制根据控制目标不同,其相应的模型也不同,分别如图1(a)和图1(b)所示。假设有汽车1和汽车2行驶于同一车道,汽车1安装有自适应巡航控制系统,同时也安装有雷达可以测量与前车汽车2的距离。另外,两车相对速度也可以由传感器和雷达测量所得。自适应巡航控制系统的控制目标便是让车辆以驾驶者设定的速度行驶且与前车保持安全车距。

图1 自适应巡航控制系统的不同工作模式

自适应巡航控制系统有两种模式控制汽车1。第1种模式是速度控制模式,汽车1的速度被设置为驾驶者预设值,同时与前车保持系统认定的最小距离;第2种模式是距离控制模式,自适应巡航控制会动态调整汽车1的速度以控制两车之间的距离,确保车距不小于安全值。根据实时测试,自适应巡航控制系统可以根据条件自行激活某一模式,如果相对车距明显减少,则自适应巡航控制系统会从模式1切换到模式2;反之,如果相对车距大于某个阈值,自适应巡航控制系统便从模式2切换为模式1。所以自适应巡航控制系统会根据下述规则设定其执行模式:

(1) 如果Dr≥Ds,速度控制模式被激活,则保持巡航设定速度Vc是其控制目标。

(2)如果Dr

1.1 ACC的数学模型

(1)

Dr(t)=x2(t)-x1(t),

(2)

其中,Fv是后车的速度函数,表示其如何行驶,其距离前车的距离是Dr。式(1)可以从汽车上路的传感器数据学习得到,或者从驾驶行为中推理可得。此一阶模型主要的缺点是,没有考虑汽车惯性对速度的影响。所以根据牛顿力学原理改进而来的二阶模型如下:

(3)

其中,vr是两车相对车速。式(3)将后车的加速度抽象为相对车距,相对车速和后车速度的非线性函数,其中实际上暗含了两个模型,即跟车模型和最优速度模型。跟车模型可以表示为

(4)

最优速度模型可以表示为

(5)

其中,α和β是常量。可以看出,跟车模型中需要考虑与前车的相对速度,最优速度模型表明最优速度要与给定车间距x2-x1相符合。将两个模型组合起来便是式(3)所示模型,即

(6)

前后两车的模型动力学是相同的,则汽车加速度与本身速度之间的动态关系在拉普拉斯空间中都可表示为

(7)

上述公式实际上近似描述了节气门和车辆惯性之间的动态性。

自适应巡航控制系统的输入是驾驶者设定的巡航速度Vc,两车之间的时间差为Tgap,车辆本身速度为V,与前车的相对距离为Dr,以及与前车的相对速度为Vr。输出则是车辆的加速度。ACC系统判定所需的前后两车之间的安全距离[14]可表示为

Ds=Ddefault+TgapV,

(8)

其中,Ddefault是默认停顿距离。自适应巡航控制系统的输入、输出构成了用于系统训练和识别的车辆动力数据。

2 入侵检测和补偿

2.1 隐蔽攻击场景

文中将研究两种针对自适应巡航控制系统的攻击场景,对其两种模式不同的控制目标所造成的影响。根据定义,这些攻击都会是隐蔽的。攻击会扰乱自适应巡航控制系统并更改其输出,即攻击者可以扰乱车辆的加速度,改变车辆的正常运行。

(1) 攻击场景1。第1种隐秘攻击从破坏自适应巡航控制单元开始。攻击者保持静默等候,让自适应巡航控制系统正常工作,并密切监控车辆与前车的距离。当该距离达到最低点(大约接近最小安全距离)时,攻击者控制自适应巡航控制单元在控制信号中产生一个波峰,使车辆突然加速,试图通过临时将车距降低至低于标准,或将车速提升到超过上限,使得事故发生的可能性增加。当前车突然刹车,且受损的自适应巡航控制拒绝降低车速时,也可能发生类似的事故。

(2) 攻击场景2。跟第1种攻击类似,攻击者一样会破坏自适应巡航控制单元,不同的是攻击者不会像第1种场景里伺机而动打伏击,而是细微地降低自适应巡航控制的参考距离即安全车距Ds。因此,在自适应巡航控制处于模式2,并试图保持安全距离时,它实际上是在遵循一个错误的参考,使得车辆事实上更接近前车。然而,这种差异对于驾驶者是难以发现的,因此攻击仍然是隐蔽的;不过,所导致的结果却并非微不足道。从统计上讲,还得取决于路况(湿的或干的路面),前后车辆的制动力以及驾驶者的反应时间,无论如何,这种攻击都让事故发生的机会大大增加。

2.2 智能入侵检测

图2 智能识别器工作模型

检测和反应时间的准确性是CPS安全性中的重要问题。反应时间对于防止程序失败至关重要。早期检测增加了让补偿器保持CPS性能的机会,因此文中提出用于发现上述隐蔽攻击的新型入侵检测系统。

假设有一个初始安全期,在此期间,识别器可以学习整个车辆系统的动力模型,这可以是简单的线性系统传递函数识别。初始安全期的假设并非是不合理的,因为车辆在出厂的时候并不会被黑客攻陷或者蠕虫病毒感染。因此可以假设如果有任何攻击,则均发生在Tattack之后。并且可以在安全期内运行智能识别器,用于构建系统模型。文中使用人工神经网络作为智能识别器,分为训练阶段和识别阶段,如图2所示。

2.2.1 特征提取

特征是自适应巡航控制运行状态的一个抽象表示,特征的设计要顾及计算的效率和可行性。特征是从大量的车辆运行动力数据提取出自适应巡航控制有关部分,从这些数据中再直接提炼出特征。不论是车辆本身的速度还是自适应巡航控制的加速度输出,都是时域连续的模拟信号量,需要以时间为维度将其量化成一组组离散数据,用微小的时间段进行切分。在某一时间t,巡航预设速度为Vc,并假定自身车速V和两车时间差Tgap、车间距Dr及相对车速Vr等确定的情况下,自适应巡航控制输出的加速度必然落在一个可预测的小范围Oacc内;这个范围的大小可以用统计数据进行确定。因而特征问题便是自适应巡航控制输出加速信息的概率分布问题,即

pt=P(t,Vc,V,Tgap,Dr,Vr,Oacc),pt∈R7,

(9)

其中,P(v)表示车辆行驶中向量v出现的概率,且有

p=L(pt),

(10)

其中,L是逻辑函数。如果P(v)大于一半,则概率被映射为1;否则,概率被映射为0。

设pv是向量v经式(10)简化后的数据向量,则在时间t的特征向量V可以表示为

V(t)=pv(t)⊕pv(t-1),

(11)

其中,⊕是对向量中每个维度进行异或操作。

2.2.2 模型训练

训练阶段需要大量数据和时间,所以需要在初始安全期内离线运行。训练时,首先自适应巡航控制的动力数据从生产车间收集,处理并提取出特征,代表自适应巡航控制运行状态的统计学行为;然后以监督学习的方式,每组用于训练的动力数据都有一标签信息表示车辆是否正常,特征与标签之间一一对应;最后使用深度神经网络(Deep Neural Network,DNN)模型训练特征,获取可用的参考模型的权重系数W作为识别比对的依据,权重系数W是个包含误差概率的数组,如图3所示。

图3 改进的DBN模型

学习模型为监督学习模型,使用反向传播算法的神经网络在进行梯度下降优化时,由于梯度消失问题的存在会变得低效[15],而深度置信网络(Deep Belief Network,DBN)作为一个概率生成模型,其在底层数据之上增加了几层随机隐藏单元,可以有效解决梯度消失问题[16-17]。DBN是一个无监督学习模型,其典型结构如图3(a)所示。因此,将包括标签信息在内的最终分类层添加到DBN模型的顶层,构建判别型(Discriminative)深度学习模型,图3(b)是文中改进的模型,它是拥有一个输入层,多个隐藏层和一个输出层的多层网络,其中的每个节点都以ReLU(Rectified Linear Unit)函数为激活函数。由于标签信息Y的存在,改进后的模型便成为了一个从底向上监督学习方式训练的深度前馈模型。需要强调的是,深度前馈模型中DBN结构部分中的隐藏节点权重Wi来自于原始DBN的无监督预训练,这些参数只用于初始化权重,并在随后模型训练中用梯度下降方法对这些参数进行优化调整。

设训练数据集有K个采样{(v1,y1),(v2,y2),…,(vK,yK)},v是特征向量,y是其对应的标签信息。特征向量v从底部的可见层节点输入神经网络,并且初始的权重已经通过原始DBN学习得到,然后权重便会被逐渐优化,所以可以简单地将预测值与输出值的均方误差作为学习成本,即成本函数C:

(12)

其中,w是所训练网络的权重集合,y是标签信息,hw(v)是产生预期输出的假说函数。所以整个数据集的训练总成本为

(13)

(14)

在反向传播算法中,神经网络从上层到下层通过随机梯度方法更新权重向量,即

(15)

其中,ξ是自适应参数。

图4 模型训练结果矩阵

利用OCTANE(Open Car Testbed And Network Experiments)[18]生成200 000个测试数据对模型进行测试训练和验证,在Nvidia GTX 1080 TI GPU上训练该网络200 epochs大约需要6 h。最后的模型输出结果矩阵如图4所示。

验证结果显示,该模型检测性能优异,总体准确率约为97.8%,假阳性错误率约为1.6%,假阴性错误率约为2.8%。

2.2.3 异常识别

图5 用于ACC系统的入侵检测和补偿机制

2.3 控制系统和补偿策略

本研究以模型预测控制(Model Predictive Control,MPC)系统[19]为主要的ACC核心,MPC系统以正常模式控制车辆,使用系统线性模型、扰动和噪声模型来估计控制系统的状态,并预测系统未来的输出。通过使用预测的输出,MPC解决了二次规划的优化问题,为变量提供了最佳调整。MPC系统结构如图6所示。

图6 模型预测控制系统

IDS持续监测着ACC系统的行为,如果检测到异常,则意味着已发生攻击。因此,IDS从主控制系统切换到补偿器,以减轻攻击对车辆的影响。补偿器是PID控制系统,因为该控制器家族在工业中应用普遍,而且将其内嵌入系统的成本很低。在类似工业案例研究中[20-21],由于P控制器响应快,无震荡,因此本文使用P控制器补偿前述隐蔽攻击场景的影响。

3 实验结果与分析

在MATLAP Simulink搭建文中所提出的入侵检测机制和补偿策略,模拟平台上使用以下参数初始化运行环境:后车汽车1和前车汽车2的初始位置分别为x0,1=10 m和x0,2=50 m;两车的初始速度为v0,1=20 m/s和v0,2=25 m/s;另外,假定Tgap=1.4 s,Ddefault=10 m,vc=30 m/s,a1,min=-3 m/s2,a1,max=2 m/s2。

3.1 智能入侵检测系统

智能入侵检测系统运行结果如图7所示。在两种场景下,攻击都是在t=40 s发起的。观察实验结果可发现,IDS警报标记几乎立即发出。因此,补偿系统也在检测到攻击后旋即激活。

(a1) 控制信号

(b1) 控制信号 (a2) IDS标记

(b2) IDS标记

3.2 隐蔽攻击的补偿——攻击场景1

如前所述,第1种隐蔽攻击与ACC的速度控制目标有关。刚好在t=40 s时,前车减速且车间距变小,攻击者发动攻击给后车加速,如图7(a)和图8(a)所示,因而两车之间的距离暂时小于安全距离。攻击可以重复发起,图中只展示了一个攻击行为。在40 s之后速度的增加和车距的减少都不够大,不足以引起驾驶者的察觉,因此该攻击是隐蔽的。然而事故几率却增加了,特别是在攻击发生的短时间内。由于IDS的存在,自适应巡航控制系统在攻击被发现时由内置的P控制器接管,攻击大约在200 ms后很快被检测到。从图8(b)可以看出,车辆在t=40.2 s之后设法恢复正常运行,因为IDS已经把受感染的控制器从系统环路中隔离,并激活内置补偿器,让其接管控制权。

3.3 隐蔽攻击的补偿——攻击场景2

在第2种隐蔽攻击中,攻击者试图扰乱自适应巡航控制系统的参考体系(如作为系统参照对比的安全距离),尤其是自适应巡航控制工作于模式2,以便让车间距离保持低于安全距离。IDS对此攻击的反应如图7(b)所示。由于是隐蔽攻击,所以如图9(a)所示,驾驶者很难察觉到加速度的细微波动,然而两车之间的相对距离却逐渐变小,大约60 s后车间距缩小了近5 m。与50 m相较,这个变化对驾驶者不明显,但明显增加了事故几率,特别是前车急刹车时。与之前场景类似,如果补偿器在收到IDS信号后激活介入控制,便能设法克服攻击带来的恶劣影响。如图9(b)所示,攻击在不到200 ms内再次被检测到,在一小瞬间的扰动后,车辆恢复良好的运行状态,系统控制目标得以实现。

仿真模拟结果表明,入侵检测和补偿策略快速有效,它可以确保两车之间的相对距离不会小于安全距离。

图8 第1种隐蔽攻击场景下的系统表现

4 结束语

笔者对智能汽车自适应巡航控制系统中隐蔽攻击的检测方法和补偿机制进行了研究,介绍了两种攻击场景下导致的巡航系统无法正常工作,不能满足智能汽车对速度和车距控制的要求。提出了人工神经网络识别器用于学习自适应巡航控制系统并预测其输出。文中提出的新型IDS将会对比实际自适应巡航控制的输出和识别器的预测输出,进而判断自适应巡航控制行为是否异常。异常由统计度量捕获,IDS对此产生警告,并切换MPC系统至内置PID控制器。仿真模拟结果证实了文中方法的有效性,它不仅实现了隐蔽攻击的探测识别,而且也能减轻攻击对测试车辆性能的影响。

车联网是多行业深度融合的新型产业形态,是全球创新的热点和未来发展的制高点,可以预见到其具有未来的广阔应用空间。随着汽车电子化水平越来越高和5G的推广应用,越来越多的汽车子系统将会接入网络,都可能遭受入侵威胁,安全挑战压力巨大,未来研究重点将会放在提升入侵检测和补偿机制的普适性,使其可以应用到更多的汽车组成系统和场景。同时,性能更优秀的神经网络识别器模型也是研究一大方向。

猜你喜欢
前车攻击者控制器
三转子式比例控制器设计与内泄漏分析
南京溧水电子3款控制器产品
基于贝叶斯博弈的防御资源调配模型研究
基于NFV的分布式SDN控制器节能机制
正面迎接批判
正面迎接批判
智能液位控制器在排水系统中的应用
物理问答
五七炮对屏风马挺7卒
力量源自看家布局