我们发布此公告是为了提醒 WooCommerce 社区,WooCommerce 8.8.0 及更高版本中存在一个跨站脚本攻击 (XSS) 漏洞,这是通过我们持续的主动安全测试过程中发现的。我们已经发布了补丁。
这个问题出现在包含注册和经典结账的页面上,允许向页面注入 HTML 和 JavaScript 。我们已经发布了 WooCommerce 8.9 的补丁版本,并将修复回溯到 WooCommerce 8.8 。此修复也将包含在 WooCommerce 9.0 中。如果您正在运行 WooCommerce 8.8.0 或更高版本,我们强烈建议您尽快更新。
问题概述
WooCommerce 8.8 中引入的一个漏洞允许跨站脚本攻击 (XSS)——这是一种攻击方式,恶意行为者可以操纵链接以在页面上包含恶意内容,例如 JavaScript 。虽然这些内容不会被保存到数据库中,但这些链接可能会被发送给受害者用于恶意目的。
详情
- 在 WooCommerce 8.5 中,我们发布了订单归因功能 (Order Attribution feature)。这个可选功能使用 Sourcebuster.js 库读取流量来源数据。
- 在 WooCommerce 8.8 中,我们修改了该功能的客户端部分的实现方式。此更改使用 Sourcebuster 收集的数据来构造可以与注册和经典结账表单一起提交的输入字段。因此,这导致了一个漏洞,允许攻击者向页面注入代码。
如何判断这是否影响我?
要确定您的 WooCommerce 安装是否易受攻击,请检查您正在运行的 WooCommerce 版本。如果您的商店运行的是 WooCommerce 8.8 或更高版本,并且启用了订单归因 (Order Attribution),您的商店就会受到此问题的影响。 需要注意的是,这些版本的 WooCommerce 默认启用了订单归因功能。
我们正在采取的措施
我们已经采取了以下预防措施:
- 补丁开发:已经开发了补丁来解决此问题,并已回溯到 WooCommerce 8.8 和 8.9 。
接下来,我们将进行全面的回顾,找出可以避免这种情况的方法。
我应该采取什么行动?
如果您受到此问题的影响,您应立即采取以下措施之一:
- 更新到 WooCommerce 8.9.3 或回溯版本 8.8.5 。虽然修复也包含在 WooCommerce 9.0 中,但我们不建议等待。您可以使用以下链接下载它们:
- WooCommerce 8.9.3 (zip)
- WooCommerce 8.8.5 (zip)
- 如果您无法立即更新,您应该禁用订单归因。此漏洞仅在启用订单归因时才可能被利用。禁用订单归因是一个好的临时修复,但我们强烈建议您定期升级 WooCommerce 。
感谢
感谢 ecaron 通过我们的 HackerOne 漏洞赏金计划报告此漏洞。我们感谢您的披露。
发表回复