返回资讯中心
外部精选
软件工程
#社区热议

研究人员发现某汽车品牌联网系统漏洞,可远程解锁全球范围内车辆

来源标题:Unlocking any car from X brand in most of the world

安全研究人员Sam Curry与一名研究者合作,发现某大型汽车制造商联网汽车平台存在安全漏洞,可远程解锁该品牌车辆。研究者通过反编译手机APK分析其连接的后端基础设施,怀疑其安全性并展开测试。漏洞影响范围覆盖全球大部分地区。

Hacker Newsinfosecau2026/11/9 · 今天30 分钟阅读

以下正文由 AI 翻译自 Hacker News(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。

我一直对这个汽车品牌情有独钟。这些年来,我们家拥有过好几辆这个品牌的车,它们为我们服务得非常好。2023年,我从他们那里买了一辆新的四驱/SUV,那也是我第一次接触到他们的车联网平台。

之前研究过类似的平台(以前的工作),我对它们到底有多安全持怀疑态度。我怀疑那里确实有问题,但生活总是让我没时间去真正探究。今年七月,我与Sam Curry合作,研究了一家大型汽车制造商的车联网系统的安全性。在整篇文章中,我将简单地称他们为“该汽车制造商”。

通常想到汽车黑客,人们很容易直接跳到硬件层面,但我的背景恰恰是在攻破面向互联网的Web应用和基础设施方面。不管有多少硬件组件,它们最终都连接回某个服务,而这个服务按设计必须能从互联网访问。

旅程始于一个简单的问题:当我远程解锁我的车时,应用与什么基础设施通信?为了弄清楚这一点,我下载了APK并反编译了它,最终重建了正在发出的API请求。

浏览代码时,主要的联系点似乎是*.redacted-telematics.com.au下的资产: dartExecutor.executeDartEntrypoint(createDefault, CollectionsKt.r(gson.toJson(new GlobalConfigParams(false, g11, com.redacted.app.xcapp.a.f69866f, "X", str)), new Gson().toJson(new ApiConfig("https://api.redacted-telematics.com.au", "https://api.redacted-telematics.com.au", "https://api.redacted-telematics.com.au" ...

消费者应用的几乎每个部分都会回调到redacted-telematics.com.au。这个域名下还有什么其他东西存在?

运行车联网基础设施可能相当复杂,管理它需要混合使用管理工具、预发布环境、开发环境和QA环境,以确保客户获得干净的体验。所有这些是否都应该放在公共互联网上,让任何愿意做一些基本侦察的人都能访问,那就是另一回事了。

有一个资产比其他资产更引起我的注意。admintool.redacted-telematics.com.au返回了一个标题为TEST HARNESS的页面。谁能抗拒一个包含admintool的子域名呢?

访问这个子域名呈现了一个非常朴素和灰色的登录屏幕,这并没有散发出高质量的感觉,因为它在登录前就显示了一个注销按钮。

我喜欢大多数单页应用即使在只需要渲染登录页面时也会发布整个JavaScript包。当然,一些更现代的框架会拆分JavaScript文件,以便只提供必要的内容,但在这种情况下,我们可以梳理大型JavaScript包来了解这个“管理工具”实际上让你做什么。

事实证明,这个管理工具能让你做相当多的事情。它有一个丰富的API,让汽车制造商的员工能够与客户账户和生产车辆交互,几乎没有限制。重建请求后,我们发现这些API中的许多除了JavaScript包中硬编码的API密钥外不需要任何身份验证。

例如,我们可以通过电子邮件地址查找用户账户: 但这还不够好。如果我们想仅凭车牌号就能解锁他们的任何车辆,我们需要做得更好。

在澳大利亚,通过州政府基于注册的查询网站,车牌号可以相当容易地获得VIN(车辆识别号码)。

幸运的是,有一个API可以让你做到这一点: 现在,我们如何向我们想要的任何车辆发送命令?这个管理工具肯定会让我们做到这一点吧?不幸的是,不行。它让我们为车辆配置功能,将自己作为次级用户添加到用户账户中,甚至生成远程访问代码。但尽管有所有这些功能,没有一个能真正让我们获得对车辆的远程控制。

Sam和我随后花了两周时间深入研究该汽车制造商如何管理他们的中央身份系统:他们使用的软件、命令的发出方式以及消费者如何认证。

当用户通过该汽车制造商移动应用的身份验证流程时,请求会发送到login.redacted-identity.com.au,经过MFA流程后,最终会发放消费者认证令牌。这个认证令牌随后用于对api.redacted-telematics.com.au的后续请求(REST API和GraphQL)。一旦你拥有了那个认证令牌,基本上就游戏结束了。你可以控制用户的车辆(远程解锁/锁车、喇叭、引擎等)。

所以如果我们能为任何用户铸造一个令牌,我们最终就能控制任何人的车联网汽车。这就是我们采取的角度。

该汽车制造商是ForgeRock身份软件(OpenAM/OpenIDM)的重度用户。这是他们认证机制的基石。拉取*.redacted-identity.com.au的子域名,我们很快在openidm.redacted-identity.com.au找到了他们的OpenIDM实例。这是管理该汽车制造商车联网平台上注册的每个身份的系统。

当我们在梳理*.redacted-telematics.com.au下的JavaScript文件时,这一切都串联起来了,我们遇到了一个绝对糟糕的供应商JavaScript包,其中嵌入了OpenIDM的管理员凭据😱: 尽管这些管理员凭据本意是用于他们的预发布环境,但鉴于我们目前看到的卫生状况,我们很确定它们在生

(原文较长,此处译出前 6000 字,完整内容请点「打开原文」。)

正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。

打开原文
去社区讨论 →