[关闭]
@ensis 2016-08-19T01:38:26.000000Z 字数 1716 阅读 1568

锁上的车门还是可以被打开:一个可以无线解锁百万辆汽车的研究成果

雷锋网投稿


上周在奥斯汀召开的安全界上顶级学术会议Usenix Security上,有一篇名为《Lock It and Still Lose It —on the (In)Security of Automotive Remote Keyless Entry Systems》的文章呈现了一个令人吃惊的研究成果。作者仅利用一个40美元的无线电设备拦截获取目标车钥匙的解锁信号,之后经过代价较低的计算,即可获取克隆目标车钥匙的全部信息,进而任意加解锁目标车辆。这个结果适用于全球将近一亿辆的汽车。

具体来说,文章介绍了主流汽车制造商在实现遥控车门开关系统(Remote Keyless Entry Systems,不确定是不是这么翻译。。。)方面的安全问题,主要是以下两种:

第一种只会影响大众汽车,但影响范围包括了大众集团自1995以来生产的几乎所有汽车(奥迪、斯柯达等)。攻击原理方面:大众的遥控车门开关系统的安全性依赖于一个主密钥(自然这个主密钥对于每辆车都是不同的),而通过逆向车上的组件程序可以得知,主密钥主要是由两个秘密信息计算出来的,其中一个可以在逆向程序时获取到,另外一个与设备高度相关,但这个值会出现在车钥匙在与车通信时的流量里。那么在攻击某一具体的目标车辆时,攻击者需要:
①能够获取到目标车辆的组件(以获取第一个秘密信息)
②目标车辆与攻击者的拦截设备之间的距离不超过300英尺(大约90米)
第二个条件对于攻击者来说是必须要满足的,因为要获取的秘密信息是车辆高度相关的。而第一个条件,对于攻击者却不是必须的,因为作者在逆向了很多组件后发现,第一个秘密信息会在大量的车之间共享,尽管不是所有车共享同一个值,但最常见的四个值就会影响到数量庞大的大众汽车,因此若有人通过逆向大量的组件搜集到足够多的值组成一个集合,攻击者只要依次尝试集合中的值,即有相当大的概率可以成功。
1995年后大众生产的使用了那四个值的汽车就有接近一亿辆,但最近的VW Golf 7及使用了相同系统的车辆不受影响,因为在这些车里,第一个秘密信息对于每台车来说都是独一无二的。

第二种攻击的是叫做Hitag2的用于防重放的rolling code方案,作者提出了一种新的攻击方法,可以在已经获取到8个rolling code的情况下,在一分钟内破解Hitag2。Higtag已经有18年的历史,但目前仍被用在很多汽车中,像是阿尔法罗密欧,雪佛兰,标致,蓝旗亚,欧宝,雷诺,福特等,因此这个安全问题存在于以上那些车辆中,攻击者需要做的就是获取到连续的8个rolling code和在笔记本上的一分钟运算。

以上两种攻击都需要拦截车钥匙的信号,而这一点使用一个带有无线接收器的价值40刀的Arduino板即能做到,不同的只是第一种攻击只需要拦截一个信号,第二种需要八个,但在车主按了钥匙而车门却没开的情况下,车主连续按动按钮的概率还是相当高的。

对于受影响的车辆,修补问题的难度比较高,一方面车上固件软件的开发周期很长,很难快速响应新的设计,另一方面软件如何更新到现有车辆上也是一个问题。因此,文章的作者建议,对于车主能做的就是不要把车辆当成安全箱,不在里面放有价值的物品,以及甚至可以考虑弃用方便的遥控车门开关,转而使用老式、机械的方式来开关车门。

最后值得一提的是,这篇文章的主要作者、来自伯明翰大学的研究者Flavio Garcier,在2013年就发现了大众汽车发动机immobiliser的问题,由于车辆RFID应答器中使用的Thales(一家公司)开发的算法在验证密钥身份时存在安全缺陷,可以让攻击者在没有钥匙的情况下点火发动机随意开走上百万辆车。但考虑到研究结果可能带来的现实问题,在大众和Thales的共同请求下,英国法院判决禁止该研究结果的公布,因此尽管文章已被Usenix Security大会录用,最终也没能发表,文章直到15年才成功出现在Security的论文集里。然而这个事件并没有影响作者继续研究这类问题,因此在今年,Flavio Garcier又与其他研究者合作,发表了这个成果,真可谓是没有什么困难能够阻止研究者发现问题的脚步。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注