2026年11月13日星期五
漏洞

默认凭据 admin:admin 让研究人员远程启动汽车

ForgeRock 管理控制台的默认凭据让研究人员劫持了两家车企的账户并远程启动引擎,修复只用了两小时。

汽车大灯在昏暗车库中闪亮,一把发光的钥匙悬停在挡风玻璃前
研究人员获得的令牌之所以能像真实应用的钥匙一样工作,正是因为它们本来就是钥匙。

两名研究人员走进两家车企登录系统的前门,然后——从数字意义上说——带着解锁车门、闪烁车灯、鸣笛和启动联网汽车引擎的能力离开,涉及澳大利亚和美国的车辆。这把万能钥匙并非零日漏洞。据 The Hacker News 报道,问题出在 ForgeRock 身份平台上的一个管理员控制台,它仍然接受出厂密码:admin:admin。

Shubham Shah(Assetnote 联合创始人)与研究员 Sam Curry 上周末发布了这项研究,The Register 对此进行了报道。两家车企(要求匿名,并如愿以偿)的移动应用登录都基于 ForgeRock,该平台现属 Ping Identity。研究人员于2026年初报告了漏洞,据 Curry 披露的时间线,漏洞在报告送达后约两小时内修复。两小时。记住这个数字,它就是整个故事的核心。

两条攻击链,同一个教训

先说美国的攻击,因为它最令人尴尬。两个品牌的客户都通过 ForgeRock 登录,该平台分为两部分:登录前端和存储客户记录的组件 OpenIDM。OpenIDM 自带一个基于 Apache Felix 的内置管理员控制台,而 ForgeRock 自己的加固指南多年来一直告诉运维人员,上线前要删除该控制台或修改密码,因为它的凭据与系统其他部分分开保存。在这些生产服务器上,控制台仍然装着、仍然可以访问,并且仍在使用文档中记载的默认值:用户名和密码都是 admin。

该控制台并未直接暴露在互联网上,前面有一道 Web 应用防火墙(WAF)。但事实证明它只是减速带,而不是围墙。边缘设备和后端 Java 软件对同一 URL 的解析方式不同,因此研究人员通过添加编码斜杠和额外字符,让边缘设备把请求当作无害的静态文件放行,而源服务器却把它识别为控制台路径。这是典型的路径混淆。进入之后,他们利用 Felix 配置管理器内置的调度器运行了一段内联 Groovy 脚本——说得委婉点,就是他们在持有两个品牌客户记录的身份服务器上拿到了 shell。Shah 表示,美国的攻击“需要多得多的工作量”,因为该车企“在美国、加拿大和欧洲的 OpenIDM 环境上花费了多得多的精力来加固”。至于这对其他地区意味着什么,你可以自行判断。

拿到身份服务器的 shell 之后,剩下的就是例行操作。研究人员查询了本地管理 API 端点,修改了目标账户的邮箱地址和密码,通过普通移动应用登录,并获得了真实应用所获得的同样的访问令牌。这些令牌可以解锁车门、启动引擎。他们在一辆测试车上演示了这一点,车主本人在旁边同意并看着,之后他们熄了火并重新锁车。

Shah 在另一篇独立文章中详细描述了澳大利亚的攻击链,它的前端不同,但本质相同。研究人员从公开的车牌查询网站获取了车辆识别码(VIN),将其输入内部 API,并获得了个人信息和车主邮箱。随后,他们在应用代码中发现了硬编码的 OpenIDM 管理员凭据——这些凭据本应用于测试环境,但在生产环境中同样有效。《The Register》称该系统有严格的 WAF 过滤,研究人员通过路径遍历漏洞绕过了它,然后调用内部管理 API,仅凭一个邮箱地址就接管了账户,并生成认证令牌,通过应用发送任意指令。

最令人毛骨悚然的是接管过程有多安静。修改账户的邮箱和密码并没有让车主在自己的应用中被登出,研究人员还可以把账户的提醒通知指向自己的手机,让受害者的手机保持沉默。测试结束后,他们恢复了真实邮箱。如果这是恶意攻击,车主最先察觉到的线索很可能就是停车位空了。

已确认、已声称与仍未知

现在回归严谨。这个故事有很多噱头,作为经历过上百次数据泄露复盘的人,我更希望你清楚地知道哪些部分已被证实。

  • 已通过演示确认:从账户接管直到解锁和启动引擎的完整链条确实可行。研究人员于2026年2月在他们拥有或获得许可使用的汽车上进行了测试,车主在场。
  • 研究人员声称:他们本可以在受影响服务器上打开任何客户账户的会话,且两条攻击链合起来覆盖了澳大利亚、美国和加拿大的汽车。他们明确表示,“仅在美国账户和车辆上测试了完整链条”。
  • 厂商自身文档已证实:Felix 控制台及其默认密码多年来已有文档记载,ForgeRock 的生产环境加固指南也已明确要求删除或加固该控制台。
  • 未知:是否有恶意方在漏洞关闭前发现了这条路径,两篇报告均未提及。另外也不清楚澳大利亚系统何时修复——Shah 的文章没有给出日期,两小时的修复时间来自美国的披露时间线。
  • 未经证实的猜测:车企的身份。一些汽车爱好者研究了 Shah 部分打码的演示视频,认为后视镜和解锁提示音像是丰田,雷克萨斯是第二个品牌。据《The Register》报道,当被问及此说法是否属实时,丰田汽车公司的一位发言人既未确认也未否认。这是一种“不否认”,而不是名字。请据此看待。

为什么要区分这些?因为这里没有 CVE,也没有厂商公告可供跟进。这是配置失误,而非产品缺陷——这意味着没有可以扫描的补丁,没有需要核对的版本号,漏洞扫描器也无法自动关闭这一项。你的暴露程度完全取决于你的团队如何部署该软件,而唯一的办法就是去检查。这比一个 CVE 更让人不安,也正因如此,这个故事值得你比那些会自动变成工单的普通高危公告投入更多关注。

“显然,他们要求不被点名。虽然通常我们会努力把公司名称写出来,但现在安全圈很忙,我不愿看到他们因为担心这次披露而分散资源。”Curry 在解释为何破例为车企提供匿名时这样说。

一座堡垒矗立着巨大的城门,旁边是一扇小小的未上锁侧门
WAF 是城墙,而默认密码则是出厂时就原样留着的侧门。

算一笔账:两小时的修复

这笔账足以让首席财务官皱眉。修复工作——删除控制台、修改密码、清理构建中的凭据、收紧路径规则——在报告送达后大约用了两小时。就算慷慨一点,也不过几百美元的工程师时间。而能防止整个事件的控制措施,只需在部署时花大约一个工程师半天的时间阅读厂商已经写好的加固指南。再权衡一下真正的风险:三大洲客户车辆的远程物理访问权限、伴随提醒被转移的无声账户接管,以及内部 API 背后的个人数据。如果犯罪团伙率先发现了这个漏洞——而两份报告都没有证明他们没有——我们现在讨论的就不是研究人员的演示,而是盗窃、法律责任和堪比召回级别的危机。

我在凭据卫生问题上说过这一点——ConnectWise 凭据泄露事件也印证了这一点——我还会一直说下去,直到它不再成立:安全中最便宜的控制措施是部署时做的,最昂贵的是公开之后才做的。这些车企在身份认证体系上确实花了真金白银;Shah 也承认美国环境明显更难攻破。他们买了 WAF,运行了平台,显然也花钱请人思考过这个问题。然而整个体系依赖的是一个写在文档里的控制台密码。这就像花大价钱买了保险库,却把备用钥匙留在门垫下——而这块门垫,就是一个让边缘设备和服务器各执一词的 URL。

谈谈 WAF,因为有些厂商会借这个故事向你推销产品。别上当。两条攻击链都是穿过 WAF 而非绕过它——而且是在两个不同环境中,使用同一类手法:边缘设备和源服务器对路径的解析方式不同。用 WAF 规则隐藏管理页面只是一条安慰毯。如果页面存在且接受 admin:admin,唯一可靠的控制措施就是删除该页面或修改密码。路径混淆是一种众所周知、平淡无奇、被反复使用的技术,而它在这里击穿了两个独立的企业级部署。

董事会周一应该问的问题

Shah 和 Curry 此前就做过类似研究——他们通过攻破应用背后的 Web 系统而非汽车本身,演示了对本田、起亚、斯巴鲁等品牌车辆的远程访问。董事会需要认清的正是这一规律:汽车的安全程度取决于其前端的身份提供商,而身份提供商的安全程度又取决于配置它的人。如果你是本周需要回答问题的 CISO,请跳过那些关于国家级攻击者的幻灯片。这里没有任何异常操作。请改问那些枯燥的问题,因为枯燥之处才埋着问题:

  • 我们上一次依据厂商自身的生产环境加固指南(而非某个框架)审计身份体系是什么时候?
  • 生产环境中是否存在测试凭据、控制台或服务账户?谁通过实际检查而非依赖电子表格验证了这一点?
  • 如果攻击者在我们的身份服务器上拿到了 shell,什么能阻止他们改写客户账户找回数据——而我们是否能察觉?
  • 我们的账户安全提醒路由方式,是否会被劫持者悄悄改向?
  • 当第三方替我们运营身份系统时,我们的合同究竟赋予了我们哪些审计权利?

最后一点值得强调。ForgeRock 在无数公司都是基础设施,现在以 PingIDM 的名义销售,研究人员给运行该产品团队的建议非常直接:在 /system/console 查找 Apache Felix 控制台,删除它或修改默认密码,并且不要再指望边缘路径规则来隐藏管理界面。如果你的身份层是外包或托管的,本周正是行使审计权利的时候,要求提供证据——而非口头保证——证明管理控制台已被删除或加固。

我的判断:如果你在运行 ForgeRock 或 PingIDM,请把它当作必须立即行动的事项,因为检查只需几分钟,而失败的后果是完全的账户接管,并附带现实中的物理风险。其他人则应把它当作一堂关于机会成本的免费课程。两小时即可修复。多年的文档化警告。一个厂商几乎是求着大家去修改的密码。这些数字之间的差距正是数据泄露滋生的地方,而弥合它并不需要预算项目——只需要有人真正去读一读手册。

来源

本文参考了以下报道与公告: