还记得《速度与激情8》中黑客Cipher通过网络入侵车辆,获得车辆控制权,控制车辆从车窗坠落的震撼场景吗?建筑物?图1《速度与激情8》黑客控制车辆坠落目前业界对网络安全还缺乏完整的概念,安全措施也只是寥寥无几,比如在CAN报文中加入8位CRC校验,滚动计数器等机制;在关键诊断功能上使用安全验证机制,但这些机制通常过于薄弱,甚至在代码实现上存在缺陷。近年来,车辆遭受网络攻击的数据呈上升趋势,如图2所示。图2车辆近年来遭受网络攻击案例(来源:知网)01车联网架构安全介绍随着逐步推进汽车智能化、网联化,在汽车为人们的出行带来舒适和便利的同时,系统的复杂性和丰富的外部通信接口进一步暴露了车联网的脆弱性。智能网联汽车的网络架构呈现出异构、实时、成本敏感等特点。其主要特点如下:1.丰富的对外接口。随着V2X(vehicletoeverything)的发展,智能网联汽车不再是一个独立的电子系统,而是一个庞大的移动终端。交易所必须配备丰富的连接接口,如4G/5G、Wi-Fi、蓝牙、GPS、NFC等,同时通信需求的增加和对外接口的丰富将导致网络的多样化攻击入口和形式。2.大量的实时数据。随着智能座舱和自动驾驶功能的逐渐加持,传感器配置也越来越丰富,比如DMS的监控摄像头、自动驾驶的前置多眼、车身环视摄像头、激光雷达、毫米波雷达和超声波雷达。等待。来自这些传感器的数据通过网络总线架构传输到控制器。如车载以太网、CANFD、FlexRay等总线。3.异构网络架构。长期以来,出于成本和性能的考虑,车载网络架构中有多种不同的总线协议来应对不同的场景,例如用于底盘线控系统的FlexRay总线,用于门窗控制的LIN总线,和相机数据传输。使用MOST总线,激光雷达数据传输使用车载以太网,毫米波雷达或超声波雷达使用CANFD。4、缺乏信息安全保护机制。传统汽车是一个相对独立、封闭的设备。因此,车载网络设计之初并未考虑外部网络安全威胁场景,缺乏认证、加密、访问控制等基础安全机制。随着汽车逐渐成为一个大的终端节点,迫切需要开展车载网络增强技术的研究,以提高网络安全性。一个安全的汽车电子系统至少要满足系统的保密性、完整性和可用性的要求。如何理解这三个要求?1.机密性是指不向未经授权的人员、过程或其他实体提供或披露数据的程度。常见的安全措施有加密、访问控制。2.完整性是指信息和系统不会被擅自更改或破坏的特性,包括数据完整性和系统完整性。常用的安全措施包括完整性检查,例如消息摘要和md5。3.可用性是指授权实体根据需要访问和使用数据或资源的能力。常用的安全措施包括备份与恢复技术、防火墙技术。重要的是,汽车中的一个或几个安全设备(例如,安全网关或车身控制器)并不能保证整辆车的安全。只有当完整的链/域,甚至所有汽车组件都受到类似级别的保护时,汽车才能称为安全汽车。需要考虑的安全性包括ECU内部和周围的硬件保护、基于软件的车内保护、车内外网络监控,安全云服务。从而构建安全可靠的电子电气架构,如图3所示。图3安全电子电气架构02安全机制为了让汽车成为安全的汽车,电子电气架构足以应对所考虑场景中的安全威胁。有哪些具体的安全措施?1.领域隔离通过使用整车电子电气架构设计软件(如PREEVISON)对整车功能进行定义、分解、归纳、映射,将整车网络划分为不同的领域,如底盘领域、自动驾驶领域、车身领域等。在软件层和物理层隔离不同的域,例如对跨域流量进行监控和过滤,通过跨域流量的安全协议完成数据交互。2.公钥基础设施(PublicKeyInfrastructure,PKI)PKI是基于公钥密码系统的密钥和证书生成、管理、存储、分发和撤销功能。一个典型的PKI系统包括PKI策略、软硬件系统、证书颁发机构CA、注册机构RA、证书颁发系统和PKI应用。PKI用于构建信任链,允许不同的利益相关者(例如OEM和供应商)密切监控和限制ECU、测试人员或后端之间的交互。PKI也是主机安全认证和通信初始完整性检查的基础。核心组件是一个受信任的存储区,它存储允许软件更新或安全通信的根证书。PKI适用于汽车中的大多数组件。考虑到当前远程身份验证的最佳实践,PKI的功能在访问权限的撤销、权限的粒度及其范围方面可以非常灵活。使用PKI的缺点是成本高,灵活性会增加复杂性。信任锚根证书可以在验证签名之前到位,但需要撤销证书并检查其有效性,如果根证书的私钥被泄露,则需要到位机制来修改所有受影响的设备。3.硬件安全模块(HSM)HSM是一个独立的微处理器,通常有自己受保护的专用存储器(RAM),一个用于程序代码和数据的专用闪存区域,以及外围设备(例如定时器,用于某些硬件加速器,用于某些密码真随机数的算法或生成器)。它可以访问主机的所有硬件。用于实现鉴权启动或主机监控等功能。专用数据闪存可用于存储密钥,主机系统无法随意访问这些密钥。这意味着主机可以请求HSM执行加密操作,而密钥永远不会离开HMS。如图4所示,InfineonTC3XX系列的HSM模块是基于ARMCortex-M3的微控制器,带有随机数发生器TRNG和用于AES、Hash和PKC(公钥加密整数)算法的硬件加速器,以及中断,定时器等外设,支持的算法包括:对称加密:AES-128:支持硬件实现,支持ECB和CBC两种模式;算法总结:128bitMD5、160bitSHA-1、224bit、256bit、384bit、512bitSHA-2,其中128bitMD5、160bitSHA-1、224bitSHA-2、256bitSHA-2算法支持硬件实现,384bit、512bitSHA-2需要通过软件实现。非对称加密:RSA、ECC等图4InfineonTC3XX系列的HSM模块虽然每个芯片的加密模块都叫HSM,但是功能和支持的算法都不一样,因为没有专门的规范来定义HTA和HSM,即也就是说,只要芯片具有加密运算功能,芯片厂商就可以说它具有HSM。这意味着在供应商选择阶段,OEM必须详细验证每个可能的供应商的技术声明。这种标准化的缺乏常常导致供应商之间的误解。对于HSM的功能测试,OEM不仅要听供应商吹牛,还需要要求供应商提供测试报告。此外,OEM需要设计测试用例来测试其可用性和功能。例如,测试AES是否符合NIST标准。因此,主机厂在选择供应商时,不仅要有采购部门的参与,还要有安全专家的参与。4.AUTOSAR在AUTOSAR4.2版本中,AUTOSAR定义了所有必要的安全模块,如图5所示,包括用于CANFD、ETH通信加密的安全板载通信SecOC模块,以及加密服务管理器(CSM)和密码抽象库(CAL).AUTOSAR只定义了上层模块和它们之间的接口。AUTOSAR没有定义密码原语的实现。图5AUTOSAR中的加密服务模块5.安全诊断服务根据ISO14229标准,当诊断服务对软件安全有影响时,必须通过0x27服务验证以保证其安全性。但是,它使用的安全机制并不安全。使用的机制基于没有加密算法的对称算法。种子和密钥的长度通常为1-4个字节。以后有必要升级到8字节以上,毕竟诊断可以修改控制器的关键参数。6.SecureBootSecureBoot用于在启动过程中使用数字签名验证所有软件的完整性,包括保证启动加载程序、操作系统,甚至可能的应用程序不会被未经授权的人更改,如图6所示.图6SecureBoot虽然bootloader和操作系统通常由Tie1提供,但应用程序可能来自官方应用商店或第三方供应商,这使得软件发布过程变得复杂。和大多数术语一样,SecureBoot并没有标准化,但市场上对该术语有一个共同的解释:软件完整性是在多个阶段进行衡量的,启动过程中的每个阶段只有在前一个阶段验证成功后才会启动如果保持其完整性-否则将停止启动或重新启动ECU。这种安全启动的整体机制被广泛使用,例如作为Windows10中的一项可用功能,并且在Apple的iOS操作系统中默认开启,以防止越狱和恶意软件修改。7.后端安全通信(TLS)现在大多数汽车都有一个网络通信模块(通常称为TCU),可以远程控制车辆或访问车辆信息。这些通常基于蜂窝网络,目前网络层的加密和认证通常使用TLS协议族来实现,它是目前世界上最常用的安全协议,但正确配置每个选项才能达到强大的级别安全性可能很棘手且麻烦。8.防火墙防火墙用于过滤和阻断异常数据流。过滤器有很多种,从按来源或目的地进行简单过滤开始,逐渐扩展到对有效载荷的深入检查。个别ECU的防火墙通常通过CANID过滤接收到的消息。对于网关等大容量通道,这些防火墙以及路由逻辑通常会对性能产生影响。与后端服务器的无线连接使用相同的过滤机制,因此只接收某些服务。传统车载ECU中的防火墙功能通常没有日志记录机制。但也有一些部分后期可能会加入,比如VCU变身为电源域的域控制器,运行linux或qnx系统,具备面向服务的通信能力等。9、入侵检测/防御系统(IDS/IPS)IDS/IPS是一个类似于防火墙的系统,但与防火墙不同的是,它不位于网络边界,而是位于网络内部,通过监控/控制网络流量来确保安全.入侵检测系统监视系统/网络并将日志发送到后端系统以供进一步分析。IDS/IPS的检测规则依赖后台进行动态更新,但在网速较慢的情况下,更新时间需要几天甚至更长的时间。IDS/IPS可以基于主机域和网络域来区分,也就是说,它可以针对单个ECU或某个网络域。它们可以作为单独的硬件组件或在现有主机上的软件中实现。此外,IPS可能会对安全相关功能产生负面影响,这些功能可能会出现错误检测,例如,在碰撞前检测到大量制动信号,这可能会被IPS解释为攻击。就未来的机器学习IPS算法而言,这方面将变得更加关键。这意味着无论何时使用IPS,都需要备份路径来监督所有IPS解释,这会影响性能和责任。IDS没有这个顾虑,因为检测规则会由人预先定义,当然,定义这样的IDS规则仍然存在人为错误的可能性,但是这些错误可以使用定义良好的更新过程来减少和严格的测试。到最低限度。10、WIFI安全车内WIFI,应该使用密码强的WAP2,密码的长度也很重要,因为有基于字典的暴力破解。额外的安全措施可以放在网络层之上,例如应用程序在应用层加密通信内容并使用固定的TLS连接,或者只有汽车和设备知道的共享密码以进行安全配对。这导致三层加密,这将使模拟或重放攻击变得非常困难。对于后端连接,每个连接都应明确列入白名单、加密和验证,尤其是在传输诊断代码或私人数据等敏感信息时。此外,应记录和分析每次连接尝试,以便及时检测暴力攻击。03小结车联网节点那么多,性能和安全性如何平衡,每个节点应该采用什么样的安全机制?对于电子电气架构的安全分析,首先需要列出其资产,可以按车载设备、车载网络、数据通信类别进行梳理,如图7所示,然后梳理资产价值表和资产价值等,结合汽车网络安全资产重要性等级和资产影响等级的结果,根据关键资产划分表识别出汽车网络安全中的关键资产,并对应安全机制被采纳。图7资产价值划分
