王 鹏 都一博 李玉峰
1 中原工学院 郑州 450007
2 网络通信与安全紫金山实验室 南京 210008
3 上海大学 上海 200444
随着智能网联汽车的快速发展,云计算、人工智能、车联网通信(V2X)等先进技术正在汽车中得到越来越广泛的应用,这使得联网汽车更加智能,为人们提供舒适的服务并保障驾驶员和乘客的安全。然而,随着汽车变得越来越连接,打破了汽车现有的闭环状态,为车载电子系统带来了潜在的信息安全问题。当汽车开始变成车轮上的联网计算机时,车载网络安全问题成为了一个日益严重的问题[1]。
近年来,汽车信息安全事件不断发生。2021年,黑客利用中继装置放大车主汽车钥匙的信号,入侵解锁并偷走了伯明翰路上的奔驰C级汽车;2022年,奇安信星舆实验室Kevin2600发现本田汽车钥匙存在设计缺陷,无线信号被重放[2];同年,蔚来汽车遭受了一起勒索攻击事件,导致大量用户数据泄露;2023年,包括丰田、奔驰、宝马等全球20多家知名车企,由于应用程序接口的漏洞,导致车主个人信息泄露[3],暴露了用户的敏感数据。这些事件无不显示针对网联汽车的攻击不仅危及个人隐私、造成经济损失,还可能危害人们的生命安全,甚至对国家的公共安全造成威胁,因此,迫切需要采取措施以保障车辆的网络安全。
现有的车载网络协议在设计之初缺乏信息安全考虑[4],没有提供内置的身份验证和加密设施来保护系统免受潜在的安全攻击;此外CAN总线协议广播消息的性质也为攻击者提供了机会;汽车网联化也将更多的设备如蓝牙、GPS、传感器等接入到车载网络中,无形中增加了更多的攻击入口,这些因素都导致网联汽车容易受到攻击损害。更改协议可能需要对车辆的硬件和软件进行较大的改动,而异常检测技术可以在保持CAN总线协议不变的情况下进行部署,及时发现攻击后使其无害。因此,研究车载网络异常检测技术对提高车载网络安全性有很大帮助。
智能网联汽车的兴起为我们带来便利和智能化,也带来了车辆网络安全新挑战。高度互联性使其面临广泛、复杂的攻击面,恶意攻击者可操纵车载网络和远程控制系统,威胁乘客安全和交通系统稳定。因此,了解其架构、攻击面和攻击方式,对后续采取有效防御措施尤为关键。
智能网联汽车是一种基于互联网和通信技术的新型汽车,通过使用大量ECU控制单元、传感器、执行器相互协同工作来实现车身控制、智能驾驶等各类功能[5],智能网联汽车系统架构如图1所示。
图1 智能网联汽车系统架构
智能网联汽车通过车内网络与不同类型的ECU、远程通信和车载娱乐系统和车载诊断系统(OBD-II)连接,以自动广播消息。车内有不同的通信协议,如CAN、FlexRay、媒体导向系统传输(MOST)等。在这些协议中,CAN是汽车网络应用最为广泛的一种,负责不同系统功能的整体行为,如转向、发动机管理、制动系统和导航等。智能网联汽车融合了车辆自身的感知、计算和决策能力,通过与周围环境的无线通信和数据交换,实现车辆之间的协同工作。
智能网联汽车作为高度互联的移动终端,面临着广泛的安全攻击面。车载网络攻击面涵盖了车辆中各种组件、接口和通信渠道等存在潜在安全风险和攻击威胁的部分。以下是一些常见的车载网络攻击面。
1)无线通信:包括车辆与外部网络连接的无线通信方式,如蓝牙、Wi-Fi、蜂窝网络等。攻击者通过这些无线通信渠道入侵车辆系统,进行远程控制、信息窃取或干扰。
2)CAN总线:CAN总线是车辆内部系统之间的主要通信网络。攻击者通过物理接入或远程方式入侵CAN总线,进行恶意指令注入、篡改车辆数据或控制车辆的各种功能。
3)车载娱乐系统:车载娱乐系统通常与车辆的其他系统存在连接,攻击者通过娱乐系统的漏洞或弱点入侵车辆系统,控制其他关键功能,如刹车、加速等。
4)外部存储设备接口:车辆通常具有USB接口、SD卡插槽等外部存储设备接口,攻击者可以通过恶意软件或病毒感染存储设备,然后将其插入车辆系统,导致恶意代码传播或攻击。
5)车载诊断系统(OBD-II):用于进行车辆维护和故障诊断。攻击者可以通过物理访问或远程入侵诊断接口,操控车辆系统,执行恶意操作。
针对智能网联汽车终端,攻击者主要通过物理侵入或远程侵入的方式进行攻击[6],利用DoS、重放、女巫攻击等手段,针对车载总线和系统发动攻击,以获取车辆控制权和窃取车辆信息。物理攻击针对接口和CAN总线进行,远程攻击包括远程控制和对无线通信的攻击等。典型攻击方式与常见的防御方法见表1。
表1 典型攻击方式及常见防御方法
异常检测技术是保护车载网络安全的有效手段,它用于寻找异常情况,并在第一时间发现攻击并使其无害。针对智能网联汽车车载网络异常检测技术,按照技术发展历程分为基于设备指纹、参数监测、信息论和基于人工智能以及混合方法五个方面。如图2所示。
图2 车载网络异常检测技术
基于设备指纹、参数监测、信息论的方法属于基于规则或特征的检测方法,检测准确度高,但只匹配特征库里的攻击,对于未知的攻击,基本无能为力。随着人工智能的发展,检测方法变得智能化,借助机器学习(ML)、深度学习(DL)等技术,能在一定程度上检测未知攻击,相对于前述方法,人工智能方法具备显著优势且备受关注。近几年,深度学习在各行业大热,越来越多的深度学习技术被应用于车载网络并取得较好的效果,是目前的研究热点。
然而,这些方法仍是各自独立的研究途径,为实现更优异的检测效果,更需善用技术的互补性,巧妙融合各种方法,取长补短,例如集成学习的协同效应以及结合多种技术优势的混合方法,从而更好地应对多样化的攻击威胁。将各种方法的优势和局限性进行比较如表2所示。后面对这几种方法的研究展开详细介绍。
表2 车载网络异常检测技术优势及局限性比较
2.2.1 基于设备指纹的异常检测技术
基于设备指纹的车载网络异常检测技术是一种有效的安全防护方法。该技术通过对车载网络中设备的唯一特征进行提取和分析,识别出异常行为并进行及时响应。
研究人员在车载网络安全领域提出许多基于设备指纹的异常检测技术。其中,Song等人[13]通过提取网络信号特征并进行统计分析,实现了对入侵行为的检测。另外,Lee等人[14]则利用CAN消息的返回时延和时间间隔等作为设备指纹信息,并取得了较好的检测效果。VoltageIDS[15]利用CAN信号作为每个ECU的独特指纹,考虑欺骗和总线断开攻击,通过观察两个ECU之间发送的相同信号来检测电气故障攻击。
基于设备指纹的车载网络异常入侵检测技术具有精确性、实时性和适应性等优点,能够有效地识别和响应入侵行为。然而,该技术存在特征提取复杂、且物理特征易受到如设备温度和老化等影响而变化的问题。
2.2.2 基于参数监测的异常检测技术
基于参数监测的异常检测技术是通过监测网络和消息级别的参数,如车辆的车速、加速度、刹车状态、转向角度等各种参数来检测异常行为或攻击迹象。
相关参数监测解决方案如下。李中伟等人[16]针对总线脱离攻击所引发的车载CAN总线通信安全问题,提出了一种车载CAN总线脱离攻击入侵检测算法。WINDS[17]通过连续小波变换的设计来检测CAN总线上的异常情况,利用小波变换精确地确定频率分量在时间轴上的位置,在攻击立即发生的情况下实现更高的检测率。
基于参数监测的IDS具有较低的计算要求,为了提高检测的准确性和鲁棒性,可以考虑结合其他参数,以综合评估车载网络的安全状态,并及时发现潜在的入侵行为。但容易受到噪声影响。
2.2.3 基于信息论的异常检测技术
信息论是一种数学处理通信系统中传输信息的概念、规则的方法。其中,熵是信息论中的关键概念之一,基于熵的异常检测算法基于其统计熵水平来表征一组数据的预期行为[18],用于衡量无序度和与随机变量相关的不确定性。
基于信息论的一些解决方案描述如下。张海春等人[19]在分析了基于信息熵的车载CAN总线异常检测机制的基础上,提出一种相对熵的检测方法,弥补了前者无法检测出异常细节信息的缺陷。谭凯等人[20]针对CAN总线通信安全问题,提出了基于报文位反转特征和条件随机场的CAN总线协议字段划分算法,通过使用模糊测试技术来监视网络的异常状态并发现网络漏洞,正确有效地检测出大多数异常行为。文献[21]中,研究者使用Bloom滤波器结合报文标识符和部分数据字段的信息,实现了对车载网络中报文周期性的检测,可有效发现潜在的重放或伪造攻击。
基于信息熵的车载网络异常检测可以有效检测重放、泛洪等攻击,但不具备良好的稳健性,易受汽车状态变化造成的信息熵抖动影响。另外,需要消耗大量的计算资源,特别是在大规模车载网络中,可能会面临实时性要求难以满足的问题。
2.2.4 基于人工智能的异常检测技术
1)传统机器学习
传统的基于机器学习的异常检测技术,主要通过经验来自动改进算法,旨在通过构建合适的特征工程和选择适当的分类算法来检测车载网络中的异常行为,可以应用以理解CAN网络数据的模式,从而学习系统的预期行为。
L.Yang等人[22]使用CAN入侵OTID数据集,决策树、随机森林、额外树(ET)和XGBoost模型,并与KNN和SVM进行比较,结果表明,DT、RF和ET方法比KNN和SVM方法更有效,具有99.99%的准确性。文献[23]中提到一个基于VGG的模型,与其他作者在先前研究中使用的传统方法KNN、SVM和RF相比,假阳性率降低,准确率提高到96%。在文献[24]中,OTID数据集与SVM、DT、MLP和RF一起使用。RF是性能最好的分类算法,准确率为98.5%。
基于ML的IDS通过审查大量数据发现人类未能明显观察到的趋势和模式,能够检测未知攻击。此外,随着更多的数据被输入到模型中,该模型不断提高准确性和效率。缺点是计算要求高。
2)深度学习
通过构建和训练深层神经网络从大数据集中来提取和学习数据的高级特征,从而实现复杂的模式识别和分类任务。
基于深度学习方法的入侵检测研究方面,Song等人[25]设计了一种基于深度卷积神经网络的车辆网络入侵检测系统,并构建了CAN ID二维矩阵数据作为输入,以训练DCNN分类器。Ho等人[26]提出一种利用卷积神经网络检测已知和创新网络攻击的新入侵检测模型。Lo等人[27]通过使用CNN和LSTM网络自动提取时空特征并证明自动提取的频谱和时间特征在表征网络流量方面比人工特征工程表现更好。
深度学习方法与传统ML相比避免了复杂的特征提取步骤,且可以通过网络层将输入的高维特征进行多维抽象变换,发现更深层次的潜在特征,但是深度学习方法需要海量数据和高算力,训练时间长,泛化能力差,而且它像一个黑匣子,可解释性差。
3)集成学习
集成学习方法是通过将多个弱分类器组合成一个强分类器来改善异常检测的效果,以产生最优预测结果的技术。此外,集成学习还可以通过投票、加权或组合等方式来整合不同分类器的输出,提供更可靠的异常检测结果。
Khoei等人[28]研究了基于装袋的、基于增强的和基于堆叠的三种不同的集成学习技术的性能。Shi等人[29]提出基于集成学习的极端树网络入侵检测框架,通过改进极值树减少集成训练时间。Mowla等[30]提出基于动态投票的车载网络可解释方法,利用随机森林和动态投票技术,通过特征和模型探索提供具有可解释性的鲁棒解决方案。
通过集成学习,IDS能够综合多个分类器的优势,提高检测率、降低误报率,可以实现所需的准确性和鲁棒性。但是,多个模型集成一定程度上增加了模型复杂度,反应时间变长、模型体积增大,降低在车辆上的可用性。
2.2.5 基于混合方法的异常检测技术
基于混合方法的异常检测技术是将多种不同的技术和方法结合起来,以增强检测能力和提高准确性,和集成方法相似,但它一般按照某种规则进行分层,先后使用互补的技术。它综合利用传统的规则基础方法和基于机器学习的方法,以及其他相关技术,以应对各种复杂的安全威胁和攻击。
相关文献如下:赵振堂等人[31]针对车内多种入侵行为难以检测的问题进行分析,提出了基于SVDD的流量异常检测方法以及基于HTM网络的数据异常检测方法。Wisanwanichthan等人[32]提出了一种基于朴素贝叶斯和SVM的双层混合网络入侵检测方法,研究了不同攻击类别的共同特征,在检测罕见攻击方面表现出出色的性能。
基于混合的方法结合两种或几种方法的优势,从不同的点出发,各层有各层的工作,可以一定程度上节省时间,增加准确性,设计和部署混合方法的IDS面临一些挑战,如训练数据的获取和标记、算法选择和参数调优、系统的可扩展性和实时性等方面的考虑。
车载网络易受不同类型的攻击,对各种攻击检测不同ML模型的预测性能差异很大,我们往往只能得到多个有偏好的模型,车载网络的异常检测存在单一模型检测不全面的问题,集成学习即组合多个弱模型以期望得到一个更好更全面的强模型。因此本节提出了一种基于Stacking集成的异常检测方法。
集成学习通过构建并结合多个学习器来完成学习任务,以获得比单一学习器显著优越的泛化性能。Stacking是一种常见的集成方法,由两层组成,先从初始数据集训练出初级学习器,然后“生成”一个新的数据集用于训练次级学习器,在这个新数据集中,初级学习器的输出被当作样例输入特征,而初始样本的标记仍被当作样例标记。Stacking思想的原理示意如图3所示。
图3 Stacking思想原理图
在Stacking方法中,每个基模型选取任意一种机器学习模型,比如KNN(K近邻)、NB(朴素贝叶斯)、DT(决策树)、SVM、逻辑回归等。并将第一层训练出最好的模型作为第二层集成的元分类器。经验上来说,各个基模型之间差异性越显著,集成效果越好。
系统使用Python3.9实现,使用包含最新攻击场景的标准IDS数据CICIDS2017[34],包含正常、Dos攻击、PortScan攻击、BruteForce攻击等七类数据,该数据集共77种特征。选取了部分数据样本进行实验。
实验选择KNN,NB,RF(随机森林)模型作为基础分类器,随机森林作为Stacking集成的元分类器进行多分类任务,流程如图4所示。
图4 实验流程图
在模型训练之前,对数据进行归一化处理、缺失值填入、标签编码等预处理,然后由于某些异常数据数量较少,使用过采样(SMOTE)方法平衡数据集,数据分布样本变化如表3所示,实验选用准确率、检测率、召回率、F1分数和预测时间作为评价指标。
表3 数据样本情况
通过实验,生成如图5所示的混淆矩阵,显示了三个基础分类器和集成模型在测试集上的预测结果。分析各模型针对各种攻击的F1分数如表4所示,集成模型在各种攻击检测的F1分数均取得最优。
表4 各攻击的F1分数
图5 NB、KNN、RF、Stacking集成混淆矩阵
将训练的模型性能与单一模型的效果进行比较,如表5所示,基于NB算法的准确率最低为66.346%,RF分类器在三者之中取胜作为Stacking集成的元分类器,将三种模型进行叠加后,预测时间虽然比最快的NB模型慢一点,但准确率、检测率、召回率和F1分数均达到最优,相较于最优的RF模型准确率从99.541%提高到99.602%,即可以更好检测到所有训练好的攻击。
表5 CICIDS2017数据集上的性能评估
随着汽车智能化的高速发展,车载网络异常检测技术的重要性与日俱增。然而,日益复杂和多样化的安全威胁使得车载网络异常检测面临着一系列挑战。在保障车辆和乘客安全的同时,车载网络异常检测需具备全面、实时、准确和高效等特点,以应对不断演化的威胁和攻击手段。文章对当前车载网络异常检测技术面临的挑战进行深入分析,展望了其未来可能的发展方向。
随着攻击者不断变化和创新攻击方式,传统的检测方法很难有效应对未知攻击。为提高车载网络的安全性,需要开发更智能和自适应的检测方法,以覆盖更多的攻击场景。未知攻击的检测可以借助机器学习、深度学习等先进技术。通过使用大规模数据集和实时学习算法,让检测系统不断学习和适应新的攻击方式,从而提高检测的准确性和泛化能力。同时,可以采用行为分析的方法,对车辆和乘客的正常行为进行建模,当出现异常行为时,及时发出警报。
车载网络异常检测系统需要具备及时发现和响应异常行为的能力,这是确保车辆安全的重要要求。然而,在实际应用中,车辆面临着多种潜在的攻击和异常行为,处理大规模数据可能导致计算和存储的负担增加,从而影响检测系统的实时性能。对此,研究人员可以针对车载网络的特点,通过采用数据流处理、分布式计算、轻量级算法和模型以及硬件优化等方法,提升系统的实时性,确保及时检测和响应车载网络的异常行为。这将为车辆提供更可靠的安全保障,保护乘客和车辆的安全。
一些先进的异常检测方法,如深度学习模型,通常具有较大的规模和计算复杂度。然而,车载网络环境受资源限制,为解决这一问题,可以采用模型压缩和优化技术,减小模型的规模和计算复杂度,同时保持检测的准确性。一种常见的方法是使用剪枝和量化技术,通过去除冗余参数和降低精度来减小模型的大小。此外,还可以采用轻量级的神经网络结构,如MobileNet和EfficientNet等,这些网络结构具有较少的参数和计算复杂度,适合在车载网络中进行部署。此外,还可以考虑利用硬件加速器,如GPU和FPGA等,以提高车载网络异常检测系统的计算性能和能效。
智能网联汽车产生的数据具有多模态性,包括传感器数据、通信数据、地理位置数据等多种类型的数据[33]。目前的研究大多基于单一模态的数据,忽视了多模态数据之间的关联和相互影响。因此,如何综合利用多种数据源进行异常检测,并通过数据融合和综合分析来提高异常检测的效果,成为未来车载网络异常检测技术的重要研究方向之一。
研究人员可以探索融合不同模态数据的方法,以获取更全面的异常行为信息;还可以探索跨模态数据的迁移学习方法,通过在一个模态上学习到的知识,来辅助其他模态数据的异常检测。减少在每个模态上进行训练的工作量,并利用已有的知识来提升异常检测的性能。这将帮助我们更好地理解车辆行为和交通环境,提升异常检测的准确性和鲁棒性,为智能网联汽车的安全和可靠性提供更强大的保障。
智能网联汽车作为车联网朝着“云-管-端”架构发展下的终端节点,面临着日益严重的信息安全威胁。在此背景下,文章首先介绍了智能网联汽车中车载架构,随后总结了当前车载网络安全问题,对比分析了车载网络异常检测技术现状。最后总结了当前车载网络异常检测技术面临的挑战并展望未来的发展方向。