Critical WordPress WooCommerce Plugin Flaw Allows Full Account Takeover Without Login

CVE-2025-10484 is a critical authentication bypass vulnerability affecting a WordPress plugin used for mobile-number-based registration and login with WooCommerce.
The flaw allows unauthenticated attackers to establish a valid WordPress session without proving ownership of any account, including administrator accounts.

This issue is particularly dangerous because it does not require brute force, leaked credentials, or user interaction. A single crafted request can be enough to gain access.


Affected Component

  • WordPress plugin: Registration & Login with Mobile Phone Number for WooCommerce
  • Affected versions: All versions up to and including 1.3.1
  • Attack vector: Remote / Network
  • Authentication required: None

Root Cause Analysis

The vulnerability exists due to improper authentication enforcement during session creation.

Internally, the plugin exposes a PHP function responsible for creating WordPress sessions for users logging in via mobile number. This function:

  • Accepts user-controlled parameters (such as user ID or phone number)
  • Fails to validate authentication state
  • Does not verify OTP ownership or login context
  • Directly calls WordPress session-initialization logic

As a result, an attacker can invoke the session-creation logic directly, skipping all intended login checks.

In short:

The plugin trusts client input when it should strictly validate server-side identity.


Attack Scenario (Educational Use Only)

The following explanation is for defensive understanding and detection design only.

High-Level Exploitation Flow

  1. Attacker identifies a WordPress site using the vulnerable plugin
  2. Attacker sends a crafted HTTP request to the plugin’s exposed endpoint
  3. The request includes a target user identifier (often admin user ID = 1)
  4. The plugin:
    • Does not check authentication
    • Creates a valid WordPress session
  5. Attacker receives authenticated cookies
  6. Attacker gains full dashboard access

Why This Is Severe

  • No password guessing
  • No OTP interception
  • No race condition
  • Works even if strong passwords and MFA are configured
  • Can lead to full site takeover in seconds

Real-World Impact

If exploited, an attacker can:

  • Log in as administrator
  • Install malicious plugins or themes
  • Create hidden admin users
  • Modify WooCommerce payment settings
  • Inject JavaScript skimmers
  • Deface or redirect the website
  • Exfiltrate customer and order data
  • Establish persistence via scheduled tasks or backdoors

For e-commerce sites, this can lead to financial fraud, data breaches, and compliance violations.


Exploitation Indicators (What to Look For)

WordPress-Level Indicators

  • Admin logins without:
    • Corresponding password authentication
    • OTP validation
  • Login timestamps that do not align with normal user behavior
  • New admin users created shortly after suspicious requests
  • Sudden plugin or theme installations

Technical Detection Rules

1. Web Server Log Detection (Apache / Nginx)

Look for unauthenticated POST requests targeting plugin endpoints followed by admin access.

Example patterns:

POST /wp-admin/admin-ajax.php
POST /wp-content/plugins/*/includes/*.php
POST /?wc-ajax=*

Suspicious traits:

  • No prior login
  • No valid nonce
  • Immediate Set-Cookie: wordpress_logged_in_*

2. WAF Detection Logic (Generic Pseudocode)

IF request.uri CONTAINS "/wp-content/plugins/"
AND request.method == POST
AND request.body CONTAINS "user_id"
AND NOT session.authenticated
THEN block + alert

3. SIEM Correlation Rule

Rule: WordPress Session Creation Without Login

Condition:
- HTTP 200 from plugin endpoint
- Followed by authenticated request to /wp-admin/
- No wp-login.php event before session creation
- Same source IP

Severity: Critical

4. WordPress Database Monitoring

Watch for:

  • Sudden updates to wp_usermeta:
    • session_tokens
  • Login cookies created without:
    • wp-login.php access logs

Proof of Concept Availability

  • As of now, public weaponized exploits are not widely distributed
  • However, the vulnerability is trivial to exploit
  • Any attacker with basic WordPress knowledge can recreate it

This makes early detection and mitigation critical, even without public exploit code.


Mitigation & Remediation

Immediate Actions

  1. Disable the plugin immediately if still installed
  2. Rotate all administrator credentials
  3. Invalidate all active WordPress sessions
  4. Review users for unauthorized admin accounts
  5. Check for malicious plugins, themes, and scheduled tasks

Patch / Upgrade

Update to the patched version released by the plugin author:

🔗 Official plugin update page:
https://wordpress.org/plugins/

(Ensure the installed version is higher than 1.3.1)


Hardening Recommendations

  • Enforce server-side MFA that cannot be bypassed by plugins
  • Restrict admin-ajax.php access where possible
  • Use a WordPress-aware WAF
  • Monitor session creation events, not just login attempts
  • Minimize use of authentication-related plugins

Final Notes

CVE-2025-10484 is a textbook example of why authentication logic should never rely on client-side trust or plugin shortcuts.
Even well-intentioned convenience features can introduce catastrophic risk when security boundaries are crossed.