奇点汽车安全院王建:智能汽车的纵深防御体系 【图】

车云按:2017年6月21日-22日,由中国安全产业协会、TIAA车载信息服务产业应用联盟与车云网共同主办的2017年中国安全产业峰会暨首届交通安全产业论坛在北京召开。本文系奇点汽车安全院负责人王建,他将从防御体系的深层次剖析和建构的角度入手,介绍创新企业对汽车安全的理解及应对措施。

奇点汽车安全院负责人 王建

以下为演讲实录:

我今天就从如何基于隔离技术来构建智能网联汽车纵深防御体系,这一维度来切入。

讲智能汽车的信息安全体系,首先我们要看智能汽车是什么。不同组织对自动驾驶的分级标准各有不同:美国国家公路交通安全管理局(NHTSA)把自动驾驶分为五个级别,而国际自动机械工程师学会(SAE)的标准分为L0~L5共六个级别,两者的L0、L1、L2的分类都是相同的,不同之处在于NHTSA的L4被 SAE 细分为L4和L5。国内采用SAE标准较多。

  • L0:完全人类驾驶;

  • L1:辅助驾驶(预警类),增加了预警提示类的ADAS功能,包括车道偏离预警(LDW),前撞预警(FCW),盲点检测(BSD)等;

  • L2:部分自动驾驶,具备了干预辅助类的如车辆转向或纵向动力学控制功能,包括ACC、AEB等;

  • L3:有条件自动驾驶,具备了综合干预辅助类功能,包括自动加速、自动刹车、自动转向等,这个阶段最大的问题是系统复杂度,需要人的频繁干预;

  • L4:高度自动驾驶,限定区域(如矿区、物流园区)等;

  • L5:完全自动驾驶,是真正的无人驾驶阶段,全区域、全功能。

车辆的智能化一个重要的作用就是逐步将人类从驾驶中解放出来。车辆的智能化等级越高,对人解放部分的能力必需有车辆系统逐步承接,比如人的感知部分的能力,随着智能化等级的升级,所需要的感知内容也会从单一传感器的感知内容,过渡到多传感器的感知与地图的高度融合,而网联作为智能化技术的有效延伸,在《国家车联网产业体系建设指南》,可划分为网联辅助信息交互、网联协同感知、网联协同决策与控制三个等级。由此可见,智能化使得机器接管了人的驾驶功能,网联化使得车辆由封闭系统走向开放,同时也是智能能力的有效提升。

人的第二个作用就是在危机时刻的处理能力。这就要求车辆系统在任何时刻都要保持系统的可靠性与稳定性,即系统不能出现在有人驾驶的Fail silent的状况,智能汽车要求车辆系统Fail Operational,这是对控制系统的要求,也是对架构的要求。比如说,为保证车辆转向系统的可靠性,需要对线控转向做系统或功能冗余,这就大大增加了架构的复杂度,再比如,前段时间特斯拉撞上一个正在转弯的白色厢式货车的事件,后来特斯拉做了感知算法上的改进,规避了探测系统的缺陷。

所以智能汽车是一个System,这个System 从车的角度来说,更多的是体现在车辆电子电气架构技术,这个架构发展趋势大致可以简单的分为三个阶段:

第一,基于中央网关的分布式E/E架构:随着软、硬件技术发展,控制器节点逐步融合;

第二,按功能域划分的总线出现控制器概念,E/E架构由基于网关的发展为基于域控制器的分布式架构,同时,随着网联化带来的增值服务,云平台初现;

第三,为进一步提升智能控制算法间的解耦和融合等问题,可能会出现车载大脑的概念,另外,由于TPU等出现,一部分基于车载端计算的功能也可能会转移到云端。由此可见,智能网联汽车系统概念的外延与传统汽车相比,会有很大的变化。

车辆要完成自动驾驶,要实现增值服务,必须还要有车联网系统(内容+服务),即我们经常所说的“端管云”体系,这个系统面临的主要安全威胁可简单归纳为三类:

  • 外部攻击来源:主要由感知系统、人机交互入口及网联化节点引入,据SBD估计,未来智能汽车可被黑客利用的入口大约有50个;

  • 内部威胁来源:主要由传统架构及协议缺陷以及车辆Cyber-Physical System引入;

  • 系统问题:系统复杂度骤增带来系列安全风险,如代码量激增可产生大约10000个代码缺陷,新技术引入安全风险,功能安全与信息安全高度融合带来的影响。最后,云平台及移动互联网领域的安全漏洞也会向车内渗透。

2010年,当美国CAESS 发布针对汽车安全漏洞研究成果时,引起很多人的喋喋不休,2015年Miller针对吉普切诺基的攻击时间引爆了智能汽车信息安全的话题。红色的“气泡”大小显示了事件的关注度,图中展示了在汽车信息安全领域白帽研究的一些里程碑事件,这些案例包括2016年底keen针对特斯拉的攻击事件,想必大家应该都比较熟悉,这里就不赘述。此外,在图表底部罗列了一些企业自身发布或公众推测的无人驾驶车辆研发计划,以作对照。今日,澳大利亚黑客利用斯巴鲁汽车Starlink永久令牌漏洞(Perma-token Problems)成功对斯巴鲁汽车实施了攻击。纵观汽车信息安全事件,显见,汽车信息安全发展趋势,向互联网领域高度渗透,全球化趋势明显,影响范围越发广泛。

面对这种紧迫的安全形势,国内外主机厂应对能力几何?请参看国内外调研报告:左侧是2015年2月美国参议员Markey,针对智能网联技术的普及程度、车企现阶段的黑客安防措施、个人数据收集储存和管理、数据防恶意攻击安全措施等问题,调研了包括宝马、克莱斯勒等在内的16家车企,无论是具体被调研车型还是主机厂都大规模的采集、存储甚至在车主毫无知情的情况下享给第三方服务商,而大多数车企尚未意识到信息安全威胁,现有的安全保护措施未标准化且较随意,大多数车企不能实时或者主动应对安全入侵。

国内TIAA调研了16家车企及14家供应商,得出结论如下: 整车及零部件厂商普遍缺乏完善的车联网网络安全管理机制;现有车联网信息服务平台网络安全防护仍显不足;车联网网络安全政策法规及标准体系缺失;车联网终端系统安全防护严重缺乏。可见,面对来势汹汹的智能网联汽车安全威胁,主机厂的表现像个裸奔的孩童,并没有足够的防护能力。

其实,真正引起主机厂及供应商切实关注信息安全问题的驱动力就是商业风险和损失,否则即使主观上重视安全问题,实际工作中也会大打折扣,因为安全与效率和效益短期看会成反比关系。

2015年jeep攻击事件致使克莱斯勒140万汽车的召回事件,2016年克莱斯勒就花大量现金雇佣黑客协助发现软件漏洞问题,这也是现阶段一部分车企解决汽车信息安全问题的有效手段之一,第二类就是依托供应商提供渗透测试、安全产品/服务或者解决方案,第三类就是车企自己组件安全团队,比如福特、本田等,特斯拉为支持自己产品的快速全球化投放,既有自己的安全团队,也依托供应商(比如Harman的OTA),并通过自己的全球漏洞悬赏计划来完善信息安全体系。

通过对Jeep切诺基的攻击案例的简要分析可见,汽车的信息安全不仅仅是汽车本身的安全问题,系统中的漏洞与威胁可以相互渗透。汽车有着数量众多的攻击入口,所以现阶段广泛采取的边界防御将面临更大威胁。智能汽车信息安全需从顶层设计阶段着手考虑。它不是一个feature而是一个系统问题(如图中展示,单点Feature很好,但是系统安全却可以轻易被绕过)。

所以系统安全需要在概念设计阶段引入,从架构层考虑,做好安全,还需要遵循很多安全的原则,如最小权限,纵深防御等。对车企来说,最少需要从两个维度来考虑汽车的信息安全,第一个维度就是全生命周期的安全问题,这个维度主要是遵循SAE J3061 指导规范,我们需要考虑的很多,比如概念设计阶段的威胁与风险分析,开发阶段软、硬件及E/E架构设计安全开发,生产制造阶段的密钥注入,服务运营阶段的OTA漏洞修复以及报废阶段的敏感数据处理等。

第二个维度是纵深防御,整车系统主要从“端管云”三层保障它的安全,由于时间关系,今天主要和大家聊聊如何在“端”这一层建设车辆端的纵深防御体系,典型思想是将车载网络架构进行细化分层:第一层是车辆与外部的通信接口,这一层主要做接入控制与入侵检测;第二层是GW层,这一层主要涉及内网多功能域之间的信号及报文路由,主要思想是隔离;第三层是内网通信安全,主要思想是保护内网关键控制及隐私数据的安全(CIA);最后是车辆节点安全,对于关键ECU节点需要建立可信根,保护其启动、运行、存储及认证等安全。

今天主要和大家谈一谈如何基于隔离思想构建内网的纵深防御体系,这个图罗列了不同安全等级的基于隔离思想的安全技术,按照不同域的应用场景,主要分为SEE\TEE\HYP及CE领域经常用的权限管理技术,比较通用,就不再赘述。

Hypervisor是虚拟化技术,主要作用有,内容隔离、平台抽象、环境分离及平台资源管控。 Hypervisor分两种架构,一型 hypervisor 对硬件资源有绝对的控制权,不需要与OS争夺资源,VM 之间通过竞争方式获取硬件资源;二型hypervisor 避免了大量的代码复制:OS已经做了程序调度、内存管理等工作,能与VM一起运行本地进程且管理比较方便,可以直接Kill掉威胁的VM;混合型主要是Hosted型,考虑性能原因,一部分内置在Kernel内,如KVM。右图展示的是保时捷基于Hypervisor实现的安全网关逻辑架构。

Hypervisor优点就是安全和资源利用效率,缺点也很明显,比如IO(网络及存储等)功能的性能瓶颈,不利于密集App测试(all VM resources are directed to a single process),需要半虚拟化解决方案。

Container 是操作系统层面的虚拟化技术,相当于VMM的hosted型的user层,管理操作kernal资源及文件系统。

它的优势就是小,轻量化,支持度更高,app独立运行在分配给自己的资源上,不影响系统性能,缺点主要是安全性差,安全性差的主要原因就是容器把对Linux系统调用接口暴露给所有的App程序,在安全等级要求不是很高的情况下,容器技术会是未来虚拟技术的发展方向。

Docker主要是为进一步优化container开发,可以为container提供统一入口管理,优化命令行界面接口,这张图展示的就是虚拟技术的过去、现在和未来趋势。

这个图展示的是黑莓QNX Hypervisor 2.0架构,64位嵌入式操作系统QNX SDP 7.0,把多个操作系统统一到单一的计算平台或片上系统(SoC),允许开发人员隔离安全相关和非安全相关的软件组件,从而简化安全关键型系统的认证流程。与安全相关的组件在一个操作系统上运行,而非安全相关的组件则在虚拟机上的另一个操作系统上运行,提升系统网络安全性,功能安全符合ASIL D级。

这个图主要介绍了车载ECU节点架构开发的几个方法:

1.全AUTOSAR架构:安全控制器,多核安全OS,ADAS作为AUTOSAR架构的SWC,一些高级硬件驱动集成为负责设备驱动;2.控制器分离架构:开发过程将app分类,分成性能和安全控制器,通过私有网络完成通信; 3.内核分离架构:在一个多核芯片上,分离一部分内核处理安全,一部分处理性能相关apps(typically Lockstep,英飞凌,AURIX); 4. Hypervisor 架构:autosar OS可以做为一个VM出现,host OS ;Hypervisor 可以作为VM的一部分,这是一个安全的架构,也是Hypervisor技术在节点架构开发中的最主要的作用,即安全。

TEE典型的应用场景是移动支付、身份管理及内容隔离保护等,主要目标是保证软件的执行安全。主要是通过在一个核或SOC上隔离TrustZone® Secure区及非安全区,安全与非安全区域之间有个基于软件实现的安全监视器,相当于一个Switch,可实现安全与非安全区域的切换,如可限制非安全区的程序对安全内存资源的访问。这里面有个问题就是部分安全应用需要访问外部存储资源,如果加密与外部的通信的话,会大大降低CPU 性能。所以这个安全也是有些受限的。

现阶段要实现真正的安全,必须由专门的安全芯片来做,欧洲08年资助的EVITA项目就在构建基于硬件实现的安全,考虑到成本等因素,这类安全芯片的防篡改、加密等级性能均不太高,从EVITA项目又可衍生出三种等级的HSM,分别为HSE(light),这个级别的主要用于传感器及执行器;博世HSM属于EVITA medium,属于ECU级,如GW,BMS等;第三个级别的属于下一代HSM,主要用于V2X,目前还在研。

HSE是德国的一个软件组织HIS定义的一个硬件安全规范,是一个通用名称,不同芯片厂商基于该规范形成的产品名称都不同,比如飞思卡尔的安全芯片叫CSE,可支持的一些安全特性如安全启动,随机数发生器,加解密及MAC生成验证等。

这个图主要展示基于飞思卡尔安全模块实现的安全通信,时间关系不再赘述。

传统IT领域如https/ipsec解决信任链的问题主要是基于PKI体系的CA认证,比如,访问网站资源,都会直接或间接的链接到CA进行认证,这个CA就是可信链的基础。那么在智能网联汽车V2X场景下,如何来构建这个可信关系呢?我们的想法是硬件安全芯片(通过硬件安全芯片来构建本体安全可信链)加上JAVA CARD前置(UICC),这就是我们需要做的边界防护。同时,为解决“端管云”体系的密钥管理,还需要建立企业级国家级车联网CA中心,实现车联网层面的智能网联汽车信息安全解决方案。

简单小结,本次报告主要讲述如何基于隔离技术实现“端”层面的分层纵深防御体系,并附有案例,后面我们还会逐步开展针对车联网无线通信及云平台安全的深入研究。感谢大家的聆听,谢谢!

(0)

相关推荐