许多人认为只要汽车上安装了智能追踪器,即使在被盗的情况下,也可以跟踪并找到汽车。
要说智能追踪器可能最著名的就是LoJack了,lojack是一款防盗/寻回软件,类似于GPS,但性能要高于GPS,可以24小时追踪巡逻队伍,24小时直属监控中心,多重追踪技术,隐蔽式追踪装置,防干扰追踪装置,在货柜大厦设置地牢内依然正常工作。另外还有TrackStar和SmarTrack。这三个跟踪器都获得了英国Thatcham Research车辆安全和安全研究组织的认可。Thatcham Research团队是由许多保险公司设立的,旨在帮助推动车辆安全,而且这三个追踪器都通过了“S5”安全标准认证。
这三个跟踪器应用程序API都有授权漏洞,这将允许黑客接管帐户,实时跟踪汽车,关闭防盗警报(也可能被删除)并提取个人数据。如果防盗警报运行正常,小偷可能会停止其行动
Thatcham认证似乎只是关于设备功能的认证,而至于这些功能是否有效,则不属于验证的范围
LoJack或Tracker的作用
Tracker Touch 移动应用程序允许用户实时定位汽车,同时设置地理围栏。如果车辆被移动,则会触发短信和手机警报。
帐户接管
移动应用API允许用户更新其电子邮件地址,执行此操作的请求包含一个数字字段 – “ClientId” – 用于标识用户帐户。通过可以更改此ClientId并更改任何帐户的电子邮件地址,攻击者可以触发密码重置,把相关的电子邮件发送到自己的帐户,进而完全控制被盗车辆。这意味着,只有小偷会得到防盗警报的提示!
该漏洞是一种不安全的直接对象引用,其中之一是:
删除“地理围栏”警报
如果汽车被移动到指定区域(如街道)之外,则会触发潜在的防盗警报。
在’UnsubscribeIndividualAlert’的POST请求中也有一个类似的不安全的直接对象引用,允许在发出任何防盗警报时将其删除。
或者你可以从网络应用程序执行此操作,因为帐户已被盗用:
TrackStar账户接管
TrackStar没有Tracker那么多的功能,目前研究人员只在TrackStar上发现了一个漏洞,但这已经足够了。此请求未检查用户是否已获得授权:
https://secure.eurowatchcentral.com/device_register.aspx?subscriber_rno=490xxx
‘Subscriber_rno’是一个增量编号,可让你访问所有用户的登录名、电话号码并允许你删除与该设备关联的所有设备。
此外,你还可以添加自己的设备,该设备可以为你提供移动应用程序的密码(永远不会改变),并让你在所有的汽车上都能使用完整的手机应用程序。
然后,你可以添加和删除地理围栏,定位汽车,实时跟踪用户等,就像Tracker一样。
以下是一辆本文作者的车的跟踪示例:
SmarTrack
与TrackStar一样,SmarTrack移动应用程序没有那么多功能,但仍然可以提供车辆的跟踪和地理围栏。
删除地理围栏
这里有一个类似的不安全的直接对象引用,因此可以简单地删除地理围栏并且不会触发防盗漏洞。
授权检查不适用于此请求,因此地理围栏电子邮件警告将被关闭。就算车被盗了,也不会发出警报。
其实,这也是一个HTTP请求。
可能的SQL注入
远程信息处理API端点服务器(https://svr.gtp03.com/1)上的一条路径似乎托管了未正确处理的备份文件。就安全性而言,代码看起来有点初级,因为原始数据库请求没有经过过滤就被传递到底层数据库。
虽然这可能是对主站点的备份,但是我们相信攻击者可以绕过身份验证。由于我们不想未经许可就使用SQLi,因此该想法还未进行实际验证。
http://svr.gtp03.com/instant_immobilise/instant_immobilise_handler.php应该是一个呼叫中心,在警察或车主的要求下触发车辆制动。根据我们已经看到的情况,应该可以通过安装此跟踪器来固定每辆车。
为了证明这一点,我们发出命令来固定我们自己的车辆。
然后我们的车就不会被启动,触发防盗装置的过程不到1秒,解决此预警的唯一方法是物理卸载跟踪设备。具体过程,请看此视频。这很奇怪,为什么这个功能会出现在公共服务器上呢?
根据研究人员的推测,是LoJack和Tracker的API上出现了漏洞。