FunnelKit (Funnel Builder) 安全通知
如果您收到我发来的邮件,指引您访问本页面,那是因为您的网站似乎正在运行存在漏洞版本的
Funnel Builder by FunnelKit(WordPress 插件 funnel-builder,也列为
Funnel Builder for WooCommerce Checkout)。本页面将说明这为何重要以及如何修复。
本通知涉及 CVE-2026-47100,这是一个严重、正被积极利用的缺陷(CVSS 8.7), 它允许攻击者 无需登录即可将自己的 JavaScript 注入您的结账页面。它影响 3.15.0.3 之前的所有版本,并已在 3.15.0.3 中修复。如果您正在运行受影响的版本, 请尽快 将 Funnel Builder 升级到 3.15.0.3 或更高版本。由于这个缺陷正被用来窃取 支付卡信息,您还应当 检查您的结账页面是否被注入了代码(见下方如果您曾使用受影响的版本)。
这是一个 插件 缺陷,而不是 WordPress 核心的缺陷。如果 Funnel Builder 插件本身过时, 那么即便是完全最新的 WordPress 和 WooCommerce 也 无法 保护您。
这条消息是否可信?
是的。这是一份来自独立安全研究人员的善意、负责任披露通知。我 不会 向您索要金钱、 密码或对您站点的访问权限,也 没有 试图入侵它、上传任何东西或利用任何漏洞。
我所做的一切,只是查看您的网站向每一位访问者提供的公开可见文件(就像您的主页是公开的一样),
并记录 Funnel Builder 插件在这些文件中公布的版本号:它公开的 readme.txt,以及 WordPress
盖在该插件前端资源上的版本标记。我特意 没有 触碰那个存在漏洞的结账功能,而且这项检查
完全不涉及您的数据、您的后台管理区域,或您站点的任何私密部分。
如果您想核实我的身份,请查看本页底部的联系方式以及关于页面。
为什么这很重要
Funnel Builder by FunnelKit 是 WooCommerce 商店广泛使用的一款销售漏斗与结账插件。在受影响的 版本中,一个公开的结账接口 无需登录、也无需任何安全令牌 即可被访问,而且它可以被用来写入 该插件全局的 “External Scripts”(外部脚本)设置,也就是向每一个结账页面注入脚本的那个设置。 这种组合使得远程攻击者能够将 自己的 JavaScript 放到您的结账页面上,而您的顾客正是在那里 输入他们的姓名、地址和 支付卡信息。
这正是典型的 网页窃取 / Magecart 手法:被注入的脚本悄悄复制购物者输入的内容并发送给 攻击者,与此同时您的结账流程照常运作,因此看不出任何异样。安全公司 Sansec 报告该缺陷 正 在真实环境中被积极利用,其窃取代码常被 伪装成 Google Tag Manager 或某段分析代码片段, 从而混入其中。
该缺陷被评为 满分 10 中的 8.7(高危)。如果我的邮件引用了这个问题,那意味着您站点报告的 版本落在受影响的范围之内。我并没有测试您的具体站点是否可被利用或是否已被入侵,只是确认它 报告了一个受影响的版本。
好消息:更新到已修复的版本可以堵上这个漏洞,而且更新过程很简单。
如何检查您的版本
您不必仅凭我的说法来判断自己运行的是哪个版本。
从公开清单查看(无需登录): 在浏览器中打开
yourdomain.com/wp-content/plugins/funnel-builder/readme.txt。顶部附近的
Stable tag: 这一行是您的 Funnel Builder 安装所报告的版本,而这正是我读取的那个公开文件。
从 WordPress 后台管理区域查看(如果您有访问权限):
- 登录您的 WordPress 仪表盘(通常位于
yourdomain.com/wp-admin)。 - 前往 Plugins 然后 Installed Plugins。
- 找到 Funnel Builder(它可能显示为 Funnel Builder for WooCommerce 或 FunnelKit), 并记下其名称下方显示的版本。
如果版本 低于 3.15.0.3,说明您使用的是受影响的版本,应当更新。3.15.0.3 及更高版本 已修复。
如何升级
最安全的做法是通过 WordPress 自身进行更新,并事先做好备份:
- 在做出更改之前 备份您的站点(文件和数据库)。大多数主机服务商都提供一键备份, 或者使用 WordPress 备份插件。
- 在 WordPress 后台,前往 Dashboard 然后 Updates,或 Plugins 然后 Installed Plugins。如果列出了 Funnel Builder 更新,就从这里安装它。
- 如果没有出现更新,您可以直接从该插件在 WordPress.org 目录上的页面获取最新版本, Funnel Builder by FunnelKit, 并通过 Plugins 然后 Add New Plugin 然后 Upload Plugin 进行更新。
- 更新后,按照上述步骤确认新的版本号(3.15.0.3 或更高),并检查您的结账页面能否正常加载 并顺利完成一笔测试订单。
既然您已经在处理这些,不妨顺便确认 WordPress 核心、WooCommerce 以及您的其他插件是否 都是最新的,因为同样的原则适用于所有这些组件。
如果您曾使用受影响的版本
由于这个缺陷正被用来植入窃取支付信息的脚本,曾运行受影响版本的商店不应认为仅仅更新就足够了。 更新会移除该漏洞,但它 不会 移除攻击者可能已经注入的任何脚本。您(或您的网站管理员) 应当在 您自己的 站点上检查这一点:
- 检查该插件的 “External Scripts” 设置。 在 FunnelKit / Funnel Builder 的设置中, 查看任何应用于结账的全局页眉/页脚或 “External Scripts” 条目,并移除任何您并非自己添加的内容, 尤其是 那些声称是 Google Tag Manager、分析工具或像素代码、但您并未配置过的脚本。
- 查看结账页面的源代码。 在浏览器中加载您自己的结账页面,查看页面源代码,并留意任何您
不认识的外部
<script>,特别是从陌生域名加载的那些。窃取程序被设计得就像普通的分析代码一样。 - 留意欺诈迹象。 如果在顾客向您下单之后,顾客报告支付卡欺诈 的情况出现无法解释的上升, 那强烈表明曾有窃取程序在活动。
如果您发现了被注入的代码,请将商店视为已被入侵:移除那段流氓脚本,更换您的凭据 (WordPress 后台、数据库、主机面板,以及任何支付网关 API 密钥),并且由于顾客的卡信息 可能已经泄露,请 通知您的支付处理机构 并遵循他们的指引,其中可能包括依据 PCI-DSS 或 当地法律所要求的顾客通知义务。作为预防措施,还请检查您的 管理员账户,看看是否有任何 您不认识的账户。如果您的组织有 IT 安全团队,请让他们参与进来。
我想说明清楚:我 没有 就上述任何指标检查过您的站点,也不知道您的站点是否受到影响。 此列表列在此处,是为了让您可以自行检查。
我没有网站管理员 / 我遇到了困难
如果您不是维护站点的人,请将本页面转发给负责维护的人(您的网页开发者、代理机构或主机服务商)。 他们会很快认出上述步骤。
如果您自己维护站点却遇到了困难,我很乐意免费帮您指明正确的方向。请使用下方的联系方式与我联系。
联系方式
Evan Harris,安全研究员
- 电子邮件:security@mail.mcpsec.dev
- X:@Evan__Harris
- GitHub:eharris128
- LinkedIn:Evan Harris
我就此类问题主动联系,纯粹是为了帮助运营者保护他们的站点。如果您希望不再被联系, 只需告诉我,我会予以尊重。
参考资料
官方通告与追踪
厂商 / 插件
报道与分析