CIA被广泛用于信息安全,然而,它不足以应对快速变化的汽车网络安全要求,因此我们必须考虑汽车网络安全关注的点到底是什么,确切地说,应该是数据隐私(privacy)、功能安全(safety)、网络安全(security)。
数据隐私侧重于数据合规。有关功能安全和网络安全的比较前文已详细介绍过,功能安全仅侧重于驾驶员或乘客的潜在伤害或死亡,但是由于网络安全会影响数据隐私和功能安全,因此网络安全的风险评估必须考虑数据隐私合规和潜在伤害。
功能安全问题可能导致严重的服务降级,例如车辆功能受限,甚至根本无法驾驶,但从网络安全的角度来看,这种静止的安全状态是没有问题的。然而,从制造商和乘客的角度来看,无法启动汽车是非常不可取的。考虑到这一点,汽车的网络安全必须结合场景。
这里笔者总结了汽车网络安全要具备的5个安全属性,即机密性(Confidentiality)、完整性(Integrity)、可用性(Availability)、可控性(Controllability)和身份验证(Authentication,也可以叫身份认证),称为CIACA,如图1-17所示。(这里的安全属性不是绝对的,可以添加其他属性。)
图1-17 汽车网络安全属性CIACA
CIACA与CIA相比多了两个属性:可控性和身份验证。可控性是来自功能安全的概念。前面已经说过,ASIL有4个等级,分别为A、B、C、D,其中,A是最低的等级,D是最高的等级。这4个等级的划分主要是依据3个指标:严重度(Severity)、暴露率(Exposure)和可控性(Controllability)。ASIL中的可控性是指驾驶者的可控性,而我们这里说的可控性是指网络安全的可控性、车辆电子系统的可控性,不是一回事。
举个例子来说明。一个人买了一辆汽车,他就拥有了对这辆汽车的控制权,一般不需要再考虑可控性,只需要考虑安全性就行了。但是,如果他买的是自动驾驶汽车(L4级别以上),那么这辆汽车可以看成一件网络产品,它的安全性就变得复杂了。即使汽车本身的功能安全性没有问题,但它可能被黑客劫持,这时汽车的控制权就落到了黑客手里,黑客可以远程控制汽车,使其不受用户控制,甚至会造成车毁人亡的严重事故,这就是可控性出了问题。由此可见,对属于非传统安全范畴的汽车网络安全而言,可控性是不可或缺的。
CIACA的另一个属性是身份验证。尤其在V2X场景下,在车与车、车与路、车与平台、车与设备的连接通信过程中,需要为车辆、路侧单元(Road Side Unit,RSU)等赋予可信的数字身份,确保各类主体的身份鉴别,抵御非法主体的伪造、篡改等安全攻击。一旦缺失身份认证机制,汽车就没有安全运行的环境,将无法安全、可靠地运行,甚至将严重影响驾乘人员及道路交通环境安全。
汽车网络安全十分复杂,涉及Web安全、协议安全、无线安全、内核安全、移动端安全、固件安全、硬件安全等,是一个系统性的工程。所以,保障汽车网络安全特别具有挑战性,即便与物联网安全相比也是如此,而且其中一些挑战是汽车网络安全所特有的,如图1-18所示。
图1-18 汽车网络安全挑战
结合上面的描述,本章将汽车网络安全与传统网络安全的不同之处做个简单对比,如表1-1所示。
表1-1 汽车网络安全与传统网络安全对比
(1)硬件架构
过去几年,智能手机和计算机的标准化硬件逐渐达到物理极限,推动产业从硬件升级向软件开发转型。传统网络安全硬件架构已经相对固定,而车联网还在演进过程中,随着电子电气架构的变化而不断改变。汽车行业在硬件标准化和技术方面与智能手机和计算机行业不同,还没有准备好复制智能手机或计算机的发展模式。然而,随着硬件越来越标准化,技术差距越来越小,汽车行业现在很可能会经历类似的发展过程,软件定义汽车的概念在汽车行业变得越来越流行。
汽车实际上正在变成计算机,软件利用硬件资源来提供结果,这并不是说硬件不再重要,整车的核心当然还是硬件,硬件是其性能的终极指标。然而,随着原始设备制造商不断推出自适应巡航、语音服务等软件功能,普通购车者越来越不关心马力和扭矩,而更关心技术特性和碳足迹。因此,未来汽车行业的大部分创新和突破将发生在软件端,以四大行业趋势——连接性、电气化、自动化和移动即服务为导向。
(2)操作系统
传统网络安全更多采用Linux、Windows、Android系统,而在《2021年全球及中国汽车操作系统(OS)行业报告》中,分析师将汽车操作系统分为如下4种类型。
❑基础汽车操作系统:指AliOS、QNX、Linux、RTOS等基础汽车操作系统,包括系统内核、底层驱动、虚拟机等所有基础组件。
❑定制汽车操作系统:在基础操作系统的基础上(与主机厂和一级供应商)深度开发和定制,最终实现座舱系统平台或自动驾驶系统平台。
❑ROM Auto OS:基于Android(或Linux)定制开发,无须更改系统内核。
❑超级App系统:指集地图、音乐、语音、社交等于一体,满足车主需求的多功能App系统。
(3)网络边界
说到车辆网络,我们需要谈谈与传统网络相比车辆网络面临的独特挑战。公司中的计算机和服务器不会移动,因此网络安全团队很容易随时监控可疑活动并立即响应威胁。但是车辆在城市甚至国家之间不断移动,还可能会进入没有互联网连接的区域,这使得汽车网络安全威胁难以检测和响应。
(4)通信协议
传统网络安全并没有太多的协议类型,而汽车由于具有复杂的功能,因而拥有大量的子系统,这些子系统之间的通信对于车辆功能的整体实施至关重要。从车辆启动到驾驶员离开汽车,所有子系统不断将其状态传输到其他子系统,并从其他子系统接收数据以执行任务。例如,当车门未正确关闭时,仪表板上的危险灯就会亮起。目前,网联汽车采用的通信协议大致可分为如下3种类型。
❑车载总线协议:LIN(本地互联网络)、CAN(控制区域网络,90%的车辆使用CAN进行通信)、FlexRay和以太网(用于更高带宽的通信,主要用于行车记录仪)等。
❑车载应用协议:SOME/IP、MQTT、UART(串行端口通信)、SPI(串行外围接口)等。
❑车载无线协议:蓝牙、Wi-Fi、4G/5G、V2X等。
(5)使用寿命
凭借越来越高效的发动机、越来越先进的机械装置和越来越精确的质量控制系统,车辆现在的使用寿命比以往任何时候都长。2020年,美国道路上的车辆平均使用年限达到创纪录的12.1年,这是美国计算机平均使用年限的3倍。
这对消费者来说可能是个好消息。然而,持久耐用的汽车对汽车制造商(Original Equipment Manufacturer,OEM)提出了新的挑战,因为它们需要花费更多的精力来管理每个车型的软件更新,以确保这些软件没有安全漏洞。道路上更多的活跃车辆也给车辆安全运营中心(Vehicle Security Operations Centre,VSOC)带来了更大的压力,该中心需要实时监控所有车辆系统。
(6)安全认证
在互联网行业,计算机和设备制造商不直接对其产品的网络安全负责,主要由购买的企业通过部署网络安全工具来保护它们自己的网络和数据,因此,传统网络安全法规往往是针对企业用户而非制造商的。例如,《通用数据保护条例》(GDPR)和《加州消费者隐私法》(CCPA)等数据隐私法规,要求企业采取合理的安全措施来保护它们拥有的客户数据。直到最近,由于供应链攻击激增,监管机构才开始要求硬件制造商提供更透明的报告。
而在汽车行业,由于必须在制造阶段部署网络安全,原始设备制造商直接对网络安全事件负责;同时联合国世界车辆法规协调论坛的工作组制定了R155法规,其要求车辆必须通过型式认证:这意味着所有车辆在上市前都必须经过R155网络安全评估和认证。
(7)损害严重程度和恢复
如果发生传统网络攻击,企业很可能会丢失敏感数据,严重者会造成运营中断;然而,对车辆系统的网络攻击不仅会危及数据,还会危及乘客和路上行人的人身安全。漏洞修复在汽车行业更加复杂,因为造成漏洞的原因可能是多方面的。传统网络安全修复漏洞的方式是直接打补丁,车辆网络安全漏洞一般采用OTA升级的方式修复漏洞。如果无法OTA升级,制造商会召回车辆;如果漏洞是供应商造成的,制造商需要与供应商合作进行漏洞修复。其实可以把漏洞修复速度作为衡量汽车制造商安全能力的重要指标。
今天的汽车是由软件定义的,每辆车中有超过100个ECU和数亿行代码。这么大规模的软件代码,有些来自供应商,有些来自开源组件,有些来自制造商自研,这会存在软件供应链安全风险。一旦出现影响或破坏车辆安全、性能、功能的问题,工程师需要花费数周时间来找到问题,而使用传统网络安全方法已经无法解决这些问题。
如果将车联网与传统网络进行类比,每辆车就是一个具有众多终端的虚拟局域网(每个ECU都可以被视为一个终端),就像局域网内的终端一样,它也容易受到网络攻击。因此,为了保障乘客和车辆的安全,制造商必须实施比传统网络安全机制范围更广泛和强大的网络安全机制。在这里,我们不能依赖传统网络安全领域常用的事后补救方法,而要提前预防,融入“安全左移”的理念。该理念适用于即将研发的车和正在研发的车。对于量产的车,要更多考虑监控与响应,需要部署VSOC系统,这会在后文中详细介绍。
汽车网络安全是绕不开的话题。如果不重视汽车安全,墨菲定律 会不断应验,最后就是“亲人两行泪”。智能化的汽车到底有多安全?现在关于汽车网络安全的争论此起彼伏,各方观点莫衷一是。汽车网络安全处于起步阶段,各方都处于摸索期,这既是机会,也是挑战。为了助力行业发展,本书围绕汽车网络安全展开介绍。