广告

只要你的汽车有总线 CAN 设计,被黑掉可能超简单!

2016-12-02 李勤 阅读:
对于汽车,有很多种攻击途径:OBD 盒子、WI-FI、蓝牙、车机 APP、车联网平台……它们都要经由 CAN 总线进行控制。如果 CAN 总线不安全,这样的汽车就可以受到“狗带”般的攻击——你拿着车钥匙也没用,这车现在属于控制了 CAN 总线的黑客。

破解特斯拉的第一人,360车联网安全中心工程师刘健皓又造出“万能车破解器”:正儿八经买的一辆新车,可以轻而易举地被他开走?!其实,在11月,刘健皓就展示了这一酷炫的技术。360 公司大楼下列阵了二十几台豪车,利用神秘的技术,刘健皓和团队轻松逐一破解了这些车。0OPednc

这次,他就是来详细解密——他是如何做到的。0OPednc

CAN 总线留下的 BUG

一切危险的源头是因为汽车的CAN总线设计。0OPednc

CAN 是控制器局域网络 ( Controller Area Network ) 的简称,是在1986 年,由以研发和生产汽车电子产品著称的德国 BOSCH 公司开发的,并最终成为国际标准(ISO 11898),是国际上应用最广泛的现场总线之一。0OPednc

对于汽车,有很多种攻击途径:OBD 盒子、WI-FI、蓝牙、车机 APP、车联网平台……它们都要经由 CAN 总线进行控制。如果 CAN 总线安全,那么即使黑客利用上述途径,对车耍花招,汽车整体安全还是可以被保证,这些花招都仅仅是“娱乐”而已。但是,如果 CAN 总线不安全,这样的汽车就可以受到“狗带”般的攻击——你拿着车钥匙也没用,这车现在属于控制了 CAN 总线的黑客。0OPednc

如何守卫 CAN 总线的安全,要从 CAN 总线的结构说起。0OPednc

故事是这样开始的,很久很久以前……0OPednc

传统的汽车线束结构是这样:很多控制器链接在一个东西上,控制器之间可能还会互相干扰……0OPednc

20161201000240OPednc

直到有一天,人们忍不了了,设计出一个总线架构,就像交换机一样,所有 ECU (电子控制单元)都要经过这个“交换机”:交换信息,协调指令。0OPednc

20161201000250OPednc

但是,现在看来,CAN 总线还有几个致命的攻击点:0OPednc

1.它遵从 CSMA/CD 的交流方式,在任何一个节点搭上总线,都可以看到总线的数据,所以黑客只要找到一个点攻破,就可以看到车内所有数据;0OPednc

2.它支持多路访问,网络上所有节点接收数据都经过一条总线,所有数据都在一条线上,发的数据是广播的,所以可以看到很多控制器发的控制指令,如果控制指令是明文,那么就可以通过重放的方式控制汽车的一些设备;0OPednc

3.它有一个冲突检测机制,所有节点在发送数据的过程中,会不断检测所发送的数据,预防与其它节点产生冲突,由于这样的机制,只要一直在传统线中发送数据,就可以导致 CAN 总线拒绝服务,车上任何控制器都没有反应。0OPednc

刘健皓介绍,只要知道 CAN 总线的数据、ID、发送周期,那么黑客就可以通过重放来判断某个控制功能。0OPednc

20161201000260OPednc

所以,对 CAN 总线的攻击其实十分危险,可以窃听总线数据、伪造协议,实施重放攻击和拒绝服务攻击。这意味着,如果做了这些动作,车处于极度危险中。
万能车破解器真的能破解一切车?0OPednc

是的,只要车有 CAN 总线设计。0OPednc

先看一下理论分析——汽车 CAN 网络逆向过程主要分为4个步骤:筛选、定位、破解信号、验证和保存。0OPednc

第一步:筛选0OPednc

使用市面上一些 USB-CAN 的工具与汽车的 CAN 总线相连,可以获取 CAN 总线上广播的 CAN 数据包,从大量数据包中进行逆向分析,找到想要的 CAN 数据包。0OPednc

第二步:定位 CAN_ID0OPednc

对于车身的某一项功能的控制,只需要一个 CAN ID 的数据包即可,这时只需要单纯地重放即可达到攻击的目的,还有一些功能需要多个 CAN ID 的数据包联合才可以,还有一些 CAN ID 数据包上带有计数器,在攻击时必须加上计数器才能绕过预碰撞系统的阻碍。0OPednc

第三步:破解信号0OPednc

CAN_ID 的数据包里一共有8个字节,每一个字节代表什么以及这些字节上的数字都是不固定的,比如速度表上的数值是根据公式计算出来的,如果改变成想要的数值(就是电影里那样改变速度置人于死地),需要带入公式才能得到正确的结果。0OPednc

在测试的过程中需要触发汽车动作,再确定 CAN_ID 的变化,然后找到对应的值,这样就可以把信号和汽车动作破解出来了。0OPednc

第四步:验证和保存0OPednc

结合上述结果,做成 FUZZ 工具,进而发现更多的汽车漏洞,如果需要修复的话,当然也是可以的。0OPednc

实际操作起来,要不断解决一些困难。0OPednc

刘健皓说:“我们拿一些传统 USB 工具接到车上面,发现刷屏非常快,分析 CAN 协议时,看执行动作,眼睛都要花掉。”0OPednc

为了能清晰地分析数据,没有工具,那就自己造一个。因此,刘健皓及他的团队造出了一个“CAN—Pick”。这个“CAN—Pick”就是他们口中的“汽车安全总线测试平台”——测试汽车总线是否安全。0OPednc

其实,它也是一个万能车破解器。0OPednc

虽然,它的外表看上去没有那么酷炫狂拽,仅是一个可以连接车的小黑盒和一个软件平台。0OPednc

那么,究竟如何操作,这辆车就会被黑掉呢?0OPednc

拿着电脑和小黑盒连接到车身,车身在静止状态时也会产生一些数据,这些数据被称为干扰数据,第一步就是获得这些干扰数据。小黑盒连接上的时候,软件平台上就会出现可视化的干扰数据;然后,操作车灯,获得车灯操作时的数据包,与干扰数据进行比对,从而发现真正能够下达操作车灯的指令数据包。把这个新获得的数据包进行重放,那么就可以操作车灯。0OPednc

其它操作同理。0OPednc

360 车联网安全中心另一工程师严敏睿介绍:0OPednc

这款软件支持全平台,有多种硬件可以进行试配,不管是市面上的,还是自己开发出来的,都会提供 SDK,让你自己自行进行试配。同时可以在线编写一些插件,这些插件可以共享到服务端,也可以从服务端下载一些别人编写的插件进行共享,多个人可以同时对这款软件进行操作。0OPednc

这意味着,“全民”可以加入到“黑车”——哦,不,是测试车是否安全的平台中来。0OPednc

20161201000270OPednc

既然 CAN 总线可以被攻击,这个工具也可以检测出一辆车是否安全,那么有没有什么方法可以阻止这一切发生?0OPednc

刘健皓表示,汽车总线设计之初是在封闭网络环境中使用,并没有考虑安全问题,对于总线网络结构及控制指令的设计,要增强各 ECU 之间的验证措施,包括使用时间戳和校验的方式防止重放破解攻击,提高控制协议被逆向的成本,同时要控制好联网部件的安全性。0OPednc

他们现在的思路是,对 CAN 总线进行安全加密,比如,在数据包中是否可以插入一些加密算法。刘健皓透露,目前,清华大学的研究团队也正在对这一领域进行研究。0OPednc

(本文转载自雷锋网)0OPednc

201606300001230OPednc

本文为EDN电子技术设计 原创文章,禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
您可能感兴趣的文章
  • Matter的核心:定义下一阶段智能家居的互操作性和无线技 在当今完全互联的世界里,使用各种智能家居的生活环境意味着需要同时与多种无线协议进行交互。照明系统、供暖和制冷系统、安全系统、娱乐系统——现在家庭生活的方方面面几乎都可以通过无线方式进行增强和控制。尽管无线技术的优势众多,但如今家庭中的无线连接并不是一帆风顺的。即便对于深谙各种先进技术的智能家居爱好人士来说,家庭网络中处理各种不兼容的无线协议也构成了挑战。
  • 泰克在其屡获大奖的高性能示波器中增加5G功能 工程师可以使用最新5G软件,在一台示波器上诊断复杂的信号交互,减少麻烦的仪器之间关联需求。
  • 用TinyML开始设计——开发评估套件 本文中展示的开发套件和评估板得到一些流行的机器学习库和用于 TinyML 工作流程资源的支持,包括用于微控制器的 Google TensorFlow Lite 和 Edge Impulse,因而它们能够成为您第一个项目的理想起点。
  • “中国IC设计成就奖”提名产品简介:集成隔离电源的隔离 CA-IS3062W是川土微电子在2020年12月推出的一款隔离式控制区域网络(CAN)物理层收发器,同时内部集成隔离式DC-DC转换器。符合ISO11898-2标准的技术规范。此器件采用片上二氧化硅(SiO2)电容作为隔离层,在CAN协议控制器和物理层总线之间创建一个完全隔离的接口,配合内部集成的隔离式DC-DC,可隔绝噪声和干扰并防止损坏敏感电路。
  • VIAVI携手罗德与施瓦茨推出O-RAN无线单元一致性测试解 O-RU测试管理器结合双方的测试解决方案,提供统一的用户体验
  • 新的10BASE-T1L标准有哪些变化? 本文介绍了10BASE-T1L的基础知识,并展示了与选择各种应用适用连接器相关的产品。通过数据线实现各种互连设备的电力传输在10BASE-T1L中也发挥着至关重要的作用。
相关推荐
    广告
    近期热点
    广告
    广告
    广告
    可能感兴趣的话题
    广告
    向右滑动:上一篇 向左滑动:下一篇 我知道了