CVE-2026-114452 in Membership Plugininfo

Summary

by MITRE • 11/15/2026

The Membership Plugin WordPress plugin before 4.0.6 does not verify that the membership referenced in a saved-card payment request belongs to the user making it, allowing subscriber-level members to disclose another member's Stripe payment client secret and attach a payment method of their choosing to another member's pending payment.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Analysis

by VulDB Data Team • 11/15/2026

The vulnerability identified in WordPress Membership Plugin versions prior to 4.0.6 represents a critical failure in server-side object reference validation within the plugin’s integration with the Stripe payment gateway. This flaw specifically affects the workflow for saving credit card information, which is a common feature in membership sites that require recurring billing or one-time payments from subscribers. The core technical issue lies in the lack of authorization checks when processing requests to associate a new payment method with an existing pending transaction. When a user initiates a request to save a card via Stripe’s client-side library, the plugin accepts parameters indicating which member account should be associated with this specific payment intent or subscription update. However, the backend logic fails to verify that the membership ID provided in the request actually corresponds to the authenticated session of the current user making the API call. This absence of ownership verification allows an attacker who is logged into their own low-privilege subscriber account to manipulate these parameters and target arbitrary member IDs within the database.

From a technical perspective, this vulnerability enables two distinct but related malicious actions: information disclosure and unauthorized resource manipulation. First, by crafting specific requests that reference other users' pending payment intents, an attacker can retrieve sensitive Stripe client secrets associated with those members. These secrets are temporary tokens used to securely transmit payment details from the browser to the server without exposing full card numbers directly in URLs or logs. While these tokens have a short lifespan and require additional data to be useful for actual charges, their exposure compromises the confidentiality of the authentication flow for other users. Second, and more severely, the attacker can attach any valid Stripe payment method they control—such as a credit card belonging to themselves or another compromised source—to another member’s pending order. This effectively allows an adversary to hijack transactions intended for legitimate members, potentially leading to fraudulent charges being applied to victims who did not authorize them, or allowing attackers to complete purchases using stolen financial instruments under the guise of other users.

The operational impact of this vulnerability extends beyond simple data leakage into significant financial and reputational risks for both site administrators and their user base. For end-users, the primary concern is the potential for unauthorized charges on their credit cards if an attacker successfully attaches a compromised payment method to a pending order that gets processed automatically or manually by staff. Even in cases where no immediate charge occurs, the exposure of client secrets undermines trust in the platform’s security posture and may violate data protection regulations such as GDPR or PCI DSS requirements regarding the handling of sensitive authentication credentials. For site owners, this flaw can result in financial loss through disputed charges, increased fraud detection costs, and damage to brand credibility. Furthermore, because the vulnerability relies on standard HTTP requests that any logged-in user can generate, it is relatively easy for automated bots to exploit at scale, potentially affecting hundreds or thousands of members simultaneously without triggering typical anomaly-based intrusion detection systems.

This flaw aligns with CWE-284 Improper Access Control and specifically CWE-639 Authorization Bypass Through User-Controlled Key, as the application fails to ensure that users are authorized to perform actions on resources they do not own. In terms of offensive security frameworks, this behavior is consistent with MITRE ATT&CK technique T1078 Valid Accounts, where an attacker uses legitimate credentials to access unauthorized resources, and potentially T1539 Steal Web Session Cookie if the client secret exposure leads to session hijacking in conjunction with other vulnerabilities. To mitigate this risk, administrators must immediately upgrade the Membership Plugin to version 4.0.6 or later, which implements proper ownership verification checks before processing payment method associations. Additionally, it is advisable to review server logs for any signs of exploitation during the window when vulnerable versions were active, looking for unusual patterns in Stripe API calls originating from subscriber-level accounts that reference member IDs different from their own. Implementing strict input validation and ensuring all financial operations enforce multi-factor authorization checks can further harden the system against similar logic flaws in future updates or third-party integrations.

Responsible

WPScan

Reservation

10/21/2026

Disclosure

11/15/2026

Moderation

accepted

CPE

ready

EPSS

0.00000

KEV

no

Activities

very low

Sources

Interested in the pricing of exploits?

See the underground prices here!