LocationSmart 向企业出售基于运营商的实时手机定位服务,合作伙伴包括 Verizon、AT&T、T-Mobile、Sprint 以及加拿大运营商 Bell、Rogers 和 Telus。其公开试用页面允许任何人输入电话号码,一旦机主回复短信或回电同意消息,就能在地图上实时看到该手机的位置。同意步骤是整个演示的核心。

2018年5月16日,研究员 Robert Xiao 发现同意步骤可以被跳过。演示 API 以两种格式响应同一操作:XML 和 JSON;用 requesttype=locreq.json 而不是默认的 XML 请求位置时,订阅检查被完全跳过。两次未经认证的 POST 请求——一次获取令牌,一次请求位置——就返回了目标街道地址和地图圆圈,适用于任何美国无线号码,包括从未同意的手机。

由于定位是基于运营商的三角测量,它对每部手机都有效,无论操作系统或隐私设置如何,且无法选择退出。Xiao 没有隐瞒发现或直接泄露:他向 US-CERT 报告,并与 Brian Krebs 合作,在 LocationSmart 于5月17日上午修复漏洞后,Krebs 发表了报道;Xiao 在验证补丁后才发布了他的技术分析。

这一披露发生在业界因出售位置数据而受到审查之时:该分析引用了报道称运营商向 Securus 提供数据,而 Securus 不当披露给前执法人员。Xiao 的页面在修复当天在 Hacker News 上获得了1209分和270条评论,并被几十个网站转载。

交替响应格式跳过了同意检查

JSON 请求类型绕过了强制同意的代码路径,因此一个格式词的变化就产生了完整的定位数据,无需同意。

一个打印街道地址的简短概念验证使缺陷具体且可信,这促使它在一天内得到修复。

通过 US-CERT 和可信记者的协调披露意味着故事发表时补丁已就位,而不是零日恐慌。

运营商侧定位影响美国四大运营商的每个用户,且无法退出,因此这个演示 bug 是全国性的隐私暴露,而非边缘案例。

将每种响应格式视为攻击面:一个处理器中的同意检查可能在另一个中缺失。用可行的演示证明严重性,通过 CERT 披露,并仅在补丁后发布。

LocationSmart 在2018年5月17日上午修复了漏洞,Brian Krebs 当天发表了报道;随后 Xiao 发布了他的技术分析和概念验证。该页面在 Hacker News 上获得1209分和270条评论,并被数十家媒体转载。这一事件持续关注运营商出售实时位置数据的做法,几天前该做法已使 LocationSmart 和 Securus 成为新闻焦点。

从这里,追溯依据

参考来源

  1. Tracking Firm LocationSmart Leaked Location Data for Customers of All Major U.S. Mobile Carriers in Real Time via Its Web Site krebsonsecurity.com
  2. US cell carriers selling access to real-time location data zdnet.com
  3. Senator furious at police's easy ability to get real-time mobile location data arstechnica.com
  4. LocationSmart Leaked Location Data for All Major U.S. Carriers in Real Time — Hacker News discussion news.ycombinator.com