登录 | 注册 退出 投稿

【网络安全】基于车载大脑的汽车EE架构网络安全(二):架构安全性比较及控制

专栏作者 2024-03-04

内容提要:在专题的此部分中,我们将使用STRIDE进行安全分析,并通过架构风险分析及安全性比较,推荐了先进的架构安全控制。


“基于车载大脑的汽车EE架构网络安全”专题连载共分为“一、二、三”三个部分。此文为该连载系列的“第二部分”,在第一部分中我们已经通过具体使用案例来分析传统架构、单脑架构、双脑架构和三脑架构等四种E/E架构之间的差异。那么,在专题的此部分中,我们将使用STRIDE进行安全分析,并通过架构风险分析及安全性比较,推荐了先进的架构安全控制。

5.使用STRIDE进行安全分析

STRIDE是欺骗、篡改、否认、信息泄露、拒绝服务、权限提升(STRIDE)等六种威胁类别的首字母缩写,由Microsoft开发。当使用Microsoft威胁建模或REANA分析等工具进行应用时,该方法会为每个组件生成一定数量的威胁。在示例体系结构的范围内,可以定义以下组件和相应数量的威胁:

1.远程信息处理单元/ECU/HPC/功能=六种威胁,每种威胁类别一个威胁;

2.传感器=两种威胁,一种来自欺骗,另一种来自否认;

3.执行器=两种威胁,一种来自欺骗,另一种来自否认;

4.连接端口=三种威胁,一种来自篡改,一种来自信息泄露,一种来自拒绝服务;

5.数据流线=三种威胁,一种来自篡改,一种来自信息泄露,一种来自拒绝服务;

根据此信息,创建一个方程来计算传统、集中式和区域E/E架构的威胁总数。方程中使用的变量解释如下:

方程式1.png

其中

•Tcp=每个进程的威胁类别数=6;

•Tcsa=每个传感器或执行器的威胁类别数=2;

•Tcpd=每个端口或数据流方向的威胁类别数=3;

•Nt=远程信息处理单元的数量,通常在车辆中为1;

•Ne=架构中传统ECU的数量,对于基于大脑的架构为0;

•Nb=大脑数量/HPC数量;

•Nf=特性/功能的数量;

•Ns=传感器数量;

•Na=执行器数量;

•Np=端口数量;

•Nd=数据流线的数量;

•Ndb=数据库数量=0;

•T=威胁总数。

在此等式中,每个威胁类别仅考虑一个威胁。然而,实际上,每个威胁类别都有多个威胁。

表1给出了不同架构中威胁数量的比较,其中假设车辆中使用800个功能/特性/应用程序,这些功能/特征和应用程序平均分布在HPC(单脑、双脑、三脑架构)或ECU(传统架构)中。

在我们研究的传统建筑中,没有远程信息处理单元。该车辆有100个ECU,每个ECU承载8个功能。要实现800个功能,需要800个传感器和800个执行器。每个传感器/执行器需要4个端口与ECU连接(两个端口在传感器/执行器侧,两个端口在ECU侧),因此端口总数是每个传感器和执行器所用端口总数的800倍输出为6400。同样,每个传感器/执行器需要2条数据流。数据流总数是每个传感器和执行器中使用的数据流总和的800倍,即3200条。相比之下,所有其他架构都配备1个远程信息处理单元,并且每个架构都有特定数量的HPC(大脑)。单脑分别具有4个和2个额外端口和数据流,以便与远程信息处理单元连接,进一步概括为每个添加的大脑需要4个额外端口和2个数据流。因此,单脑、双脑和三脑架构分别需要总共6404、6408和6412个数据端口以及3200、3202和3206条数据流。在此计算中,不考虑数据库,但可以将数据库用作任何其他架构中的组件。

表1.png

表1.传统架构和基于大脑的架构中网络安全威胁数量的比较

6.架构风险分析及安全性比较

6.1.传感器的安全威胁和损害场景

传感器是一种感知或测量环境输入并将其转换为可由控制器(ECU/HPC)读取的数字或模拟信号的设备。然后,输出显示在用户界面上,例如主机显示器(HUD)或位于驾驶舱中的其他显示器。传感器存在欺骗和否认类别中的一种或多种威胁。

•欺骗传感器:威胁代理欺骗传感器并向ECU发送恶意数据。以TPMS为例,攻击者能够欺骗轮胎压力监测传感器,并将轮胎压力的虚假数据发送到显示器。这可能会导致损坏情况,例如驾驶员因看到非常高/低的轮胎压力而惊慌失措,并前往维修站进行维修。

•传感器的否认:威胁代理删除或操纵传感器中记录的数据,这会导致从传感器发送到ECU的数据可追溯性丢失。这种威胁可能会导致车辆的运行损坏,因为存储在TPMS(传感器)中的数据被攻击者操纵或删除。

6.2.执行器的安全威胁和损害场景

执行器可以定义为负责根据从控制器接收到的信号(加速、制动)采取行动(例如产生车辆运动)的设备。执行器很容易受到欺骗和否认威胁。

•欺骗执行器:威胁代理欺骗执行器并向ECU发送恶意数据。以抬头显示 (HUD) 为例,攻击者可以欺骗HUD,这可能会导致HUD功能异常。HUD需要显示重要的参数,在驾驶时指导驾驶员,这些参数的错误信息可能会导致致命事故。

•执行器的否认:威胁代理删除或操纵记录到执行器中的数据,这会导致从执行器发送到ECU的数据可追溯性丢失。这种威胁可能会导致车辆的运行损坏,因为HUD(执行器)中存储的数据被攻击者操纵或删除。

6.3.远程信息处理单元的安全威胁和损害场景

作为ECU,远程信息处理单元容易受到所有六种威胁类别的威胁:欺骗、篡改、否认、特权提升、信息泄露和拒绝服务。

•远程信息处理欺骗:威胁代理欺骗远程信息处理身份并向HUD或任何其他交互者发送恶意数据。这种威胁会误导车主,例如,通过在HUD中显示错误的速度。

•篡改远程信息处理:威胁代理篡改远程信息处理数据以操纵数据或破坏其操作。

•拒绝远程信息处理:威胁代理访问远程信息处理单元,然后拒绝对其进行访问。访问系统后,攻击者可能会更改远程信息处理单元中的配置,从而阻止正确的用户访问系统。此外,攻击者可能会尝试访问其他功能,并可能修改访问这些功能的权限。

•远程信息处理的信息泄露:威胁代理从远程信息处理单元提取敏感数据/信息,例如设备的硬件/软件配置,并将数据出售给OEM/供应商的竞争对手。

•远程信息处理的拒绝服务(DoS):威胁代理可能会通过消耗或阻塞资源而导致远程信息处理崩溃、暂停、停止或执行缓慢,在所有情况下都会违反可用性指标。攻击者可能会尝试用大量请求淹没远程信息处理,从而导致系统崩溃。远程信息处理可能会停止向显示单元显示数据。

•远程信息处理权限提升:威胁代理执行代理默认权限级别不可用的远程信息处理功能。攻击者可能会尝试访问他们无权使用的功能。

6.4.数据流的安全威胁和损害场景

•篡改数据流:威胁代理篡改数据流的状态/数据,以在传输过程中操纵数据。被篡改的传感器/执行器信号会导致完整性丧失,从而可能导致危及生命的事件、财务和运营损失。

•信息泄露:威胁代理拦截数据流并通过窃听信号提取敏感数据/信息。然后,窃取的数据用于进一步的误用情况(例如,窃取密钥并从KeyFob中解锁序列)。

•DoS:威胁代理淹没或阻止数据流,限制其性能、吞吐量或可用性。如果控制器(HPC或ECU)与执行器之间的信号线或网络电缆受损,则执行器可能会变得不可用。因此,执行器将不可用于致动。这可能会导致危及生命的事件、财务和运营损失。

6.5.HPC的安全威胁和损害场景

高性能计算(HPC)构成了基于大脑的架构的基础。HPC是一种属于进程类别的资产,包含所有六种威胁类别的威胁:欺骗、篡改、否认、权限提升、信息泄露和拒绝服务。

•HPC欺骗:威胁代理欺骗HPC的身份并向交互者发送恶意数据。这种威胁可能会导致致命事故,因为某些执行器直接控制车辆的速度和加速度。

•篡改HPC:威胁代理篡改HPC的进程和/或数据,操纵进程和/或数据并破坏功能,使车辆部分/完全无法运行。

•否认HPC:威胁代理利用HPC,通过删除HPC中的访问日志来拒绝其访问。如果由于这种恶意活动而发生事故,则无法检测到攻击者。

•HPC的信息泄露:威胁代理通过访问和读取其缓冲区/RAM/闪存来从HPC中提取敏感数据/信息。之后,攻击者可能会滥用汽车日志、安全关键数据和设备ID等机密信息。

•HPC的DoS:威胁代理通过消耗或阻塞资源导致HPC崩溃、暂停、停止或执行缓慢。在所有情况下,这都意味着违反可用性指标。攻击者可能会尝试向HPC发送大量请求,这会增加HPC的负载,进而导致系统崩溃。HPC可能会停止从传感器接收数据并向执行器发送数据,这可能会导致车辆运行中断。如果这种情况发生在路上,这种威胁可能会导致死亡。

•HPC权限提升:威胁代理执行代理默认权限级别不可用的HPC功能。访问HPC后,攻击者可能会尝试访问他们无权访问的其他功能。攻击者可能会修改自己和其他用户的访问/关闭功能的权限。

7.推荐的架构安全控制

为了控制网络安全威胁和风险,建议在架构中部署一组最先进的安全控制。接下来,我们提出了一套针对整体架构、远程信息处理单元、HPC、以太网、CAN/LIN/FlexRay和传感器/执行器的安全控制。

7.1.整体架构的安全控制

•防火墙:防火墙是一种网络安全组件,用于跟踪网络设备/接口,并根据其安全策略过滤请求。车内通信,大量通信发生在车内和V2X场景中。这些通信是攻击者的目标,因此,为了降低风险,防火墙应该能够阻止与ECU或整个车载网络的非法通信。

•SEIS区域模型:SEIS —“基于IP的嵌入式系统的Sicherheit”是一种考虑网络安全风险的基于区域的车载架构。SEIS区域模型中有三个区域,如图19所示。它们是:环境区域、非军事区域(DMZ)和高安全区域。

环境区:是车辆的暴露区域,连接车载E/E架构(远程信息处理单元)与外部环境,例如路边单元(RSU)。为了能够防御外部攻击者,远程信息处理单元使用安全控制,例如防火墙(具有许多白名单IP/MAC地址和域)、基于网络的异常检测以及用于诊断和单元其他接口的访问控制。

非军事区(DMZ):位于环境区和高安全区之间,具有中等安全级别,具有信息娱乐或便利功能。该区域中的组件使用安全机制,例如防火墙、基于主机的入侵检测、基于网络的异常检测以及调试和其他接口的访问控制。

高安全区:位于车辆内部,直接与DMZ连接。这是车辆内最高的安全区域,将包含所有安全关键功能,例如ASIL C或D。很少有白名单IP/MAC地址被允许访问该区域。

图19.png

图19.具有三个区域的SEIS区域模型的表示

•身份和访问管理(IAM):IAM是指管理数字身份以及用户对数据、系统和资源的访问的流程。IAM安全性包括限制与身份相关的访问的策略、程序和技术。为了降低汽车系统中与身份验证和授权相关的风险,必须实施IAM。

•入侵检测系统(IDS)/入侵防御系统(IPS):IDS用于检测对汽车系统的入侵。车内不同组件中插入了IDS传感器,可识别主机和网络级别的安全事件。IDS传感器将数据发送到入侵检测系统管理器(IDSM),后者过滤请求并生成合格的安全事件。根据这些事件,位于车辆或云中的安全专家或入侵防御系统(IPS)决定缓解技术。IDS使用模式匹配和机器学习技术来检测攻击。

7.2.远程信息处理的安全控制

车辆中与其他车辆和RSU通信的主要组件是远程信息处理单元,它包含许多无线接口,例如蓝牙、WiFi和移动通信接口(包括2G、3G、4G和5G)。所有这些接口都需要通过部署某些安全控制来保护。以下部分提到了其中一些安全控制:

•蓝牙保护:安装最新版本的蓝牙驱动程序并不断更新安全补丁,是如何保护支持蓝牙的设备免受不同类型攻击的一个很好的例子。

•WiFi保护:保护WiFi连接的一种好方法是通过强密码保护网络。这意味着只有拥有密码的用户才能访问网络。为了保护WiFi的安全,引入了一系列安全标准,例如WiFi保护访问(WPA)和WPA2系统。WPA2使用高级加密系统(AES),其引入是为了取代更易受攻击的基于临时密钥完整性协议(TKIP)的WPA。此外,防止某人访问网络的最安全方法之一是使用虚拟专用网络(VPN),作为一种实际上可以保护和加密某些类型的通信的方法。此外,车辆和合法设备应包含最新版本的WiFi驱动程序。

•2G保护:2G是第二代移动通信。它是1991年创建的一项旧技术,与7号信令系统(SS7)一样存在许多漏洞。2G最关键的问题之一是塔和设备之间的弱加密。因此,黑客可以轻松攻击设备,拦截通话和消息。而且,任何人都可以轻易冒充真正的2G塔。3GPP发布的技术规范TS 02.09和03.20详细介绍了2G的安全问题。此外,3GPP还发布了GSM-MILENAGE算法规范(TS 55.205)和其他几种加密算法(TS 55.216–55.218、TS 55.226、TS 55.919)。

•3G保护:相互认证是3G 通信的优先事项之一。此外,还需要保证认证信息和密钥不被重复使用。安全架构(TS 33.102)、集成指南(TS 33.103)、加密算法要求(33.105)、合法检查要求和功能(TS 33.106–33.108)、网络域安全(TS 33.200、TS 33.310)、移动应用部分-MAP应用层安全 (TS 33.210)、多媒体广播/组播服务安全 (TS TS 33.246) 以及其他相关网络安全相关规范均由3GPP记录。

•4G/5G保护:2G/3G的一些技术安全要求和规范也适用于包括4G和5G在内的后续几代移动通信技术。例如,编号为TS 33.102的安全架构规范也适用于4G和5G。

•DoS保护(速率限制):拒绝服务(DoS)攻击会导致服务和资源阻塞,从而使用户无法访问和使用这些服务/资源。这种攻击也可以向远程信息处理单元发起。攻击者向远程信息处理单元的API端点发送大量请求,导致合法用户无法使用这些服务。这种风险可以通过使用各种过滤算法来减轻,例如上游过滤和速率限制。速率限制是限制对服务的请求数量的做法。该限制由服务提供商定义。

7.3.HPC/大脑单元的安全控制

•安全启动:保护HPC的一种方法是确保设备仅使用OEM信任的软件。基本上,固件的签名是根据存储在硬件安全模块(HSM)的安全区域或其他安全存储中的签名进行检查的。如果签名匹配,则该软件被认为是安全的,并且允许操作系统在设备上启动。它使用信任链来确保启动列表中的下一个文件是合法的并且未被篡改。

•安全调试:在调试过程中,使用车载诊断(OBD)或诊断故障代码(DTC)检查车辆系统的软件/硬件问题。车辆运行时执行的诊断应使用加密和/或签名机制安全存储。这些诊断消息主要与排放有关。另一方面,当在车间进行诊断时,所有ECU都会被检查,重点是其他方面,包括功能和重新刷写。

•安全日志记录:存储在辅助存储(SSD)中的日志可用于许多有用的目的,例如入侵和异常检测。它们包含敏感数据,例如隐私相关信息。因此,有必要保护日志。这可以通过使用加密机制来存储加密后的日志数据并限制正确的用户/研讨会对日志的访问来实现。用户在访问日志之前应经过身份验证和授权。

•安全存储:HPC应部署一个或多个硬件安全模块(简称HSM)来存储、生成和保护加密密钥。此外,由于与执行加密功能的软件实现相比,此类模块具有更高的性能,因此能够满足服务(例如安全气囊)的安全性和定时要求。

•内核固定:不同的安全/安全关键功能应在HPC内的不同区域中运行。一种分离方法是使用所谓的内核固定,其中微处理器的每个内核都有自己的垂直软件堆栈。假设,一个16核处理器将有16个独立的操作系统、中间件和应用程序。每个操作系统都有自己的计算和内存资源,可以实现更高的资源分离。

•操作系统分离(虚拟化):使用虚拟化技术可实现更高级别的分离,其中可以部署裸机虚拟机管理程序(当需要更高性能时)或托管虚拟机管理程序。裸机虚拟机管理程序(例如VmWare、ESX、Hyper-V和Xen)包含设备驱动程序,这些设备驱动程序能够通过提供自己的内存和计算资源来运行多个操作系统。托管虚拟机管理程序(例如VmWare Workstation、VirtualBox)不包含设备驱动程序,并且在主机操作系统之上运行。然后,虚拟机管理程序能够通过分配内存和计算资源来托管多个访客操作系统。

•应用程序/进程分离(容器化、docker):容器化是创建提供一种或多种车辆功能的软件(包括应用程序代码、库和依赖项)的单个可执行包的过程。与使用虚拟机的虚拟化相反,容器化过程不包含操作系统的副本,而是在主机操作系统上安装运行时引擎。docker是容器化过程可能使用的平台。

7.4.以太网的安全控制

•MACSec:MACsec常用于IT网络,但它是车载通信的新安全控制之一。MACsec的特性之一是它保护协议栈较低层(以太网)中的数据通信。然而,仅靠MACsec并不能保证端到端的安全。反对为车载通信部署MACsec的几个原因是成本较高、性能下降,并且很少有提供商在其SoC(片上系统)中提供MACsec功能。

•IPSec:这是一种使用IP协议保护数据通信安全的方法,能够提供端到端(IP到IP)安全性。IPSec最初是为IPv6设计的,但它也用于IPv4。IPSec的一些相关参考文献包括RFC3686、RFC4302、RFC4303和RFC5996。IPSec能够确保具有唯一IP地址的两个ECU之间消息的真实性、机密性和完整性。虚拟专用网络(VPN)使用IPSec协议。

•传输层安全性(TLS):它是安全套接字层(SSL)的后继者,AUTOSAR架构支持该协议。TLS支持应用程序到应用程序(端口到端口)的安全性。TLS能够确保在具有唯一端口号的两个ECU上运行的两个应用程序之间的消息的真实性、机密性和完整性。建议使用最新版本的TLS协议,即2022年版本3。

•虚拟局域网(VLAN):它允许在车载体系结构中创建多个逻辑网络,以将一个网络与另一个网络分离,从而使OEM和Tier1/Tier2供应商等服务提供商能够在每个网络中实施单独的安全策略。

7.5.CAN/LIN/FlexRay的安全控制

•安全车载通信(SecOC):为了保护利用总线系统(CAN/LIN/FlexRay)的车载通信,AutoSAR引入了SecOC的概念(见图20),用于验证单个传输协议数据单元的真实性。它还有助于检测重放、欺骗和篡改等攻击。

图20.png

图20. SecOC的集成

7.6.传感器和执行器的安全控制

•身份验证:传感器和执行器应在启动通信之前进行身份验证,以防止欺骗威胁类别。

•记录:传感器和执行器的记录信息应加密并保存在安全的存储器中,并且仅允许合法用户访问数据。

更多内容,请关注“基于车载大脑的汽车EE架构网络安全(三):相关讨论及结果”,关注牛喀网,学习更多汽车科技。有兴趣的朋友,可以添加牛小喀微信:NewCarRen,加入专家社群参与讨论。

121.png

详询“牛小喀”微信:NewCarRen



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


下一篇: 【网络安全】基于车载大脑的汽车EE架构网络安全(三):优势和劣势总结
上一篇: 【网络安全】基于车载大脑的汽车EE架构网络安全(一):方法论及使用案例
相关文章
返回顶部小火箭