漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2015-0143278
漏洞标题:无线安全之绕过比亚迪某款汽车滚动码继续破车锁(附证明视频)
相关厂商:bydauto.com.cn
漏洞作者: 末笔丶
提交时间:2015-09-24 23:53
修复时间:2015-12-27 17:14
公开时间:2015-12-27 17:14
漏洞类型:权限控制绕过
危害等级:高
自评Rank:20
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2015-09-24: 细节已通知厂商并且等待厂商处理中
2015-09-28: 厂商已经确认,细节仅向厂商公开
2015-10-01: 细节向第三方安全合作伙伴开放
2015-11-22: 细节向核心白帽子及相关领域专家公开
2015-12-02: 细节向普通白帽子公开
2015-12-12: 细节向实习白帽子公开
2015-12-27: 细节向公众公开
简要描述:
详细说明:
首先介绍下车钥匙无线钥匙吧...大多数根据传统汽车的破解基本上都是根据车钥匙的重放攻击
简单说下重放攻击.攻击者必须要在远离汽车的地方通过设备捕获到车钥匙发射出来未被使用的信号.然后在到汽车附近将捕获到的信号发射出来完成攻击..
但是捕获的信号只能被使用一次...因为汽车厂商早就考虑到了这个问题.所以在钥匙中加入的滚动码
滚动码就是钥匙每次操作都会产生的随机码.每次操作钥匙都会将滚动码和功能码一起发给汽车..汽车也有存着当前的滚动码..当滚动码一致才执行对应的功能..
回归正题.
首先分析钥匙的频率.通常为315Mhz 和 433Mhz
然后确定当前频段为315Mhz
捕获到的一次信号.每一段的数据都是一样的.除了首段结尾有点区别.
按的时间长了就会出现上图那样或者更多...
现在来分析下信号内容前面一段为同步引导码.作用是告诉汽车有信号要来注意接收..
可以发现中间一段是不相同的这就是我上面说过的滚动码是为了防止重放攻击的.其次功能码
我采样了20多个信号中的滚动码进行分析.分析了大半天..
后来测试重放第二次的时候码都失效了但是后来我脑洞大开拼接了多个已经被使用的信号后发现门开了.经过大量的次数(车门都快坏了)发现是快速的发射两个指令.汽车的滚动码回滚到了第一个指令处!!!!
原本F是当前的滚动码.F以上的都是被使用过的滚动码.当重放F之前的码后汽车不会有任何反应!
可拼接两个已经被使用的指令码之后呢?
当A码拼接BorCorDorE 码发射后.滚动码回滚到A码处.因此B,C,D,E码能够被再次使用了..
多次的测试后.发现只要捕获三次钥匙发出的信号(即使是被使用过也是可以的!)在进行拼接(有先后顺序)就能够无限制的打开or关闭他人的车门
可能有人会问了.这样车钥匙与车滚动码不同步会不会出现打不开车门的问题.其实并不会.汽车能够接收当前码之后的几百个码!
只测试了F0型号
漏洞证明:
http://v.qq.com/page/q/a/m/q01662qmoam.html
W0OYuN
修复方案:
版权声明:转载请注明来源 末笔丶@乌云
漏洞回应
厂商回应:
危害等级:低
漏洞Rank:5
确认时间:2015-09-28 17:12
厂商回复:
您好!经过我们确认,所涉及车辆钥匙的加密算法采用的是该车辆生产年代业界通用的钥匙加密技术,按照洞主的破解方法,需满足以下条件:
1、需要专业的无线电采集、编辑和发送设备;
2、拥有汽车钥匙遥控器或一直在车主解锁时信号发射范围内多次捕捉解锁信息.
按照这种方法只能破解被搜集到信息的单一车辆,对其它车辆无效。而且车被破解后只能打开车门(类似车被砸玻璃),无钥匙的情况下无法开动车辆。
我们已在数年前采用了新的钥匙安全加密技术。非常感谢您的报告,谢谢支持。
最新状态:
暂无