安全研究员斯科特·赫尔姆(Scott Helme)表示,他的分析支持了 FulcrumSec 的说法,即曼彻斯特机场集团(MAG)在客户端 JavaScript 中暴露了具有特权的 API 密钥。
赫尔姆称,他在利用网络勒索团伙提供的信息重建上个月大约 880 万名 MAG 客户的数据是如何被盗之后,得出了这一结论。制造此次攻击的黑客将 MAG 的安全失误描述为“悲喜剧”。
他们声称,MAG 在其曼彻斯特、斯坦斯特德和东米德兰兹三个机场网站的前端 JavaScript 中,暴露了用于营销自动化平台 Iterable 的过度授权 API 密钥。
赫尔姆利用互联网档案馆(Internet Archive)的 Wayback Machine 检索了该 JavaScript 的旧版本,发现这三个密钥首次出现在机场网站上是在 2022 年 6 月和 7 月。他说,这些相同的值一直暴露到 2026 年 8 月。“反过来阅读时间线情况会更糟,”赫尔姆说。
“在 2022 年 6 月到 2026 年 8 月之间的任何一天,任何查看该页面源码的人都可以拿走这个密钥。FulcrumSec 只是碰巧告诉我们的那一个。
从外部无法知道还有谁这样做过,坦率地说,如果 MAG 不去翻阅长达四年的 Iterable API 日志(假设他们甚至保留了四年的 Iterable API 日志),他们自己也无法知道。”
赫尔姆解释说,API 密钥并没有直接嵌入在 HTML 中,但任何检查网站加载的 JavaScript 包的人都能找到它们。
这就解释了为什么这个漏洞能在机场 IT 团队的眼皮底下四年多未被发现。
赫尔姆表示,浏览器交付的代码一直在使用这些密钥来授权服务器端的 API 操作——Iterable 的文档明确警告过不要这样做。
请求本应通过 MAG 自己的服务器,这样凭据就可以保密并限制访问。MAG 被指泄露凭据并不是唯一的问题。
赫尔姆说,这些密钥对于其原本用于将页面点击归因于营销电子邮件的任务来说,权限过大。
这些密钥对核心 Iterable 端点拥有读/写访问权限,使任何获得它们的人都能够访问客户资料、停车和贵宾室预订以及快速通道购票等数据。
赫尔姆表示,被盗数据的结构和内容表明它们是从 Iterable 导出的。
他还发现,这些密钥可以访问能够删除客户记录和列表或重写资料的端点。
“没有迹象表明 FulcrumSec 做了这些,我很高兴,但他们本可以从空中彻底摧毁一切,那 MAG 就真的惨了,”赫尔姆说。
“整整四年里,删除曼彻斯特机场集团数据库的能力只需点击‘查看源码’就能获取。这不仅是机密性泄露。
这也是一次巨大的完整性和可用性泄露,而 MAG 只是运气好。他们现在怎么能信任数据库中剩下的任何数据呢?”
MAG 在披露该事件时,将网络攻击描述为“sophisticated”(老练的/复杂的),并称这是一次“黑客攻击,而不是失误”。该公司拒绝就赫尔姆的结论发表评论。
MAG 正在与信息专员办公室(ICO)一起继续调查,并支持国家打击犯罪局(NCA)的调查。
据了解,MAG 坚称自己是一起犯罪的受害者,并对赫尔姆“无需黑客攻击”的定性提出了异议。
FulcrumSec 于 9 月 2 日发布了该公司的数据,此时距离 MAG 确认拒绝支付赎金已过去一周。据 ICO 称,该团伙的勒索金额低于网络罪犯通常的要求。