前日,在极智未来XPwn上,上演了让 ofo 极度懵逼的一幕。百度的2位安全研究员现场将ofo共享单车最新投放市场的智能锁给破解了,破解了,破解了!
在这场事先毫无征兆的现场破解大赛上,百度安全研究员黄正和小灰灰将两辆用于演示的小黄车抬到了演讲台上。
接着,黄正掏出了一款看上去与对讲机一样小的设备,小灰灰捣鼓了一下两台笔记本电脑,数了三秒,然后演讲台上的两把锁就滴答一声开了!
一把锁引发的 ofo“惨剧”
这是怎么回事?故事要从几周前开始,百度安全实验室以进行前沿研究为主。
有一天,百度安全的几个研究员在某宝上逛,发现某宝上在卖各种共享单车的锁、零部件什么的。好像很有意思的样子,买两把锁过来玩玩吧,然后,一不小心就买了一款 ofo 最新使用的锁。
破解过自动售货机、智能门锁的安全研究员练就了一身过硬的开锁技能。
黄正对编辑表示:“这种锁一般人确实拆解不了,因为芯片特别小,我们用特殊工具把里面的关键芯片取了出来,花了一个星期进行了逆向分析,然后发现了一个大漏洞。”
这并不是一个容易的过程。黄正、小灰灰并没有这款锁的源代码,但是根据先前破解的经验,他们决定先研究ofo的通信情况。
这个车锁里有一个SIM卡,通过GPRS的流量访问服务器,发送的内容经过某算法加密。
找到这个算法后,他们在茫茫代码中找到了一条关键的通道,在这条通道上,黄正、小灰灰终于发现了打开关键功能的大门。
黄正分析出了加密方式,又发现了加密犯的一个错误,利用这个错误,他们可以在用户关锁时,锁和云端的通讯过程中,成功劫取锁和云端通讯的信号。
一个关键信息点是,为了减少通讯,一辆共享单车锁与云端通讯时,比如,锁车时,锁会告诉云端:“宝宝我先睡了,你把下次开车的密码告诉我,下次开车我就不打扰你了。”然后,云端就把密码“预付”了。
黄正和小灰灰动的手脚是,让车锁在和云端的通讯过程中,将车锁信号劫持到自己的服务器上,从而把原来应该给车锁的密码修改成自己设定的任意密码。
小黄车秒变小黑车
看上去,这仅仅是免费骑车的一个方式,可事情并没有这么简单。
黄正没在演讲台上告诉大家的是,其实他们还可以在服务器端把车锁与云端的通讯过程中获得密码的机制修改成“不认识”云端发送的正确密码,但其他任意密码都可打开车锁。
这意味着,正儿八经的用户反倒开不了锁,其他别有用心的用户反倒分分钟开锁!
难怪,小灰灰在演示时表示:“我的服务器在主导一切,你的锁成了我的锁,你的车成了我的车,早上起来去地铁,地铁旁边停的这一片ofo 都被我承包了!”
这两个安全研究员开玩笑地建了个群,与另一位参与破解的同事表示:“搞定!买漆去!把 ofo 分分钟涂成 UFO ,就可以不费什么成本的创业了!”
黄正告诉编辑,这个漏洞涉及关键的加密协议,车厂修补比较复杂,如果替换新的加密协议,在更换协议的过程中,要注意协议的适配性,不然可能影响车锁的正常通讯,导致无法正常运行。
现阶段,共享单车管理团队大多将工作重心放在业务扩张上,对车锁安全重视低,当中隐藏着非常大的风险,应该多关注,不然,千万辆小车可能一夜之间成为别人的小车!
除了共享单车行业,其实与互联网开发相关的一切行业都涉及网络安全问题,就拿普通的网站建设、APP开发来说,如果技术不过硬就很容易被黑客攻击,给企业造成巨大损失。所以企业在选择开发公司时一定要谨慎再谨慎,尽量多实地考察。
更多互联网转型干货,欢迎关注大腕互联:www.dawaner.net