大家应该都知道针对汽车无钥匙进入系统的中继式攻击吧?很多第三方汽车警报器厂商都会以这个内容来给自己打广告。而我们的各项研究表明,在装配了这些警报器之后,你的汽车将会变得更加不安全!因为这些警报器系统可能会让你无法锁住车门,可能会让你的引擎在行驶过程中突然停止,甚至还会因此而被偷车。
为了证明我们的说法,我们花了5000多美元购买并安装了几款高端的“智能”汽车警报器,并在市场占用率排名第一和第二的两款警报器系统中发现了严重的安全缺陷,而这些安全缺陷将导致:
1、 汽车将能够被实时定位;
2、 可获取汽车类型以及车主信息;
3、 汽车报警器可以被禁用;
4、 汽车可以被攻击者解锁;
5、 攻击者可启动或禁用汽车防盗系统;
6、 某些情况下,汽车发动机在行驶过程中可能会“被”熄火;
7、 车辆被盗
上述的这些安全问题将导致全球三百多万台汽车受到影响。
研究动机
其中有一家名叫Pandora的警报器厂商,他们生成自己的产品是“永远无法被攻击”的。这就不合适了吧?这种想法,简直就是在挑战我们安全研究人员的“底线”。大家看:
Pandora现在也把这段“声明”从官网上下线了,但我们还是截到了一张图:
我们所分析的产品分别来自于Pandora和Viper这两家厂商,它们的产品目前分别占据全球汽车警报器市场的第一和第二。
搞笑的是,他们产品中的漏洞有些过于“直接“了,其实就是API中不安全的直接对象引用漏洞(IDOR)。
攻击者只需要修改部分参数,就可以在不通过身份验证的情况下修改用户注册的邮箱地址,并发送密码重置请求来修改并接管用户账号了。此时,攻击者可以实时定位目标车辆的位置以及解锁目标车辆的车门。
其实我们是在拿到警报器之前就发现了这个漏洞,但为了概念验证,我们还是购买并将其安装到了我们自己的汽车上。
这是一个IDOR漏洞,存在于“修改用户“请求中。虽然除了这一个API之外,其他所有的API都会进行身份验证,但/users/Update/xxxxx请求却没有进行有效验证。
因此,攻击者就可以通过发送恶意请求来修改用户的密码,并控制账户来与汽车警报系统进行交互,而合法用户将无法登陆账号,并且无法访问他们的汽车警报系统。
请求样本:
密码修改截图:
Pandora漏洞分析
这是一个存在于POST请求中的IDOR漏洞,请求位于“email“这个JSON参数中,请求信息如下:
https://pro.p-on.ru/api/sputnik/workers?id=xxxx
因此,攻击者可以修改用户的邮件,并发送密码重置请求。密码重置之后,他们就可以登录App并获取到账户和警报器的完整控制权了。值得一提的是,这种方式还可以攻击管理员用户,即管理多台汽车的用户。
攻击者到底能做什么?
攻击者可以随便选一台车,那就陆虎览胜吧:
接下来,我们来实时定位车辆位置:
然后我们开车跟踪他:
然后,关闭警报器和闪光灯…
当司机靠边停车下来检查时,我们可以开启防盗系统,然后他就没办法启动汽车了。而且我们还取消了他们访问警报器账户的权限,因此他们也无法重置防盗系统。此时,我们可以使用手机来克隆车钥匙按钮,然后使用手机来打开车门。
音频窃听
Pandora的警报系统能够在遇到紧急情况时发出求救信号,因此它配备了麦克风来启用此功能。但是由于API中存在授权缺陷,因此攻击者可以利用这种缺陷来远程访问和启用目标设备的麦克风。
这样一来,攻击者就可以远程窃听目标车辆上人员的全部聊天信息了。
总结
在很多场景下,我们都可以轻松利用物联网设备API中的IDOR漏洞。
大家也知道,这些汽车警报器系统是非常昂贵的,通常只有高端汽车或者配备了无钥匙进入的汽车才会安装它们。就目前的数据来看,我们保守估计全球大约有价值1500亿美元的汽车仍处于这种安全风险之中。
* 参考来源:pentestpartners,FB小编Alpha_h4ck编译,转载请注明来自FreeBuf.COM
原文始发于微信公众号(FreeBuf):车联网安全之给你的豪车来一套渗透测试