CVE-2025-10003

6.5 MEDIUM

📋 TL;DR

This vulnerability allows unauthenticated attackers to perform time-based SQL injection attacks against WordPress sites using the UsersWP plugin. Attackers can extract sensitive database information by manipulating the 'htmlvar' parameter. All WordPress sites with UsersWP plugin versions up to 1.2.44 are affected.

💻 Affected Systems

Products:
  • UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WordPress
Versions: All versions up to and including 1.2.44
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: All WordPress installations with the vulnerable plugin version are affected regardless of configuration.

⚠️ 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 database compromise including user credentials, personal data, and administrative access leading to site takeover.

🟠

Likely Case

Extraction of sensitive user data (emails, hashed passwords, personal information) and potential privilege escalation.

🟢

If Mitigated

Limited information disclosure if database permissions are properly restricted and sensitive data is encrypted.

🌐 Internet-Facing: HIGH - Unauthenticated exploitation makes this easily accessible to any internet user.
🏢 Internal Only: LOW - The vulnerability requires web-facing access to exploit.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: MEDIUM

Time-based SQL injection requires careful timing and may be detectable by monitoring tools.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 1.2.45 or later

Vendor Advisory: https://plugins.trac.wordpress.org/log/userswp/

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find UsersWP plugin. 4. Click 'Update Now' if available. 5. If not, download latest version from WordPress repository and manually update.

🔧 Temporary Workarounds

Disable vulnerable functionality

all

Temporarily disable file upload removal functionality if not critical

Web Application Firewall rule

all

Block requests containing suspicious SQL patterns in htmlvar parameter

🧯 If You Can't Patch

  • Deploy a web application firewall (WAF) with SQL injection protection rules
  • Restrict access to affected endpoints using IP whitelisting or authentication

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin panel → Plugins → UsersWP version number

Check Version:

wp plugin list --name=userswp --field=version

Verify Fix Applied:

Verify plugin version is 1.2.45 or higher and check the patched code in upload_file_remove function

📡 Detection & Monitoring

Log Indicators:

  • Unusual long-running database queries
  • Multiple requests with htmlvar parameter containing SQL keywords
  • 429 or 500 errors from upload_file_remove endpoint

Network Indicators:

  • Repeated POST requests to /wp-admin/admin-ajax.php with htmlvar parameter
  • Unusual timing patterns in requests (time-based injection)

SIEM Query:

source="web_logs" AND (uri="/wp-admin/admin-ajax.php" AND parameters CONTAINS "htmlvar" AND parameters MATCHES "(?i)(sleep|benchmark|waitfor)")

🔗 References

📤 Share & Export