您现在的位置是:首页 > 汽车

黑客攻击汽车的漏洞在哪儿

2020-07-31 06:00:30

  随着联网功能、近场通讯手段的愈加增多,汽车上可被攻击的地方也越来越多。要攻破一辆汽车的防线,能从哪些方面入手?汽车制造商和供应商们又该怎么防止入侵呢?在逐个分析完破解案例之后,下面进入总结篇。

  1

  汽车被入侵事件似乎告一段落,但是其背后暴露出的问题却远远没有。

  在今年发生的案例中,ModelS被KevinMahaffey、MarcRogers揭发漏洞、比亚迪在360要公开演示破解过程时候,发布公告的内容中,都不约而同的提到了一个相当重要的前提,那就是“物理接触”。因为对于汽车而言,只有远程且可复制的攻击才会真正带来威胁。

  原因显而易见。物理接触类攻击虽然最终造成的危害大,但是实施难度却很高,费时费力,对于追求收益的真正黑客们来说,付出回报比太大。远程攻击则灵活可期,而且被抓个现行的概率要降低多了。

  必须要申明的一点是,这里的物理接触攻击与远程攻击是指在攻击时采用的手段。在研究漏洞时,物理接触是个必不可少的过程,并不能够以“物理接触过”为由来证明车辆无法被远程攻击。

  从互联网角度来说,有漏洞并不可怕,因为截至到目前,还并没有哪一个系统能够称得上是绝对安全。有漏洞自然有措施来堵上漏洞、保护漏洞,以及如何减少漏洞的存在。

  那么,在今年的案例中,车辆暴露出来的漏洞都有哪些呢?咱么挨个案例来看看其罪魁祸首。

  克莱斯勒事件

  在克莱斯勒被远程控制事件之中,Uconnect最终成了背锅的所在,成为了Miller与Valasek接管车辆控制系统的入口。但是导致车辆刹车、传动被控制的真正原因,并不只是Uconnect一个。这一点,在之前的文章中也有点名:

  为了防止黑客通过接入一条非重要网络,进而“窜入”系统关键网络内部捣乱,一般安全专家会在两条线路之间安装一个「安全隔离网闸」 (airgap)。然而在被“黑”的Jeep切诺基上,控制车辆运行的系统间并没有网闸存在。因此,结合找到的其他几处安全漏洞,查理和克里斯发现了车辆控制系统和Uconnect系统(支配仪表娱乐单元)之间的联系。一张SIM卡存在的漏洞,加之“黑客”的其他攻击,将原本理论上才可能出现的远程控制变成了赤裸裸的现实。可以总结得出,导致这次事件的原因有二:一是Uconnect为无线接入车辆提供了接口,二是在Uconnect信息娱乐系统与车辆控制系统之间没有进行隔离,进入Uconnect之后,就相当于鱼入大海,畅通无阻。

  在漏洞爆出之后,因为无法进行远程更新,克莱斯勒无奈只能选择了召回处理。好处在于漏洞事件的严重性引起了NHTSA的注意,或许对于信息安全标准的更改,有促进作用。

  小结:弊端在于信息娱乐系统安防不到位、车辆不同系统之间隔离不到位、无法远程更新修复漏洞,提供OTA升级、车辆内部控制系统与信息娱乐系统之间设置隔离网关,加强验证手段以及信息娱乐系统本身的安防手段,都是可用的手段。

  通用Onstar及其它有相同漏洞的车联网服务App

  SamyKamkar用Ownstar盒子打开了4家车企与一家后装厂商的车联网服务App的漏洞所在。原理我们已经清楚,Ownstar 会扫描手机曾经连接过的WiFi网络并伪装成其中一个,一旦手机连接上此WiFi网络,就可以读取到App的验证信息,并借着验证信息使用车联网服务 APP所提供的所有功能,锁车解锁、车辆定位、远程启动等等。

  在这个过程中,漏洞点在于

  1.手机连接过的WiFi网络可被任意扫描并读取,自动连接相同名字的WiFi(手机存在的问题)

  2.只有一次验证信息,在通过验证之后,并没有二次验证,并且验证信息不会更新,一次获取终身受益

  这与之前车云菌亲眼目睹的360破解汽车事件可以归属于同一案例,同样是验证手段的缺乏。至于这个方式能够破获更多云服务权限,乃至让云端命令优先级大于本地服务,Kamkar并没有试,俺们也不得而知。

  与克莱斯勒事件的不同点在于,App提供的不仅仅是入口。因为服务内容的原因,App本身就可以与车辆的部分控制系统进行通讯并获取控制权限,所以一旦App在权限设置、验证手段上出现问题,这些控制权限就是白送的。

  这个问题还可以进行扩展,比如现在已经开始有车辆支持从智能手表进行基础功能的远程控制。

  小结:这些车联网服务本身并没有问题,确实给消费者带来了方便,不能因噎废食就此解除服务,所以关键在于加强App的安防措施:加密方式的加强、增加验证手段如短信验证以及严格的权限设置。

  用OBD控制雪佛兰科尔维特

  与克莱斯勒事件相同,在这起案例中,“犯人”有两个,一个是MobileDevices的OBD设备,一个是科尔维特的车辆CAN总线。

  MobileDevices的OBD问题一是开发者模式与使用同样的密钥让黑客们可以轻松获取最高权限,二是通过短信方式下发指令,短信不用经过任何验证的手段给黑客大开方便之门。不过解决方式也并没有那么难,都可以通过OTA完成更新,一个是更改权限设置,二则是增加短信控制的白名单,只能经由指定的手机号发送命令才能生效。

  小结:从根本上来说,OBD所存在的漏洞与克莱斯勒的Uconnect性质十分类似,因为它们的可以联网且存在安防漏洞,给了黑客可乘之机,但是根源同样在于CAN总线的安全策略设置之上,对于车辆控制功能没有增加验证的关卡,才得以让黑客长驱直入。

  无线钥匙解锁车门

  RollJam破车门而入的方式我们都知道了,通过监听并存储无线钥匙用来解锁的密码,就可以将其用来开门。

  在360的Hackpwn上,车云菌咨询过关于SamyKamkar关于解锁与锁闭车门所使用密码不同如何处理的问题。Kamkar的解释是,有些车辆使用的是同样的密码,只不过有不同的命令,让汽车知道是解锁还是锁闭,而有的车辆则是分别使用了不同的密码。RollJam可以识别出密码与对应的命令,只会存储用于解锁的密码。而且,存储密码的数量是可以自由设定的,可以存储1个,也可以存储4个。

  这一漏洞最终被SamyKamkar归结到了芯片问题。因为在他使用RollJam攻击凯迪拉克新款汽车没有成功,就是在于这款汽车使用的 Keelop芯片上有一种密钥系统,给密钥设定了一个很短的有效期,时间一过,密钥即会时效,便可以阻挡这类窃听存储密码式的攻击。

  小结:设置密码的时效性,让人拿到了密码也无计可施。

  汽车点火防盗系统

  与无线钥匙解锁不同,点火防盗系统的问题在于密码组成被破译,而且这个密码的设置方式,让人能够轻松对密码的内容进行读写操作。

  这个除了更换新的密码协议,就没有别的办法了。好消息是在新款车型中,越来越多的用到了无钥匙启动的方式。当然,无钥匙启动也有无钥匙启动的漏洞需要注意了。

  小结

  从以上这些案例中,可以看出汽车能够被攻击的点在于:一是入口,二是内部安全策略。OBD、Uconnect、或者App本身都只是提供了一个入口而已。入口本身安全措施不足、开放的权限太大给了黑客们机会,而车辆内部安全策略的设置则是根本所在,也是需要车企们花费心思去考虑的。

  但是你以为车辆可被远程控制的入口只有这些而已么,那就tooyoungtoosimple啦。

  随着联网功能、近场通讯手段的愈加增多,汽车上可被攻击的地方也越来越多。要攻破一辆汽车的防线,能从哪些方面入手?汽车制造商和供应商们又该怎么防止入侵呢?在逐个分析完破解案例之后,下面进入总结篇。上回的总结篇中,我们说到今年这里案例里头,黑客们都用了什么方式去进行破解汽车,以及其中表现出来的安全问题所在。

  当然,最后俺们说到,这些攻击方式和漏洞并不是仅有的。那在汽车上还有哪些?

  其实早在2011年,来自UCSD(加州大学圣地亚哥校区)和华盛顿大学的两个研究团队就以“汽车安全攻击综合分析”为题进行了实验与验证,并从威胁类型、具体漏洞分析以及威胁评估三个方面进行了分别论述与实验。在这一份调研报告中,被研究的主体是安装在汽车中那一块块功能各异的ECU。

  三年之后,CharlieMiller与ChrisValasek又重新进行了这个工作。他们的目的同样是想搞清楚如果要对汽车发起攻击,哪些有可能入手。

  欲善其事,必利其器

  这个研究的关键在于两位研究员的思路。

  需要再次重申的原则是,这次的攻击依然是围绕远程可复制攻击,而重点关注的是哪些会引起安全事故的攻击,也就是他们今年对克莱斯勒发起的这类攻击:远程操控汽车的转向、刹车或者加速功能,让车辆脱离驾驶员的掌控,进入不安全状态。围绕钥匙、防盗等车辆偷窃类攻击就不再考虑之类了。

  第二步思路是,如果要得到这个结果,需要怎么做?

  最关键的一点是,黑客需要能够对这些控制车辆转向、刹车或加速的ECU下达命令,那就是说,必须拿到与车辆内部CAN总线通讯的方式,而CAN总线并不止一条线路,这些核心控制功能在更加底层的地方。远程攻击不可能直接与其接触,那么就需要「桥梁」。

  这个桥梁就是并不处于核心位置的、大多是承担接收和处理无线电信号的这一批ECU,他们都具有两个特征:

  1.能够接受外部信息

  2.这个信息有可能通过CAN总线传递给那些控制核心功能的ECU

  所以,思路就是找到这些ECU之后,先把他们黑掉,再以之为跳板,向核心功能ECU发布假消息。可以把这类ECU想象成古代战场上传令的小兵,如果其能阵前倒戈,传递敌方给予的假命令,打胜仗也是手到擒来。

  不过这是理想状态,如果被发现是假命令呢?

  虽然桥梁ECU们能够作为入口向内部发送消息,但是这个消息并不是想发就发的,在不同的ECU之间,可能存在网关,拦截非法消息;核心 ECU上,可能有安全策略设置,某些动作只能在特定的行驶状态下才能实现,或者只听从指定的命令。要想达成目的,或者伪装成合法的,那么就要知道通讯协议;或者绕过网关,需要知道通过密码;或者把网关也黑掉,让其为自己所用……等等,不一而足。

  因而,黑客要做的工作有三

  1.找到远程接入的入口——带有桥梁ECU的功能模块,比如上篇里头的车载Wi-Fi、OBD、云服务App,还包括与手机同步的蓝牙功能、浏览器等车内应用等等,所有兼顾外部消息接收与内部通讯功能的,都存在可能性,都可以以此展开研究

  2.找到从桥梁ECU到核心功能ECU之间的通讯道路

  3.解决通讯道路上的各式拦路马

  “等等”的内容并不止于通讯模块

  上面提到的入口,也就是桥梁,起到沟通内外的作用,一般大家想到的就是车辆通讯模块。但其实,并不止于此,还有一部分比较特殊功能的ECU,他们也起到相同的作用,但却是为了完全不同的目的——ADAS(高级驾驶辅助)。

  现在的ADAS,常见的比如车道保持、防碰撞系统,还有受到很多新手司机欢迎的泊车辅助技术。这些功能最终都会为了保证车辆处于车道之上、保证不发生碰撞或降低碰撞产生伤害、泊车而对车辆进行转向、刹车等功能。还有ACC,在转向、刹车之后,还有自动加速功能。

  也就是说,这些ADAS系统的ECU会根据传感器的数据,对核心控制功能ECU发出命令,在特定的时候让其工作,同样可以作为桥梁使用。当然,毋庸置疑的是,这些系统的目的是为了辅助驾驶和提高安全性能,所以本身也会设置到限定速度之下。可能比较谨慎的车企,还会多设置几道关卡来保证系统功能。

  之所以提到这些系统,并不说他们不安全,而是因为他们给黑客攻击汽车带来了一个可能性。因为与核心控制功能有信息交互,那么就存在一种可能性,以他们为桥梁发出假消息。需要评估的是,这个可能性有多大。

  因而,遵循这个三步法则,两位研究员开始了研究。

  俺们知道,车辆的CAN总线是个很复杂的东西,会随着车辆上技术、功能的增减而改变,在不同的制造商之间、同一制造商不同车型之间、同一车型不同年款之间,都会有差别。因而他们以2014年款为主,挑了13款车型,同时也挑了这些车型的2006年款或者2010、2015年款作为对比研究。

  研究主要围绕三个方面

  1.存在多少种不同的入口以及入口的安全性

  有些桥梁ECU与核心ECU通讯的可能性有,但是很小,因而可以认为安全性较高,比如ADAS,虽然可以直接与核心功能ECU通讯,但是安全策略与门槛会较多。而蓝牙、Wi-Fi通讯则因为作用距离、可实现功能与安全策略的问题,导致安全性较低。如果这类入口较多,则评估得到的威胁程度会高。

  2.车辆的内部网络拓扑图

  一方面,通过同一车型不同年款来对比分析车辆内部网络随着时间发展的状况;另一方面,也是想进行验证,对于车内网络的攻击,是否因为差异性巨大而难以直接复制。

  自然还有第三个目的,那就是分析具体的拓扑结构,以此来分析从桥梁ECU通往核心ECU之前道路通过的成功可能性有多大,来评估其带来的威胁程度。

  3.攻击的反面就是防守

  攻击并不是最终目的,最终目的是为了更好的防守。从可攻击路线发现可能漏洞所在,也就是可以加强防护的地方。

  不同年不同车不同命

  这个研究的最终结果,就十分有意思了。在他们最后公开的研究报告中,都进行了具体分析,因为篇幅所限,本文无法一一列出,感兴趣的同学可以到这里去看原文。

  对具体分析内容不那么感兴趣的,俺们一起来看结果。

  他们一共分析了21款车,涉及到奥迪、宝马、通用、福特、克莱斯勒、本田、丰田、英菲尼迪、路虎品牌及其旗下品牌车型,以2014年款为主,共13款,对比年款2006年款4个,2010年款3个,2015年款1个。具体易受攻击程度见下图(图片来自CharlieMiller与 ChrisValasek的研究报告),表中只列出了20款车型,少了一个2006年款英菲尼迪G35。

  1

  20款车型易受攻击列表(从--、-、+到++受攻击程度依次提高,表格从左至右分别代表攻击面、网络架构与核心功能)

  从研究的内容中,他们还得到了一些结论:

  1.随着时间推进,所有品牌车型都表现出ECU数量的增多,不仅是整体ECU数目,桥梁ECU数目更是大幅增加,功臣有两个:车联网与驾驶辅助技术的发展。也就意味着,车辆的被攻击可能性、可选择手段都在增加。

  2.车内网络拓扑结构的复杂性随着ECU增多也在增加,被分割的网络架构越来越多。但是这些网络架构的分割并不都是以“将控制核心功能 ECU与其他类ECU分开”为目的。在2014年款中,有6款并没有根据功能重要性不同进行隔离,而更多的,虽然隔离了,但是并不代表安全性就高。因为隔离之后并没有设置网关或者安全边界,没有增加安全策略,而只是单纯的分开。

  3.尽管内部结构大不相同,但是大多数车辆都采用了类似PC的技术,比如浏览器和车内App等,这些都是黑客们十分熟悉的东西,提供了与PC、移动端类似的攻击方式

  4.在所有入口中,胎压监测与无钥匙进入是被远程攻击威胁性最大的桥梁ECU

  5.同一地区的汽车制造商的内部拓扑图有着类似的结构,日系车(丰田与英菲尼迪)、德系车(奥迪与宝马)、美系车(通用与福特)之间都表现出来这个特性。两位研究员认为可能是因为他们思考问题的方式比较类似,还有就是工程师的跳槽~

  6.存在这些问题的车辆,都没有OTA功能,发现问题只能召回处理。最终得出了两个排名:

  1.最容易被破解三甲:2014Jeep切诺基,2015凯迪拉克凯雷德、2014英菲尼迪Q50

  2.最不容易被破解三甲:2014道奇蝰蛇,2014奥迪A8,2014本田雅阁

  发现问题了么?为什么今年他们拿切诺基开刀,原来根源在这里。

  小结

  其实研究到这里并没有结束。两位白帽黑客的雄心壮志在于想对所有车型进行分析并得出答案,无奈这些资料并不是那么好拿到的,因而只有这些款。而且,因为他们并不是这些车型都有,也没有对每一款车进行具体实验分析,以确定分割更多网络等是否能够成为黑客破解的障碍。不过,在去年出研究成果之后,今年对切诺基下手就证明了他们的研究并没有停止,而是会继续前行。