最新黑客大会JEEP汽车91页破解报告(摘要版)

安全 终端安全
这届的黑客大会掀起了汽车攻击的一次高潮,文章开始部分我想感谢Chirs等安全人士在汽车安全领域的专注和贡献,是他们用自己的努力一步一步地让保守的美国车厂将之前只有内部知道的汽车安全隐患不得不慢慢让公众了解,直到宣布召回140万辆车。

前言

我想再次重复2个月之前提出的一个观点:2015年是汽车安全的元年!

这届的黑客大会掀起了汽车攻击的一次高潮,文章开始部分我想感谢Chirs等安全人士在汽车安全领域的专注和贡献,是他们用自己的努力一步一步地让保守的美国车厂将之前只有内部知道的汽车安全隐患不得不慢慢让公众了解,直到宣布召回140万辆车。此外,还有早在2010年发表汽车安全问题论文的美国研究人员,使他们掀开了汽车安全隐患的神秘面纱;还有那些致力于义务推动汽车安全标准的草根机构,他们不惜辞职,减少自己收入,用更多的时间投入到汽车安全标准推广活动中去。

[[145212]]

同时作为较早的一批投身于车联网安全的一员,我也欣慰地看到过去两年中,汽车安全如何从一个偏门的研究领域到现在被人们重视,而且这群“人们”里面包括了车厂和相关的车联网厂商。

1. 克莱斯勒JEEP的91页破解报告“Remote Exploitation of an Unaltered Passenger Vehicle”

最新黑客大会JEEP汽车91页破解报告(摘要版)

其实昨天8月10号的时候,我就在等这篇报告出炉,但是等到半夜没见作者如期放出来。好在第二天上午首先在illmatics.com网上看到了PDF版本,91页足够多了。http://illmatics.com/Remote%20Car%20Hacking.pdf我不可能把里面的细节一一描述,就根据我了解的背景知识和之前作者做的一些工作,来向读者介绍他们最近研究工作和之前有什么不同,实现思路和用什么方式来进行防护类似黑客的攻击。我会根据自己的理解写我的感受,不一定非要按照报告里的内容翻译。

注意报告里的“unaltered”这个词,意思是不加改变的,不包括插上OBD盒子,对汽车内部做手脚,接入WIFI热点等等。这个词背后的意思就是叫板,我不做手脚照样搞掂你!

报告前面几页介绍了汽车安全研究工作,09年以来的工作大多是以物理接触攻击为主,这次他们的工作想从远程攻击入手,实现大规模可复制性的汽车攻击,这恰恰是病毒攻击的特点也是车厂最担心的。另一个原因是:物理攻击的局限性也是车厂反馈的集中点。OBD入口攻击,车里放入一个设备(例如这次黑客大会攻击ONSTAR的OWNSTAR设备)都是通过这个理由而遭到车厂有选择性的忽视的。所以,这次的远程攻击是研究者的一次亮剑,看看到底车厂还有什么理由来回避。

为什么选JEEP不是偶然的

JEEP躺着中枪了两次!去年黑客大会上,作者发表了对不同汽车的一项调研成果,在众多的汽车中,JEEP由于潜在的风险很多被认为是容易受攻击的一种车辆。所以JEEP才被荣幸的成为候选车辆。所以如果你也了解这段历史,当你第一眼看到JEEP爆出漏洞的时候,你会和我一样有这样的念头“怎么又是JEEP?!”

另外一个插曲,作者的研究经费是由DARPA提供的,这是一个研究性质的项目,而不是由作者所在公司提供的。我猜想应该是作者利用工作之外的时间做的,所以报告里没有过多现在公司的信息。所以说,作者还是非常professional的,这一点希望大家能学习一下!

2. 破解思路:为什么选择从娱乐系统入手?

谁让你把娱乐系统直接连到CAN总线上?攻破了娱乐系统就可以把CAN指令写入到CAN总线里,之前作者积累的私有协议CAN指令就有用武之地了。

第9-19页介绍了2014款JEEP的一些辅助功能和对应的潜在攻击点,不是特别重要。值得一提的WIFI热点,作者就是通过这个攻入了汽车。之后的几页介绍了JEEP的Uconnect,操作系统,文件系统等等。其中的IFS越狱会在报告稍后部分介绍。第25页是很重要的,因为这次破解工作的出发点:JEEP的WPA2密码设置很弱:按照固定的时间加上车机启动的秒数,生成一个密码。这样,只需要试试不超过几十次,密码就可以攻破了!原本想按照车机开启时间加上车机启动时间,但是车机无法知道何时启动的,所以在函数start()就硬编码了一个固定的时间:2013年1月1号零时,oops!

然后,在28页扩大战果,通过端口扫描发现了一系列开放的端口,包括6667D-Bus,一种IPC,RPC的进程通信的机制。由于D-BUS允许匿名登入,作者做了一系列的尝试(P29)。最后,通过对D-BUS服务的分析,发现有几种直接进行操作,比如调节车机音量大小和获取PPS数据(P31页)。

3.又一个发现:移动供应商内部网络

最新黑客大会JEEP汽车91页破解报告(摘要版)

 

由于Uconnect可以连接到移动运营商Sprint,后者提供telematics服务,使用的高通3G基带芯片。虽然车机里面的TIOMAP系统不能直接连接CAN总线,但是作者发现了另一个绝对需要保护的地方,就是我们俗称的CAN控制器。这里的控制器是Renesas(有人习惯称为NEC)V850 MCU,这是一个比较常用的处理器,连反调试神奇IDA Pro都有相应调试模块(P33)。下面就是如何越狱Uconnect,作者指出这不是必要的,纯碎是兴趣所在,所以众位看官可以跳过这一部分如果你不是一个GEEK。

第40页开始再次回到攻击的正路上:利用Uconnect发出控制娱乐系统音量,空调风扇,收音机甚至关闭频幕,更改开机图片换上你的大头照等指令。前面提到的D-Bus再次给攻击者提供了新的攻击GPS,通过端口6667可以跟踪任何一辆运行Uconnect的汽车,这对进行大规模,任意性攻击提供了必要条件。

到此为止,报告我讲解了一半了。但是一个非常大的挑战是:还不能完全满足远程攻击和不进行修改(unaltered)汽车的目的。

1.很多车主不购买WIFI热点服务,所以这些车辆你无法攻击到

2.WIFI信号还是近场攻击。所以,下面我要介绍如果利用Sprint运营商的内网进行远程攻击。

移动运营商的内网 P43-48

作者发现了2个A类IP地址段是用来分配给汽车的,汽车每次启动的时候都会自动分配一个IP地址。又是D-BUS被用来和运营商网络进行通信。作者在EBAY上买了叫Sprint Airave的设备并利用了这个设备公开的一个漏洞通过TELNET进入!这就意味着我们在一辆车上尝试成功的攻击手段可以通过运营商网络传播到所有的Uconnect车辆上!这里面有一个Sprint通信的特点,可以允许不同的设备(包括汽车)通过通信塔可以自由通信,这就是攻击传播通道。(漏洞爆出后,Sprint迅速修改了这个机制)P46,如果利用通信网络扫描所有的车辆并且定位。扫描结果发现不仅仅是JEEP车型其他一系列车型都是受害者。作者估计了一下,大概有29-47万辆车收到波及,结果车厂召回了140万!

下一个倒霉蛋-V850

V850本来没有往CAN总线写指令的功能,但我们可以通过改写V850固件插入恶意代码进行控制汽车CAN总线。这是通过OMAP芯片做到的。P48-68是刷写固件的具体方法。在利用SPI机制刷写时,作者发现V850固件更新没有采用签名机制保护固件更新。P70页描述了如何通过V850发出CAN指令的。P71页对发现的漏洞进行了总结。后面介绍的是如果通过汽车诊断工具逆向CAN协议。P86页向车厂通知和车厂反应的进度表里包括了很多有些意思的信息。我的理解,这还是算反应比较迅速的,即便这样前后有10月的时间。车厂不是没有做什么工作来弥补安全上的缺失。实际上,目前美国车厂都成立的安全小组负责车联网安全问题,只是他们的行动慢了。同时这张表格还解释通了我之前对美国车联网安全进展的几个疑问。当然,这和这篇文章无关,我就不多说了。

最后,是感谢列表和参考文献,全文结束!

4. 如何进行防范?

对于防守而言,万变不离其宗。你研究不同汽车攻击的案例和方法,就会发现在几个关键点和响应机制布局,就能否防范绝大多数的汽车攻击。实际上,车厂本来应该有很好的时间窗口避免这种尴尬的曝光式的漏洞发布,但是他们错过了。另一方面,目前汽车攻击还是停留在通过点渗透到云端,再进行其他车辆攻击,防御还是相对可控的。以后随着V2X的普及,那将是灾难性的。

这里做一个小广告:8月底我会做一个汽车安全普及的微课堂,对汽车安全,业界看法,攻击方式,防御体系做一个概括性的介绍。欢迎大家报名参加!具体信息届时发布。

5. 结束语

再次向那些(大部分是美国的)汽车安全研究人员致敬。他们在研究的过程中少了些商业动机,多了些白帽子的敬业精神。无欲则刚,这样才能在2年左右时间推动了业界对汽车安全的重视。我希望更多的传统安全人士投身到汽车安全研究中去。随着2017年国内智能车的推出,汽车安全解决方案是一个无法绕过的议题。

责任编辑:蓝雨泪 来源: FreeBuf
相关推荐

2015-08-05 17:02:13

2014-08-01 09:25:07

2015-08-05 10:38:04

2011-08-08 10:51:22

2014-03-31 10:20:12

2014-08-05 16:32:50

2011-08-18 10:23:21

2015-07-27 17:15:41

2020-02-06 10:20:19

硬件黑客技术

2011-05-11 10:01:22

2011-05-11 10:12:22

2013-08-05 09:16:46

2011-08-09 09:45:57

2014-05-07 13:37:27

移动游戏

2011-03-17 15:02:48

2015-08-21 10:00:06

2009-02-17 21:51:45

2009-04-03 10:29:35

苹果黑客iPhone OS

2014-08-08 16:14:33

2014-03-14 17:25:07

点赞
收藏

51CTO技术栈公众号