Polymarket是一个基于加密货币的预测市场平台,它因一次来自外部供应商的攻击暂停交易约一小时。据Hudson Rock的研究人员称,约250万美元被盗。恶意代码托管在DebugBear的基础设施上,这是一项用于监测网站性能的服务。即使你不使用加密货币,这起事件也值得关注,因为它说明了一段外部脚本被嵌入网站后可能带来多大的代价。
在进入事件细节之前,先了解几个术语。预测市场是一种人们对现实事件结果下注的平台。钱包是保存加密货币的数字钱包。POL是Polygon区块链的加密货币。RUM即真实用户监控(Real User Monitoring),指从访客浏览器中收集网站性能数据的JavaScript脚本。C2是命令与控制服务器,恶意软件借此接收指令。
Polymarket发生了什么?
根据Punto Informatico的梳理,平台状态页面显示,调查于19点05分启动,起因是中继器(relayer)操作中断。平台随即启用了“仅取消”模式,用户只能撤销订单。大约半小时后,Polymarket表示已发现并解决问题,但出于谨慎仍暂停了运营。
据BleepingComputer报道,公司称“One of our third party providers was compromised, and we have referred this to relevant law enforcement”。公司还表示,受影响的用户将获得退款。交易在首次暂停约一小时后恢复。
此次问题涉及的是国际版平台。据Wired,面向美国的Polymarket US没有受到影响。Wired还称,被攻破的供应商总部位于英国,英国当局已收到通报。
这段恶意脚本是如何运作的?
Hudson Rock发现了一段恶意JavaScript,它从DebugBear基础设施上的一个地址分发。Polymarket网站将该脚本作为RUM服务的一部分加载,因此代码在用户的浏览器中运行。据Punto Informatico介绍,当受害者登录自己的账户时,脚本会检查钱包余额,并将加密货币转给犯罪分子。
BleepingComputer分析了该文件的一份副本,对其行为作了更详细的描述。
- 检查访客是否已登录Polymarket,并尝试利用已通过身份验证的会话。
- 查看余额和持仓,估算资金价值。
- 在某些情况下自动卖出持仓,在另一些情况下直接把代币转到攻击者的钱包。
- 利用平台已有的交易功能,尝试把加密货币兑换为可转移的资产。
该脚本还与DebugBear的一台服务器通信,以接收指令并回传账户、地址和操作结果等数据。BleepingComputer认为,同一基础设施既用于分发又用于C2,这引发了人们对攻击者究竟掌握了多少公司系统访问权限的疑问。
究竟被盗了多少?
各方数字互不一致,Polymarket也没有确认任何一个数字。以下的计算是我们的整理,只是将各方数据并列呈现。
- Hudson Rock称约有2860万枚POL,价值约257万美元,Punto Informatico和BleepingComputer均有引用。
- BleepingComputer报道,在Hudson Rock调查期间,可疑钱包中约有219万美元。
- 据Wired报道,分析公司Bubblemaps估计约有700名用户受影响,被盗金额约270万美元。
Wired就此联系了Polymarket,但公司没有透露有多少交易者受到影响,也没有说明损失金额。公司重申,将向受影响的用户退款。
第三方脚本为何存在风险?
原因很简单,外部脚本在访客的浏览器中拥有与你的网站相同的权限。一旦提供者被攻破,代码就会在你没有改动任何一行的情况下发生变化。这项服务原本只用于监测性能,但一旦它被篡改,就能够在已登录的会话中采取行动。
DebugBear已在X平台上确认了此次事件,据BleepingComputer称,该公司还建议客户从自己的网站上移除RUM代码。用它自己的话说,“We're impacted by an ongoing security incident”。Hudson Rock的研究人员还发现了Polymarket自己的一条提交记录,内容为chore(polymarket) remove debugbear rum script,这表明该集成是在公告发布前不久被移除的。
这个话题与我们在报道意大利中小企业与自动化攻击时讨论的问题相同。即使不是动辄数十亿美元的大平台,也同样存在暴露在外的攻击面。
需要注意的局限
- Polymarket没有说明受影响的用户数量、被盗金额,也没有说明退款将如何进行。
- Polymarket没有提及供应商的名称。DebugBear的身份来自Hudson Rock的分析以及该公司自己的确认。
- 意大利和美国信源给出的时间使用不同的时区,我们没有进行换算。因此,我们仍以暂停约一小时这一数据为准。
- 攻击者身份不明,我们也不清楚他们是如何攻破DebugBear的。
- BleepingComputer称已联系两家公司但未获回复,因此这份梳理之后可能有所改变。
- Punto Informatico指出,该平台按理说在意大利无法访问。
对数字行业从业者意味着什么
首先是实际影响。凡是粘贴到网站中的代码片段,无论是分析、聊天、监测还是广告,都应当被视为你可能无法完全掌控的代码。如果网站涉及登录、支付或个人数据,这段代码就能接触到用户在页面上看到的一切。
对于开发者而言,风险是双重的。一方面是用户的安全,另一方面是对客户的责任,因为客户不会区分代码是自己写的还是供应商提供的。网上商店和管理系统同样有登录页面,因此这一逻辑远不止适用于加密货币。负责经营网上商店的人,应当清楚自己在购物车和结账页面加载了哪些脚本。
其次是速度。从移除脚本到恢复运营,只用了大约一小时。提前编写好切断受损供应商的操作流程,可以节省非常宝贵的时间。
我们的看法
这个案例的启示在于,它的失误并不惊人。性能监测服务看起来无害,正因为如此,没有人会对它保持警惕。然而,为了正常运行,它必须在所有访客的浏览器中运行。仔细想想,粘贴一行代码的便利,是以一种很少有人会停下来评估的访问权限为代价的。
就应对时效而言,Polymarket的做法值得肯定,它暂停了运营、移除了脚本,并承诺退款。相比之下,其沟通方式就没那么令人信服了。公司没有点名供应商,也没有说明有多少用户受影响,而是把核算工作留给了Hudson Rock和Bubblemaps。Wired还提到此前另一起造成超过200万美元损失的入侵事件,两起类似事件的出现更像是流程问题,而非运气不好。对企业来说,道理同样适用。正如我们此前跟进过的其他案例所示,风险恰恰来自那些被视为理所当然的边界。
常见问题
Polymarket是被直接黑掉的吗?
不是,据各方信源,攻击是通过外部供应商进行的。Wired提到的是一家被攻破的英国供应商,而不是平台本身的网站。不过,恶意代码确实在Polymarket的页面中运行。
究竟被盗了多少?
没有官方数字。Hudson Rock给出约257万美元,Bubblemaps给出约270万美元,并估计约有700名用户受影响。Polymarket尚未确认这些数字。
用户会获得退款吗?
据Polymarket称会。该公司表示将为所有受影响的交易者退款,但尚未说明具体流程如何运作。
DebugBear是什么?
它是一家网站性能监测服务商。其RUM产品使用JavaScript从访客浏览器中收集指标。该公司已确认此次事件,并要求客户移除相关代码。
如果我的网站使用了外部脚本,该如何防范?
梳理网站上的所有脚本,移除不必要的部分。在涉及登录和支付的页面上限制第三方供应商的使用。提前准备好能够快速断开这些供应商的流程。
未来几个月需要关注什么
接下来仍需关注司法机关的调查、DebugBear的说明以及Polymarket的退款进展。与此同时,你可以从三个方面着手。
- 列出网站加载的每一个外部脚本,并确认它们是否仍然需要,尤其是在受限区域中的脚本。
- 保持服务器和组件更新,也可以选择带安全更新的托管主机,并关注供应商发出的安全公告。
- 明确谁可以在几分钟内移除某个集成,以及具体怎么操作,避免在事故发生时临时摸索。如果你有定制应用,应在项目阶段就与软件开发团队一同考虑这一问题。
想了解自动化如何改变风险格局,可以阅读我们关于自主黑客对中小企业意味着什么的深度文章。




