ASCII码 ASCII码

特斯拉被曝低级漏洞:用树莓派DIY车钥匙,开锁仅需90秒

发布于:2020-11-30 10:55:58  栏目:技术文档

  文/贾浩楠木易

  来源:量子位(QbitAI)

  一辆售价 80-90 万的特斯拉 Model X,只用 2000 块就能开走???

  这不是特斯拉在搞什么购车金融方案,而是比利时鲁汶大学的研究人员攻破了高端车型 Model X的安全漏洞!

  他们只用 2000 元左右,拿树莓派电脑 DIY 了一个‘车钥匙’,90 秒打开车门,不到几分钟,就能把车开走了。

  无钥匙进入,真正变成了字面意义上的‘无钥匙进入’。

  那么,问题出在哪里?特斯拉自己又是怎么解释的?

  第一个漏洞:怎么进入汽车?

  复制这把车钥匙的方法,就是偷偷坐在你旁边。当你和朋友谈笑风生的时候,你的车钥匙已经在神不知鬼不觉中被复制了。

  这是攻击者在演示如何接近车主,在近距离(15 米内)中,用自己在网上购买的车身控制模块(BCM)去唤醒车主智能钥匙的蓝牙。

  现实中,黑客当然不可能手捧着开发板从你旁边招摇走过,但是把它藏在背包里是完全没问题的。

  攻击者需要先从目标汽车的挡风玻璃上读取了一串数字:车辆识别号的最后五位数字。

  通过这串数字,攻击者便可以为他们的盗版 BCM 创建一个代码,用于证明其身份。

  相当于‘再造’一个车机系统。

  然后,拿着这一套克隆 BCM,唤醒靠近的车钥匙,执行下一步的破解步骤。

  而这一步的关键,就是重写车主钥匙上的固件程序。

  Model X 的密钥卡,通过蓝牙与 Model X 内部的计算机连接,然后无线接收固件更新。

  但是,这其中存在一个重大漏洞:Model X 密钥的固件更新缺乏加密签名,以证明更新固件更新来源的安全性。

  通俗来说,就是证明更新来源是官方的、安全的,而 Model X 的车钥匙并不具备验证这一步。

  所以黑客记录下挡风玻璃的后五位数,就能把树莓派伪装成 Model X,诱骗你的车钥匙更新固件。

  这个固件是黑客镜像设计的,它可以查询车钥匙里的安全芯片,为车辆生成解锁代码。

  于是,攻击者便非常顺利地通过蓝牙,连接上目标车辆的密钥卡,重写固件。

  当固件被更新为攻击者的版本后,便可以用它来查询密钥卡内的安全芯片(secure enclave chip)。

  取得解锁代码之后,通过蓝牙将代码发送回你的车,就这样‘门户大开’了。

  整个过程,只需要 90 秒,是不是有‘谍战大片’那味了。

  第二个漏洞:怎么启动汽车?

  坐进车里,‘偷车’只算完成了一半。

  将特斯拉 Model X 启动并开走,还需要一些‘体力活’。

  上一步重写钥匙固件、破解安全芯片的方式,相当于用 DIY 主板上的蓝牙装置,复制了一把钥匙,目的是破解车门。

  现在要做的就是让真正的车机系统认可这把假钥匙,从而启动车辆。

  首先是拆下车内的屏幕下方的储物盒,在操作台内部有一个接口(物理接口),直接连接到车辆控制系统的核心部分,即 CAN 总线,其中包括了车辆本身的 BCM。

  把 DIY 电脑直接插在接口上,就可以直接向车辆本身的 BCM 发送指令。

  发送的指令,是让车辆本身的电脑跟黑客自己生成的钥匙匹配,这样就能轻松的启动车辆。

  问题出在哪里呢?DIY 生成的的假钥匙,为什么毫无障碍的就匹配上了车载系统?

  其实,特斯拉的车钥匙上本来是带有独特的密码证书,以此来验证真实性。

  但是,车上的 BCM 从头到尾都没有检查过证书。

  手脚利索的老哥,从拆储物盒到开走汽车,也就几分钟时间。

  这不是第一次了

  而这,已经不是特斯拉第一次在无线密钥上被攻破了。

  之前,特斯拉 Model S 也在密钥问题上被研究人员攻破过。

  先前的特斯拉 Model S,是基于加密的密钥卡代码来控制车内设备,触发解锁并禁用其防盗锁。

  2017 年夏天,来自 KU Leuven 的研究团队发现:由一家名为 Pektron 的制造商所生产的特斯拉 Model S 无线密钥卡,只使用了一个弱的 40 位密码进行加密。

  研究人员发现,一旦他们从任何给定的密钥卡中获得了两个代码,他们就可以以此类推进行尝试猜测,直到找到解锁汽车的密钥。

  之后,他们计算可能组合,并整理成表。

  有了这张表和这两个代码,研究者表示,他们可以在 1.6 秒内找到正确的密钥来‘偷’你的车。

  研究人员在 2017 年 8 月将漏洞的研究发现告诉给了特斯拉。特斯拉对他们的研究表示了感谢,并向他们支付了 10000 美元的“赏金”。

  但是,直到 2018 年下半年的加密升级和添加 PIN 码,这个加密隐患才得以解决。

  特斯拉怎么说?

  鲁汶大学的研究人员已于今年 8 月 17 号通知了特斯拉公司该安全问题,特斯拉在确认安全漏洞之后已经开始着手对安全漏洞进行修复。

  本周开始,特斯拉将着手进行漏洞的更新修补推送。

  这些措施包括两个方面,一是车钥匙本身对于固件更新的来源验证。

  第二部分是车辆 BCM 对钥匙安全证书的漏检问题修复。

  这些更新会在一个月内陆续覆盖所有有风险的车型。

  发现了此漏洞的研究人员说,特斯拉的无钥匙进入技术与其他车相比,并没本质区别。

  都是用低频无线电波(NFC)发送或接受解锁码来解锁车辆。

  特斯拉的独特之处,在于设计了能让车钥匙固件接受 OTA 更新的蓝牙部分。

  正式在 OTA 这个节点上的安全漏洞,让黑客可以轻松改写固件,从而获取访问底层安全芯片的权限,生成对应解锁码。

  而在启动阶段,也缺乏对无线射频信号来源的有效身份核验。

  同时,在链接车辆控制模块的物理接口上,特斯拉做的,也未免太随意了。

  那么,没有蓝牙 OTA 环节的无钥匙进入,就没有风险吗?

  也不是。

  此前,特斯拉安全部门曾表示,NFC 中继攻击,几乎是无解的。

  这种方法简单粗暴,就是在一定范围内放大车钥匙的 NFC 信号,从而解锁和启动车辆。

  所以,不光是特斯拉,所有采用 NFC 无钥匙进入技术的车型,都面临风险。

  以后,还能放心使用无钥匙进入吗?

相关推荐
阅读 +