CVE-2025-14844

Membership Plugin – Restrict Content <= 3.2.16 - Missing Authentication to Insecure Direct Object Reference and Sensitive Information Exposure

2026-01-15 20:39
andrea bocchetti

Strategic Overview

Status
Patched in 3.2.17
Affected Version
<= 3.2.16
CVSS
8.2High
Weakness type
CWE-639 · Authorization Bypass Through User-Controlled Key
CVE
CVE-2025-14844
View all Membership Plugin – Kadence Memberships vulnerabilities

At a glance

CVE-2025-14844 is a high-severity Authorization Bypass Through User-Controlled Key vulnerability in the Membership Plugin WordPress plugin, affecting versions <= 3.2.16. It carries a CVSS score of 8.2 (reachable over the network; low attack complexity; high confidentiality impact). Exploitation requires no authentication. The issue is fixed in version 3.2.17; sites on affected versions should update now. Disclosed January 2026, reported by andrea bocchetti.

Vulnerability Overview

The Membership Plugin – Restrict Content plugin for WordPress is vulnerable to Missing Authentication in all versions up to, and including, 3.2.16 via the 'rcp_stripe_create_setup_intent_for_saved_card' function due to missing capability check. Additionally, the plugin does not check a user-controlled key, which makes it possible for unauthenticated attackers to leak Stripe SetupIntent client_secret values for any membership.

Technical Analysis

The vector marks this flaw as remotely reachable over the network, with low attack complexity — no special timing or configuration is needed, and no privileges on the target site, and no interaction from a victim user. A successful exploit has high impact on confidentiality.

CWE-639: Authorization Bypass Through User-Controlled Key

Membership Plugin <= 3.2.16 carries this weakness at rcp_stripe_create_setup_intent_for_saved_card, and reaching it takes a caller who can reach the endpoint. Authorization bypass through a user-controlled key, often called insecure direct object reference, means the application looks up a record by an identifier from the request without checking that the caller owns it.

Changing a number in the request is enough to read or modify other users' records, which on commerce and membership sites means customer data. For Membership Plugin the fix is 3.2.17: builds <= 3.2.16 are affected, anything from 3.2.17 onward is not.

Remediation

Update to version 3.2.17, or a newer patched version

How does WordSec protect against this?

Because it turns on account access, WordSec's login security is the relevant layer: role-based two-factor, captcha and brute-force limits raise the cost of getting the account this needs. None of that substitutes for the fix: Membership Plugin 3.2.17 closes this, and updating the plugin is the step that ends it.

  • Login Security
  • Alerts

External References

Related records

Vulnerability data © Defiant, Inc., provided under the Wordfence Intelligence T&C