登录 | 注册 退出 投稿

【网络安全】联网车辆中的入侵检测系统

专栏作者 2024-02-18

内容提要:本文介绍了一种用于汽车行业的嵌入式入侵检测系统(IDS)。它的工作原理是采用两步算法来检测可能的网络攻击。第一步,该方法通过使用空间和时间分析来过滤控制器局域网(CAN-Bus)上的所有消息;如果一组消息可能是恶意的,则通过贝叶斯网络对这些消息进行分析,从而给出给定事件可被分类为攻击的概率。


摘要

现代车辆都连接到网络,并且由于能够从网络发送和接收数据,因此被视为物联网的智能对象。汽车行业面临的最大挑战之一是确保车辆安全可靠。事实上,车辆上有更多的互联设备,例如信息娱乐系统和/或数据交换系统。事实上,随着智慧城市和智能道路等新范式的出现,物联网的愿景已经发生了巨大的变化。今天,我们谈论的是车辆与世界其他地方紧密连接的V2X系统。在这种情况下,所有联网车辆供应商的主要目标是提供一个安全系统,以保证驾驶员和人员的安全,免受可能的网络攻击。因此,本文介绍了一种用于汽车行业的嵌入式入侵检测系统(IDS)。它的工作原理是采用两步算法来检测可能的网络攻击。第一步,该方法通过使用空间和时间分析来过滤控制器局域网(CAN-Bus)上的所有消息;如果一组消息可能是恶意的,则通过贝叶斯网络对这些消息进行分析,从而给出给定事件可被分类为攻击的概率。为了评估我们方法的效率和有效性,根据测试准确性的经典评估参数,进行了一项实验活动来评估它们。这些结果与文献中有关网络攻击的常见数据集进行了比较。在测试场景中获得的第一个实验结果似乎很有趣。结果表明,我们的方法在最常见的网络攻击(DDoS、模糊、仿冒)中具有良好的对应性,相对于测试准确性的经典评估参数获得了良好的分数。当我们在自由状态攻击中测试系统时,这些结果性能有降低。

1.简介

现代车辆被认为是物联网生态系统的智能节点。自动和互联车辆具有复杂的架构,因为它们集成了多种自动驾驶功能和各种通信接口。外部攻击可能会损害这些功能,不仅危及驾驶者的安全,还可能对公司和乘客的隐私、财务和运营方面产生影响。因此,车辆连接性的增加,也增加了网络攻击的潜在风险。

为了将安全评估集成到联网和自动驾驶车辆原型中,有必要确保对驾驶员的安全和隐私、商业模式和运营商知识产权的威胁得到很好的应对。自动驾驶汽车的物联网安全评估允许制造商执行以下操作:

• 增强对自动驾驶汽车的兴趣,证明安全风险已得到缓解,网络安全概念已得到确认和验证,系统已得到系统测试。

• 确保按照最先进的标准和最佳实践处理网络安全威胁,从而保护驾车者和制造商。

• 确保所采用的自动系统在开发时考虑到安全设计和深度防御,从而开发安全且最先进的自动驾驶技术。

• 通过与掌握信息安全、漏洞和适用标准最新知识的国际专家合作,获得竞争优势。

如今,经过多次尝试分析问题并找到补救措施,ISO 21434标准已经推出:这一新标准代表了旨在加强参与汽车产品开发的公司内部网络安全文化和存在的努力。它还将网络安全流程集成到现有的安全流程中,特别是在影响评估和软件开发流程中。ISO 21434设定了明确的目标,即确保汽车行业的所有主要参与者,无论是汽车制造商(所谓的OEM)还是零部件供应商(所谓的TIER)意识到网络安全在产品开发过程中的重要性,创建了所谓的“设计安全”方法。

因此,考虑到上述问题,实现网络安全的框架应预见联网车辆生命周期的不同方面,特别关注以下方面:

• 持续漏洞管理:定义固件和应用程序更新的授权渠道,限制攻击范围。

• 安全可维护性:例如,如果我们要提及数据的加密保护,那么随着时间的推移,初始阶段采用的密钥和算法不太可能保证相同级别的保护。因此,安全设计必须与模块化开发方法相关联,以便创建能够适应新威胁的产品。

• 网络安全演进:从这个角度来看,参考航空业获得的经验是有用的,航空业使用分区嵌入式系统和域隔离可以实现特别高的安全标准。

• 信任链的定义,从车辆各个组件和驱动系统的原型设计,到用于数据交换和通信的云基础设施。基于分布式技术和区块链的解决方案可以为参与生产链的各个阶段的认证和供应链的动态做出根本性的贡献。

• 实施专用于引用专门安全策略的部门的接口。由于频繁使用从其他行业借用的技术(例如OTA和蓝牙连接),因此更加需要制定此类对策。

在这项工作中,提出了一种入侵检测系统,能够分析CAN总线上的流量并了解通过通信通道传输的消息是否是恶意的。提取此信息状态后,使用两步算法来识别可能的攻击:在第一阶段,分析各个感兴趣的ECU的参数,将它们与识别值中可能的异常的空间和时间分析进行比较。如果是肯定的,则通过使用贝叶斯网络,可以通过推理过程来计算总线上存在的消息组合代表可能的网络攻击所给出的异常状态的概率。

在本文中,我们希望分析车载网络的一个子系统作为案例研究。我们特别关注专家强调的对车辆正确运行至关重要的一些单元。事实上,目的是对这些方法在联网车辆内部的可能使用进行初步分析。本文的组织方式如下:下一节将介绍一些相关的工作。之后,我们讨论物联网、机器学习和贝叶斯网络的网络安全背景,最后讨论汽车行业和CAN-Bus。下一节介绍我们的研究案例并遵循建议的方法。最后对一些实验结果进行了讨论并得出结论。

2.相关工作

随着技术的出现,汽车行业正在逐步为车辆配备新功能,这在几年前是不可想象的。不久的将来,主要新闻将与此类车辆的连接性以及基于它们的自动驾驶水平的提高有关。如今,许多联网车辆通过API、Wi-Fi或自组织云系统交换信息。然而,每个新的通信渠道都会带来新的漏洞,尤其是整个车辆功能的基础,即内部网络。事实上,互联网接入使车辆面临更大的网络攻击可能性,从而增加了整个系统的脆弱性。网络安全攻击背后的原因可能多种多样且各不相同。例如,攻击者可以窃取个人信息、监视人的行动,在最坏的情况下甚至远程控制车辆。具体来说,现代车辆的内部网络(称为CAN总线)由大约70个节点组成。每个节点对应一个ECU,负责控制特定的车辆部件,例如车窗、通风系统或发动机。ECU通过称为CAN总线的未加密通信通道以广播模式进行通信。如果攻击者可以访问它们,整个车辆的安全性将受到损害。确保CAN总线安全的问题早已为人所知,并且已通过各种方式得到解决,所有方法都有些有效,但在性能方面效率不高。事实上,文献中的许多提案旨在重新设计CAN标准,在硬件和软件方面进行某种演变。这种类型的解决方案,特别是在硬件方面,不能确保车辆已经上市的安全性,因为需要更新车辆内通信涉及的所有组件,从ECU到电缆。其他方法旨在创建潜在攻击者的入侵检测系统。然而,在这种情况下,所需的计算能力超出了当今车辆的微控制器的能力。根据需要保持交换的信息量不变,计算能力较低不考虑基于MAC的解决方案。另一项令人兴奋的工作介绍了一种新颖的算法来提取CAN总线的实时模型参数,并开发SAIDuCANT,这是一种基于规范的入侵检测系统(IDS),使用基于异常的监督学习并以实时模型作为输入。最近的一些研究分析了物联网的网络风险和现有的网络风险评估方法以及人工智能和机器学习的物联网网络风险评估的进展。其他有趣的工作与车辆移动性及其管理有关。

3.物联网网络安全、贝叶斯网络和汽车信息安全背景

在本节中,将说明物联网的安全原理,然后在汽车领域进行详细说明,特别关注基于概率方法的入侵控制系统。

3.1.物联网中的网络安全

随着物联网进入日常生活,漏洞数量不断增加,网络攻击的风险也随之增加。在文献中,人们关注物联网应用所基于的原理和模型。与此同时,与隐私和安全相关的问题仅以通用方式处理。首先,必须考虑设备的异构性问题。事实上,随着许多连接到网络的智能对象的出现,我们从保护单个计算机转向保护多个不同设备,这些设备由不同制造商制造,每个设备都有其安全级别。即使大多数设备的设计都特别注重安全性(实际上,这通常不会发生),但很少有设备存在一些漏洞就足以摧毁整个结构。此外,在许多情况下,设备必须始终保持连接,因此可能的攻击者可以随时发起攻击。由于物联网安全问题是最近才被考虑的,因此没有有价值的经验数据存储库或已经发生的攻击的签名。

此外,在物联网应用中,安全和防护之间的区别非常模糊。一般来说,“防护”的概念是指数据和IT系统的安全;“安全”的概念是指物理对象和人员的安全。到目前为止,这两个概念已经分开。另一个关键问题涉及用户隐私;隐私威胁可能来自可能的攻击者和管理物联网市场的公司。事实上,物联网设备已经以非常普遍的方式成为日常生活的一部分,并收集大量有关人们的信息,例如习惯、品味、健康等。这些信息既可以被公司使用(例如,分析用户),也可以被黑客用于恶意目的。为了研究有效的对策,有必要对可能的攻击进行分类。可以根据具有感知层(物联网架构的底层)的物联网应用程序通用架构的三个级别中可能存在的漏洞对攻击进行分组;它通过智能设备与物理设备交互,例如RFID、传感器、执行器等)、网络层(中间负责信息传输的层)和应用层(物联网架构最上面的层。它接收网络层传输来的数据并使用这些数据提供所需的服务或操作):

• 设备被盗或损坏:(感知层)设备的物理损坏。

• 测信道攻击:(感知层)收集设备在执行特定任务期间产生的运行时间、功耗、电磁辐射或声音等信息,以推断设备内存中包含的信息;

• 伪节点攻击:(感知层)插入攻击者创建的网络节点,以传输虚假信息或消耗合法节点的能源资源;

• 重放攻击:(感知层)截获节点的真实凭证后;然后,攻击者将它们发送回接收者,模拟发行者的身份;

• 节点篡改攻击:(感知层)用攻击者创建的带有恶意功能的组件替换部分节点硬件或固件;

• 干扰攻击:(感知层)如果节点通过无线协议进行通信,则包括干扰协议使用的频率;

• 拒绝服务(DoS):(网络层)其目的是阻止通过网络到达节点。为了实现这一目标,可以使用许多技术,例如在网络上发送大量伪造数据包,以确保各个节点的输入信息多于它们可以处理的信息(洪泛),从而损害网络中的节点。以修改其网络拓扑并降低其性能(污水坑攻击);

• 中间人:(网络层)包括在各个节点传输的数据到达接收者之前拦截这些数据,以窃取数据或重新传输修改后的版本;

• 存储攻击:(网络层)包括修改设备内存或云端中的用户信息;

• 路由攻击:(网络层)一类攻击(例如污水坑攻击),其中攻击者试图更改设备用于路由数据包的信息,以创建环路、发送错误消息或丢失数据包;

• 跨站点脚本攻击(XSS):(应用程序层),它使用客户端脚本语言(例如JavaScript)通过显示特定网页的浏览器执行恶意代码。这种类型的攻击也被利用于IoT领域,因为嵌入式设备通常使用Web界面进行配置,更具体地说,在这种情况下,我们谈到跨通道脚本(XCS);

• 恶意代码:(应用程序层)将恶意代码(恶意软件)注入应用程序以供其执行;

• 凭证盗窃:(应用程序层)以冒充合法用户。这一层可以通过窃听、中间人攻击、暴力或字典攻击(尝试猜测凭据)等来完成。

正如攻击组合起来以达到一个目标一样,必须组合各种对策来阻碍攻击者,以便尽可能长时间和昂贵地进行攻击。为了避免设备损坏或违规,可以使用一系列不一定使用先进技术的措施。

3.2.贝叶斯网络

贝叶斯网络是一种概率图,它通过概率推理过程(使用贝叶斯定理的单位)来预测一组随机变量之间的依赖关系。贝叶斯网络可以通过直接无环图(直接无环图或DAG)来图形化表示,即具有定向弧且没有直接环的图。图的每个节点都与一个可以呈现各种状态的随机变量相关联。后者必须是互斥的,并且与概率值相关联。另一方面,连接两个节点的弧表示后者之间的条件依赖关系。在这种情况下,开始的节点称为“父节点”,而所指向的节点称为“子节点”。如果两个节点未连接,则它们是条件独立的。没有父节点的节点与先验概率表相关联,该先验概率表表达了与该节点关联的随机变量可以假设的值的先前知识。另一方面,具有至少一个父节点的节点与条件概率表(CPT)相关联,该条件概率表包含节点的状态可以假设为由父节点所假设的状态的可能组合来调节的概率。应用领域数不胜数,从决策支持系统到监测和诊断系统。如上所述,许多研究工作都集中在贝叶斯网络在关键系统中的重要性上,因为它们可以理解我们的网络是如何“推理”以获得结果的。事实证明,这对可解释人工智能至关重要,因为与神经元网络、机器学习和深度学习算法不同,这些算法可以提供用于获得结果的模式。

3.3.汽车信息安全

事实上,之前针对通用物联网应用暴露的问题也适用于汽车世界,因为人们已经说过,汽车在各个方面都已成为智能物体。在这种情况下,就存在设备异构的问题。为了能够实现V2V和V2I领域的所有服务,需要许多网络接口。根据作用范围,这些接口可以分为:

• 物理接入点:允许直接或间接物理访问汽车内部网络(USB、OBD等)。

• 短距离接入点:允许与车辆进行通信,距离通常为5至300m。Wi-Fi、蓝牙、远程无钥匙进入(RKE)、轮胎压力监测系统(TPMS)等接口都属于此类。

• 长距离接入点:允许在大于1公里的距离内与车辆进行通信。其组接口包括蜂窝网络(4G、5G)、全球定位系统(GPS)等。

所有这些都涉及到攻击面的增加,并且是一个严重的问题,因为汽车上提供特定服务的许多ECU必须进行对话。甚至汽车行业采取的对策以及导致其实施困难的问题也与物联网世界中已经描述的类似。例如,为了解决CAN协议的安全问题,可以通过多种方式进行:使用加密、访问控制、身份验证系统或入侵检测系统。

3.3.1.加密、访问控制和身份验证系统

加密允许“混淆”数据,使其仅由目标用户读取。这使得系统能够保证数据的机密性和完整性,以抵御攻击,例如中间人、存储攻击、节点篡改等。可以区分两种类型的密码学:对称和非对称。在第一种情况下,用于加密消息的密钥与用于解密消息的密钥相同;在第二种情况下,使用不同的密钥来加密和解密消息。然而,当前使用的许多加密方法需要许多资源,正如已经提到的,这些资源在物联网节点中是不可用的。在实时性要求特别严格的应用中,使用加密技术会带来过高的延迟。由于这些原因,已经实现了轻型密码算法(椭圆密码术,一种非对称密码术),其鲁棒性较差,但仍然能够阻止可能的攻击者。非对称加密还允许对消息进行签名,因为使用两个密钥之一加密的数据只能使用另一个密钥解密;因此,可以确保发送者拥有用于加密的密钥。然而,没有关于发件人身份的信息;该身份由称为证书颁发机构(CA)的第三方确定(始终通过基于非对称加密的机制)。实施身份验证和访问控制系统对于确保只有合法用户或节点才能相互交互尤其重要。用于面对Fake Node、Sybil Attack等攻击。对于文献中的用户认证,提出采用多因素认证,综合使用密码、生物特征、智能卡或物理钥匙。建议节点之间的身份验证使用基于数字签名、设备之间的预共享密钥以及专门为充当认证机构而创建的设备的系统。在文献中,有很多关于这个主题的著作。另一个重要的对策是消息认证码,这是当前汽车行业的一项关键网络安全措施。这种类型的数据认证方法已经被用作一些工业标准,例如AUTOSAR。

3.3.2.入侵侦测系统

入侵检测系统(IDS)是一种硬件和/或软件系统,旨在检测旨在损害资源的机密性、完整性或可用性的任何一组操作。根据检测入侵所采用的策略,这些系统可分为两类:

• 基于签名检测,将收集的数据与已知攻击的痕迹进行比较,寻找对应关系,以确认存在正在进行的攻击这一事实;

• 基于异常检测,通过检查系统的使用方法是否偏离常规使用来监控系统的行为。

第一类对已知且建模良好的攻击非常有效,但除非收到昂贵的更新,否则很难识别新的攻击。属于这一类的IDS包括基于规则的系统,例如专家系统、基于模糊逻辑的系统等。另一方面,第二类IDS更有可能检测到先验未知但通常精度较低的攻击。可以使用神经网络、基于遗传编程的系统、贝叶斯网络等来实现。一般来说,为了获得良好的性能,使用所述方法的混合方法是有用的。在物联网领域,IDS的使用是有问题的,因为这些系统需要大量的资源,而且缺乏大量建模良好的攻击,这使得实现属于第一类的系统具有挑战性。然而,为了解决后一个问题,近年来,许多研究人员试图实现蜜罐,以获得和分析更多的数据。

4.提议的方式和方法

本节展示了所提出的方法。从案例研究开始,这一部分展示了特定案例在所选背景下所处理的内容。

4.1.研究案例

一旦识别出威胁模型和与之相关的风险,就会设计一个系统来减轻这些危险并对其进行测试。使用两步检测算法,利用各个ECU状态参数随时间的变化和贝叶斯网络,它可以识别可能的攻击。首先,我们必须分析领域,以了解参数及其相关ECU,在映射车辆以及与之相关的所有可能的网络风险时,必须考虑这些参数及其相关ECU。为了获得车辆可能受到攻击的实际情况,定义了可能面临特定攻击的条件。特别是,正如我们将在下一节中看到的,确定了可以识别可能的攻击情况的参数。我们必须通过本体来定义应用领域。随后,定义了参考系统的架构以及定义案例研究时考虑的参数。因此,为了确定我们的应用领域,我们参考了汽车领域的各种参考本体。在我们提到的各种本体中,我们考虑了由汽车本体社区组、W3C工作组和萨莱诺大学领域专家组提供的本体。一旦确定了上下文,就必须定义汽车的分类法,以识别系统的特征和要监控的参数的识别。然后分析领域本体,以确定特征参数及其之间的关系。图1显示了获得的分类:

1.png

图1.从领域分析中获得的分类法

从分类分析开始,我们考虑了案例研究中感兴趣的这些参数:转速、油门、制动、转向、齿轮、车速表、散热器、激光雷达和线路。这些参数使我们能够评估车辆动力学和可能的攻击条件。从那里,可以追踪速度、加速度、发动机温度、转向和障碍物的存在的值,使我们能够了解我们是否处于预期的可能攻击条件之一。此时,需要定义参考系统的架构。图2显示了该架构。

2.png

图2.提议的架构

通过使用通过收发器连接到OBDII端口的片上系统(SoC),可以创建嵌入式入侵控制系统(EIDS),该系统能够分析车辆上存在的数据流并检测是否存在正如我们稍后将看到的,该系统使用两步算法,首先进行时空分析,然后从参考数据集开始进行概率分析。然后,该架构提供了通过连接模块进行任何后续分析的可能性,该连接模块允许与外部云等进行交互。对于此分析,正如我们稍后将看到的,从模拟环境开始实现了实验数据集,然后将其与文献中存在的其他数据集进行比较。

4.2.两步算法

为了解码可能的攻击,开发了一种两步分类算法。该算法的工作原理如下:

• 第一步称为预处理,分析十个状态帧(每个帧包含我们案例研究中考虑的每个汽车参数的精确值,选项卡)。此外,它通过对问题的分析获得的空间和时间分析来验证该值序列是否可能是可能的攻击。每个状态帧都记录有唯一的时间戳,并且每4毫秒记录一次 。

• 第二步,通过使用贝叶斯网络(之前在模拟阶段通过预先建立的数据集进行过训练),它可以决定我们是否面临攻击,同时记住以下两个参数:构成帧值状态,以及从这些参数中作为信息获得的参数。

图3显示了所提出算法的运行框架。现在让我们详细分析所提出算法的两个步骤。

3.png

图3.两步算法的匹配过程

如前所述,对来自系统状态的原始信息进行分析。为此,所考虑的各个ECU的所有值都会逐帧记录。一次以10帧(N)为一组,对各个参数的值进行平均,并从计算中排除最高值和最低值:

方程式1.png

其中Fi表示第i帧,Pji, ... Pji+N−1是参数在每个帧i处假定的值,min(Pj)max(Pj)表示所考虑的参数可以的最小和最大值,假设在所考虑的帧的间隔内,N表示所考虑的帧的数量。此时,就获得了构成系统在40ms周期内的状态的每个参数的平均值向量。此时,为了了解我们是否面临可能的攻击,这些参数的值加上从它们获得的信息的值被传递到贝叶斯网络,贝叶斯网络以一定的概率向我们指示:我们是否受到攻击。如果没有一个面罩被激活,则认为车辆状态正常,不采取任何措施。在下一阶段中,从模拟阶段预先建立的数据集开始,使用以下参数生成贝叶斯网络(图3显示了匹配过程):

• 转向:与转向相关的CAN消息,7类(−1:1标准、步长变量、非常左、中左、左、中、右、中右、非常右);

• 油门:与加速相关的CAN消息,4级(0:1标准、步进变量、踏板未踩下、低、中、高);

• 制动:与制动相关的CAN消息,4级(0:1标准,踏板未踩下-低、中、高);

• RPM:与每分钟旋转数相关的CAN消息,5级(0:1、步进变量、停止、慢速、正常、中、高);

• 档位:与汽车档位相关的CAN消息,5类(0、1、2、3、4、5);

• 散热器:冷却系统的点火状态,2级(开、关);

• 激光雷达:存在或不存在障碍物,2类(0、1);

• 线:是否跨越道路线,2类(0、1);

• 车速表:绝对值速度,6级(0:1标准、停止、非常慢、慢、中、快、非常快);

• 加速度:轿厢加速度,5级(−1:1标准、阶跃变量、高减速度、低减速度、无加速、低加速度、高加速度);

• 速度:汽车当前速度,6级(0:1标准、步进变量、停止[0km/h]、非常慢[0–30km/h]、慢[30–50km/h]、中[50–90km/h]、快速[90–130km/h]、非常快[130–150km/h]);

• 发动机温度:汽车发动机温度,4级(0:150,步进变量,正常运行,低过热,中度过热,高过热);

• 转向:汽车转向,7级(−1:1标准,步长0.285,非常左[−60°至−45°],中左[−45°至−30°],左[−30°至− 5°]、中心[-5°至5°]、右[5°至30°]、中右[30°至45°]、非常右[45°至60°]);

• 障碍物:20m半径内是否存在一般障碍物,2类(真、假);

• 攻击:存在或不存在攻击,2类(真、假)。

在RPM、加速度、速度和发动机温度参数中,对大于模拟中达到的最大值的常数值进行归一化;对于由数值组成的参数,通过划分所考虑的相等整体部分范围来构建类别。这些参数构成了我们的贝叶斯网络的节点。根据Colace等人和Casillo等人的研究,考虑到为本案例研究创建的汽车分类法(图1),获得了拱门。获得的净值如图4所示:

4.png

图4.获得的贝叶斯网络

从图4可以看出,贝叶斯网络呈现出三个不同的层次:数据层、信息层和知识层。数据层是指来自车辆的原始数据,信息层是指来自数据层的处理后的信息,最后,知识层是指从我们拥有的信息出发的知识。因此,网络可以以一定的概率解码是否存在攻击。通过网络之前的训练过程和推理过程,可以评估该方法的有效性,如下一节所示。

5.实验结果

为了评估我们的方法,我们必须定义实验阶段可以考虑的攻击类型。我们考虑这种攻击:

1.DoS攻击:短周期注入‘0×000’CAN ID报文。

2.模糊攻击:注入欺骗性随机CAN ID和DATA值的消息。

3.仿冒攻击:注入冒充节点的消息,仲裁ID=‘0×164’。

4.无攻击状态:正常CAN消息。

对于测试阶段的程序,首先需要决定使用哪些硬件和软件组件来测试所提出的方法;然后,必须实现分类算法和训练好的贝叶斯网络。所提出的解决方案包括一个模拟真实车辆及其与环境交互的模拟器CARLA。这是一款开源软件,用于开展车联网和自动驾驶模拟测试研究。除了模拟器之外,该架构还包括方向盘和踏板,允许通过模拟CAN总线控制连接到CAN总线的车辆;模拟外部环境的服务器;确保CAN总线接入点的信息娱乐系统;以及配备实现入侵检测系统的SoC的主板。为了进行实验阶段,创建了4个数据集,每种攻击一个,包含约8158帧,其中车辆定期受到总共约1000条恶意消息的攻击。每个帧包含特定时间戳间隔的所有状态参数。为此,我们通过城市赛道在CARLA环境中模拟了汽车的驾驶。它是用Python脚本实现的,执行了大约24小时。在驾驶过程中,车辆受到攻击,以根据用例模拟可能的入侵。此外,假设信道是理想的,因此没有损耗,则仅考虑CAN帧的ID和数据帧字段。在这种情况下,攻击节点唯一标识帧何时被标记为攻击。一旦获得数据集,就可以实施贝叶斯网络。上一节中介绍的贝叶斯网络是使用Weka软件创建的。为了测试由此获得的网络,接下来将从Weka获得的XML转换为Python代码,并通过使用TensorFlow库,对Xilinx/PYNQ-Z1板进行编程,其中,在我们的例子中,它充当我们系统的IDS。使用简单估计器作为计算先验概率和条件概率表(CPT)的算法。为了对获得的结果进行分类,区分了以下情况:

• 真阳性(TP):存在攻击且分类正确;

• 真阴性(TN):攻击不存在且分类正确;

• 假阳性(FP):攻击不存在且分类不正确;

• 假阴性(FN):存在攻击且分类不正确。

这种优点分类可以用表1中观察到的混淆矩阵来示意。

表1.jpg

表1.混淆矩阵

混淆矩阵是用于估计分类器优劣的表格。行中考虑了事件,而列中则显示了它们的分类。主对角线上的数据代表正确的分类。从该表中还得出了有助于分析分类器性能的三个优点因子:精度(P)(2)优点因子考虑了与检测总数有关的正确攻击识别的数量。它是通过以下公式获得的:

方程式2.png

召回(R) (3)优点因子考虑了正确攻击识别的数量与攻击总数的比较:

方程式3.png

最后,F1得分因子(F1)(4)由精度和召回率的谐波平均值给出,并衡量事件分类的准确性:

方程式4.png

为了评估系统性能,我们必须决定将我们的解决方案和创建的数据集与文献中存在的通用数据集进行比较。通过这种方式,可以看到所提出的方法的有效性。从图5中可以看出,Carla模拟获得的数据集与文献中提供的KIA SOUL数据集进行了比较。在图5中,可以看到第二次测试的实验结果。

5.png

图5.实验结果的精确度、召回率和F1分数:(a) Dos攻击,(b)模糊攻击,(c)冒充攻击,(d)自由状态攻击

从图5a-c中可以看出,我们有非常高的精确度、召回率和F1分数,这为我们提供了系统良好的响应。至于图5d,我们的执行结果较少,但这是正确的,因为最后一种情况更难以识别,因为它很容易被标记为故障或其他情况。鼓励我们的是,我们的系统对真实数据集而不是模拟数据集的响应良好;这预示着未来可能对真实模拟环境或车辆进行测试。

6.结论

本文展示了一种嵌入式入侵控制系统,能够验证联网车辆是否存在网络攻击;在实践中,通过对通过CAN协议相互连接的ECU子系统中传输的数据进行概率分析,能够识别可能的攻击。该系统使用两步算法,能够通过贝叶斯网络进行时空分析和概率分析。由于本体论研究领域和参考分类法的详细阐述,可以确定在分析阶段必须考虑的关键系统。

这项研究工作的目的是分析联网车辆内部的漏洞,并尝试找到定制解决方案,以限制由于进入现代车辆网络而产生的漏洞。开发了嵌入式入侵检测系统,该系统能够分析CAN总线内的数据流量并识别那些可以标记为恶意的流量。该研究考虑了文献中报道的内容,并与当今最常见的网络攻击进行了比较。为了评估该方法的有效性,将其与文献中存在的各种数据集进行了比较。

与文献中存在的数据集进行比较的第一个模拟实验结果,让我们对该方法的有效性有了愿景和认识。其他的深入研究还需要在真实案例中进行才能确定其有效性。

121.png

详询“牛小喀”微信:NewCarRen



作者:牛喀网专栏作者
牛喀网文章,未经授权不得转载!


下一篇: 【网络安全】基于车载大脑的汽车EE架构网络安全(一):方法论及使用案例
上一篇: 【汽车安全】自动驾驶汽车功能安全与网络安全的协同
相关文章
返回顶部小火箭