CVE-2025-13540

9.8 CRITICAL

📋 TL;DR

The Tiare Membership WordPress plugin has a privilege escalation vulnerability that allows unauthenticated attackers to register accounts with administrator privileges. This affects all WordPress sites using Tiare Membership plugin versions 1.2 and earlier. Attackers can gain full administrative control of vulnerable WordPress installations.

💻 Affected Systems

Products:
  • Tiare Membership WordPress Plugin
Versions: All versions up to and including 1.2
Operating Systems: All operating systems running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Affects WordPress installations with the Tiare Membership plugin active and user registration enabled.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete site takeover - attackers gain administrator access, can install backdoors, deface the site, steal data, or use the site for further attacks.

🟠

Likely Case

Site compromise with administrative access leading to content manipulation, plugin/themes installation, or credential theft.

🟢

If Mitigated

No impact if plugin is disabled or patched, or if registration functionality is disabled.

🌐 Internet-Facing: HIGH - WordPress sites are typically internet-facing and the exploit requires no authentication.
🏢 Internal Only: LOW - This primarily affects internet-facing WordPress installations.

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Simple HTTP POST request to registration endpoint with administrator role parameter.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Version after 1.2 (check plugin repository for latest)

Vendor Advisory: https://themeforest.net/item/tiare-wedding-vendor-directory-theme/26589165

Restart Required: No

Instructions:

1. Update Tiare Membership plugin to latest version. 2. Verify plugin is updated to version after 1.2. 3. Test user registration functionality.

🔧 Temporary Workarounds

Disable User Registration

all

Disable user registration in WordPress settings to prevent exploitation.

WordPress Admin > Settings > General > Membership: Uncheck 'Anyone can register'

Disable Tiare Membership Plugin

all

Temporarily disable the vulnerable plugin until patched.

WordPress Admin > Plugins > Tiare Membership > Deactivate

🧯 If You Can't Patch

  • Implement web application firewall (WAF) rules to block registration requests with administrator role parameter
  • Monitor user registration logs for suspicious administrator account creation

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin > Plugins > Tiare Membership version. If version is 1.2 or earlier, you are vulnerable.

Check Version:

WordPress Admin > Plugins > Tiare Membership shows version number

Verify Fix Applied:

After update, verify plugin version is greater than 1.2. Test registration functionality with administrator role parameter - should be rejected.

📡 Detection & Monitoring

Log Indicators:

  • User registration logs showing administrator role assignment
  • New administrator account creation from unknown IPs
  • POST requests to /wp-json/tiare-membership/v1/register with role=administrator

Network Indicators:

  • HTTP POST requests to registration endpoints with administrator role parameter
  • Unusual user registration traffic

SIEM Query:

source="wordpress" AND (uri_path="/wp-json/tiare-membership/v1/register" AND method="POST" AND (form_data CONTAINS "role=administrator" OR json CONTAINS "\"role\":\"administrator\""))

🔗 References

📤 Share & Export