05
17-09
如何构建安全的车联网终端——中兴物联首席安全官李幸远
来源:深圳市汽车电子行业协会

  2017830日下午,中兴物联首席安全官李幸远在由深圳市汽车电子行业协会主办的智能汽车“百家论坛”(第七期)汽车生态—智能网联的进化AUTOMOTIVEWORLD CHINA技术论坛的主题演讲上分享了《构建安全的车联网终端》。其中分享内容包括物联网及车联网的发展趋势、物联网安全风险与关键技术、构建安全的物联网终端、车联网终端安全实践等等。


中兴物联首席安全官李幸远


  物联网及车联网的发展趋势:

  自物联网、车联网的概念出现至今,一直处于快速发育阶段,那未来的趋势又是如何?据IDC预测,到2020年的时候,全球物联网终端将达到200亿个,从个人穿戴、智能家居、智能制造、智慧医疗、智能交通、智能农业、智能城市,无处不在的互联网相关应用。今年世界人口会达到72亿,物联网装置84亿,人均连接数3.47个,物联网的总产值2.7兆美元,2020年的时候,人口小幅增长到76亿,物联网的装置会达到204亿,人均连接装置6.58个,互联网产值将达到7.1兆美元。车联网作为物联网的一个组成部分,近年来移动设备和周边应用的不断发展,车联网的场景和市场空间迅速扩大,未来几年全球车联网市场会达到26.75%的复合增长率,因为2020年,市场将有350亿的市场规模,过去几年车联网终端市场,汽车后市场占58%的市场份额,高于前装。产业链在快速增长,中兴物联目前以后装市场为主,并向前装渗透。2020年的时候,车联网的市场构成主要由安全驾驶服务、车载终端和诊断服务类业务占比大,目前的状态是后装市场的装配率比较低,联网的车联网占比不超过5%,因此还是有很大的市场空间。


物联网规模


车联网的发展趋势


  物联网安全风险:

  物联网虽然发展很蓬勃,但随着相关技术的发展,黑客攻击事件越来越多,安全事件层出不穷。2013年的时候,defcon黑客大会,就有黑客在这个大会上演示了,利用obd接口控制翼虎的方向盘,刹车和油门系统,当时的攻击比较低级,因为它需要接触汽车的obd接口的物理终端才能实现,并不能实现远程的控制。2014年的时候,研究发现特斯拉的models汽车存在安全漏洞,有可能导致汽车被攻击者远程控制,2015年吉普大切诺基被破解,最终导致黑客可以远程控制这辆汽车;2016年的时候,美国发生了一次和物联网相关的事件,分布持续服务攻击事件,和传统的分布式攻击相比,这一次发起攻击的源头是一些被黑客控制的互联网的安防摄像头,这件事情最终导致半数的知名网站下线。前几个月曝出一个安全漏洞,宝马、福特、英菲尼迪与日产汽车远程控制单元被发现存在安全漏洞。这个事件的原因就是因为这些车的远程控制单元用的是很老的,就是英菲尼迪生产的二期的model,但这个汽车服役了很多年,相关的设备通讯厂商已经早已不再维护了,因此这个漏洞完全没有办法修复,最终汽车厂商给出的建议是,不得不把汽车厂商的这些设备拆除。


  总的来说,物联网终端遇到的安全挑战大致分为这几个方面:首先是安装环节,分散且不受控制,容易跟物理接触,因此很容易受到物理攻击,篡改或者仿冒。物联网设备遍及我们生活的各个方面,不像互联网基础设备,有专门的无尘机房,专门的保安在看着,因此物联网容易受物理攻击的特性是非常明显的。第二,物联网设备一旦嵌入到相关的使用场景,就会使用很多年,因此存在软件过时,或者安全漏洞,而且也没有办法通过固件更新机制来修复;第三,物联网终端生产的时候就考虑到经济性和功耗,因此计算能力和资源是非常有限的,没有办法实时防病毒、防攻击手段;第四,这些设备设计之初可能没有考虑到隐私数据的保护,因此数据根本没有加密,或者说虽然使用了加密,但使用了过时的加密算法,因此可能导致泄密或被控制;第五,物联网和互联网相比,多了一个感知层,因此会受到很多新的针对感知层的攻击。


  分享两个例子:第一个例子,前不久阿里的研究员放出了一个视频,使用超声波攻击陀螺仪,让超声波传感器给出黑客想要的任意测量结果;第二个例子,GPS攻击。以前大家在相关的军事报道上听说过,但现在随着通用的软件无线电平台,这样的硬件设备越来越便宜。举一个例子就是,现在最便宜的无线电平台在淘宝仅仅以1000元就可以买到,通过这些硬件平台,加上一部计算机和简单的程序,就可以伪造出GPS信号。物联网设备如果有GPS工程,这些信号可以让这些设备报出在全世界的任何一个位置。有一个典型的例子就是大疆无人机,被GPS攻击之后,本来系一个正常飞行的无人机,把自己定位在一个机场里,无人机认为自己在禁飞区,就导致无人机的坠落。现实生活中还有许许多多的这些物联网安全问题的例子。

  物联网安全关键技术:

  当我们看到物联网安全风险的时候,我们要了解,构建安全的物联网所需要哪些关键的技术?


  第一,网络安全。物联网一般使用无线网络,与有线网络相比,会有一些更具挑战性的安全问题,所有无线网络构建的时候都要考虑更多的安全问题;

  第二,身份认证。物联网设备数量庞大,物联网想合法使用,必须每一个设备都要有合法的身认证;

  第三,加密。加密主要防止未经授权对数据的访问;

  第四,旁路攻击防范。即便是设备有足够的加密,物联网设备还要做到旁路攻击,旁路攻击是一种比较特殊的攻击方法,不是以加密算法本身为攻击目标,攻击的是加密算法的物理实现,例如处理一些工作的时候,会散发一些电磁光,另外有一种旁路攻击叫插分电源攻击,就是通过分析处理器在做加密算法的时候,对电力消耗的微小变化,就可以拆解出来处理器所使用的密钥,大家通常认为比较安全的ISAAES加密算法,都有被旁路攻击的例子。

  第五,安全分析与威胁预测。监视和控制与安全相关的数据,还必须能够预测未来的威胁,这方面的技术主要牵扯到大数据和云平台;

  第六,接口保护。物联网设备平台会向用户提供API给用户访问,因此这些API必须经过授权,开发应用程序,才能够在设备之中通讯;

  第七,交付机制。物联网设备交付之后,必须能够持续得到更新,打补丁,以应对网络攻击;

  第八,系统开发。安全问题自始至终贯穿在整个物联网产品周期中。

  如何构建安全的物联网终端:

  物联网设备一般是由传感器和通信模块组成,能够采集一些数据,并且通过网络进行数据上报,具有低功耗、低成本、低运算率、低接触、运行周期长等等特点,物联网终端需要有适合其特点的安全防护措施。从硬件安全和软件信号安全,接入和传输安全,还有运行安全及生命周期管理说一下构建安全物联网终端所需要的策略:


  第一,针对硬件安全,设备容易被非法获取拆解,可能被盗,从而导致内部敏感数据的泄露。对于这样的特点,我们需要做的就是对固件进行加密,防止被分析。另外对安全非常敏感的产品,要考虑具有自毁功能的硬件。当硬件监测到受到攻击的时候,可以销毁设备密钥或者是其他安全数据,防止被盗用。我们都非常熟悉pos机,它本身也可以算物联网的设备,pos机就是一个自毁的功能硬件,内部密钥存储在一块,使用电力维护静态存储器,一旦pos机外壳受到破坏,里面用于通信的密钥会被消毁,这个设备就变的没有用。设备研发、设计和生产过程中往往会留测试接口,这些测试接口会给分析留下可乘之机,因此做最终的产品量产的时候,需要把这些硬件进行屏蔽和删除,利用USB接口等等。如果设备万一被破解的话,很可能会运行非授权的固件,针对这样的场景,希望在硬件设计之初就选用具有安全启动功能的芯片,防止非授权固件的运行。

  第二,我们看一下系统和软件安全,安全是一个全流程的过程,我们在做软件开发的时候,就应该考虑到安全,如果不注意安全的话,通常情况下都是缺乏相关的安全策略以及安全审核,为后面的安全运行留下隐患。因此对于这个问题,我们需要引入安全的编程规范和代码的安全审计策略,从源头上堵住安全漏洞。对于系统上跑的各个应用,一般情况下各个应用也没有什么权限之分,没有应用程序的授信机制,在这里可以引入一些轻量级的沙河机制,把应用权限限制在期望的范围内,并且隔离各个应用之间的数据信息。

  第三,车联网终端产品和物联网终端产品,用的都是ITOS,这些操作非常简单,没有权限的控制,因此会导致系统面临不确定的安全隐患,这里我们需要引进安全的ITOS,通过系统的相关机制实现应用和内核的权限分离。

  第四,看一下接入及传输安全,对于终端和服务器来说,非常有必要的是构建授信的机制,终端要接入一个授信的服务器,服务器也需要确认终端是否是安全的,那终端服务器就需要双信的认证,每一个设备最好有一个唯一的加密密钥,用来进行通信。对于数据传输,由于物联网终端产生的数据,最终还是要在互联网中进行传输,对于传输过程,实际上是不可控的,因此我们需要端到端的加密,比如tlsdtlsipsec协议。终端的计算能力很弱,有可能没有办法实现非常复杂的加密算法,那我们有可能选用硬件加速的加密算法功能的芯片,另外对于密码来说,有一个可靠的随机发生器也是非常重要的,因此在选用相关处理器的时候,可以考虑具有硬件的随机发生器的芯片。

  第五,运行安全及生命周期管理,物联网终端的计算能力很低,对于功耗很敏感,因此需要引入轻量的安全应用,实现终端的入侵防护。简单来说,物联网终端有很多办法判断自己是否异常,比如位置异常,异常的接入时间,数据传输的异常。对于安全的固件弥补,一般需要后期的固件升级完成,不安全的固件升级可能会导致非授权的固件运行。对于这一点,我们需要引入安全的固件升级机制,最好引入授权机制,就是防止未授权的固件运行,通过固件升级,及时对发现的安全漏洞进行封堵。

  随着时间的推移,被发现的安全漏洞可能会越来越多,因此对于物联网终端产品来说,要想真正做到生命周期的安全,必须做到全生命周期的管理,包括设备的激活、身份认证、完整性检查、漏洞补丁以及软件升级,最后包括设备升级。

  车联网终端安全实践:


  以中兴物联的一款obd产品分析一下在具体的产品中所实施的安全策略。中兴互联的一款4Gobd终端,主要针对的市场是电信运营商市场的车联网产品解决方案,目前的产品主要销售对象是欧洲和美国的大运营商,这个产品已经完成了和Modus、Mojio、Nethtings等国外平台进行了适配,能够提供端到端的解决方案。由于这个产品所销售的对象主要是欧美的运营商,目前欧洲的合作伙伴是telia,美国的合作伙伴是mobile,这都是国际顶级的运营商。对于欧美来说,用户的数据隐私是非常关心的,2015年的时候,欧洲制定了一个法案叫《通用数据保护法案》,并且这个法案将在20185月份进行实施,要求设备在整个生命周期内,从研发到生产到最后的使用以及退役,都必须有完整的安全策略和安全审核的策略,因此客户在提出需求的时候,对于这款产品包含了软件接口和硬件接口、加密算法、安全生产等各方面的安全需求。在安全策略阶段,设备需要通过第三方的安全认证,并且能够通过运营商内部和运营商外部聘请的相关安全组织进行的攻击和振动测试,最后运营商要对中兴物联进行安全审计,例如今年三四月份,欧洲的运营商就对中兴物联进行了全流程的安全审计,这个安全审计就是为20185月实施的《通用数据保护条例》做准备。


  这款obd终端是采用哪些安全策略?才能够满足运营商的安全需求的。大概分为两部分,一部分是MCU,它是一个镶嵌机,它接了一个传感器,包括GPS以及obd接口,已和汽车相连,MCU负责收集车辆的数据,GPM部分是全网通的4G modemmodem负责在双端的通信,并且向用户提供一个WIFI热点的功能。在这个系统中,起主导作用的是MCUMCUmodem是单向式控制,反面无法控制。对于车联网来说,大家非常担心的是obd接口,modem是一个非常复杂的设备,有modem协议站,有AP处理器,它所面临的安全风险远大于MCU,并且MCU的代码是封闭的,分析起来并不是那么容易,因此我们把整个产品主控单元放到了MCU这一侧。


  接下来说一下在MCU上,如何保证相关的硬件资源不被黑客攻击或控制,我们在MCU上引入了一个安全机制,这个机制运行的是ITOS,上面负责收集数据,一个Sensor ,一个是taskMCU硬件obd接口通过配对,只能由Sensor来访问,其他是不能操作的,Sensor task和其他的任务进行隔离,不能直接访问Sensor task相关数据的,例如我们和网络通信相关的telematic task,这个task既不能直接从Sensor task获取数据,也不能操纵MCU的硬件接口。众多的原因是因为telematic task负责网络通信,因为它负责攻击的可能性是非常大的,加入task里面存在软件漏洞,它就有可能导致远程代码执行。即便发生这种情况,这个task被注入到远程代码,但是这个代码仅仅能在这个task里面执行,依然没有权限操作相关的硬件设备,或者直接获得一些数据。

  还有隐私保护相关的策略,美国需求的终端生产过程中都会配备唯一的一个密钥,这个密钥由安全算法生成,安全算法保证了所有设备的密钥是不会重复的,并且有足够的随机性。这个密钥经过批量加密后传递给云平台,后期这个密钥用于设备和云平台之间的认证。数据的加密采用点对点的方式加密,数据直接在MCU上加密传给云平台,那么在整个网络的任意一个传输节点,都是不能获得数据的云管家,包括设备内部的modem,也只能看到密文,不能接触到明文,因此即便modem入侵,也能保证这个数据是安全的。

  安全的固件升级,我们系统主要分为MCUmodem,这两个组件的固件升级是独立运行的,也就是MCU是自己升自己固件的,modem也是自己升自己的固件,这样一来,从物理上隔离了两个升级过程,防止某一块被黑客控制之后,去操纵另一个不授信的固件。固件的下载过程是通过标准的安全加密协议进行传输,固件的升级包,包含数据签名,防止升级包在中途被劫持和篡改。

  中兴物联打造这款产品的时候,是考虑到这个产品的全生命周期安全,从最初的需求开始,我们建立安全需求的安全界限,概念和设计阶段考虑硬件安全和软件安全,开发阶段实施了安全的编码策略,并且我们有相关的专业工艺,会对代码进行审核,在这个阶段有第三方安全测试和渗透测试。在发布阶段,我们有安全的生产策略,并且有安全的交互策略,在最终的运行和维护之间,通过相关的加密算法保证数据的安全,并且不停纰漏产品的漏洞,并进行相关的升级,最终在设备的退役阶段,还要维护相关隐私数据的备份和删除,还有设备密钥的销毁等等。