CVE-2025-14844WordPress的Restrict Content插件(Membership Plugin – Restrict Content)在3.2.16及之前的所有版本中存在严重的安全漏洞。该漏洞位于Stripe支付集成的`rcp_stripe_create_setup_intent_for_saved_card`函数中,由于缺少适当的认证检查和能力验证,攻击者可以在无需任何身份验证的情况下调用该函数。更为严重的是,该函数不验证用户控制的密钥参数,导致未认证的远程攻击者能够构造恶意请求,获取任意会员的Stripe SetupIntent client_secret值。这些敏感信息一旦泄露,攻击者可以利用它们进行欺诈性支付操作或其他恶意活动。该漏洞无需用户交互即可被利用,且可通过网络远程触发,对使用该插件的所有WordPress站点构成严重威胁。
该漏洞的核心问题在于`rcp_stripe_create_setup_intent_for_saved_card`函数缺少WordPress capability检查。在正常的WordPress安全实践中,涉及用户数据和敏感操作的函数应当使用`current_user_can()`等函数验证当前用户权限。然而,该函数直接处理Stripe SetupIntent的创建请求,且不验证请求中传递的密钥是否属于合法用户。攻击者只需构造一个HTTP请求,指定目标用户ID和相应的Stripe密钥参数,即可触发SetupIntent的创建并获取client_secret返回值。由于Stripe SetupIntent的client_secret可用于完成支付设置流程,攻击者获取后可能进行未经授权的支付操作或会员订阅欺诈。漏洞代码位于plugins.trac.wordpress.org的functions.php第848行和第987行附近,修复版本3.2.17已添加必要的认证检查和密钥验证逻辑。