CVE-2024-1990

8.8 HIGH

📋 TL;DR

This vulnerability allows authenticated attackers with contributor-level access or higher to perform blind SQL injection attacks via the 'id' parameter in the RegistrationMagic WordPress plugin. Attackers can extract sensitive information from the database by injecting malicious SQL queries. All WordPress sites using vulnerable versions of the RegistrationMagic plugin are affected.

💻 Affected Systems

Products:
  • RegistrationMagic - Custom Registration Forms, User Registration, Payment, and User Login plugin for WordPress
Versions: All versions up to and including 5.3.1.0
Operating Systems: All operating systems running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires authenticated user with contributor-level access or higher to exploit.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete database compromise including extraction of user credentials, payment information, personal data, and potential privilege escalation to administrative access.

🟠

Likely Case

Extraction of sensitive user data including email addresses, registration details, and potentially hashed passwords from the WordPress database.

🟢

If Mitigated

Limited impact with proper input validation and parameterized queries preventing successful injection.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

SQL injection via the 'id' parameter in RM_Form shortcode requires authenticated access but is straightforward to exploit.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Versions after 5.3.1.0

Vendor Advisory: https://plugins.trac.wordpress.org/changeset/3057216/custom-registration-form-builder-with-submission-manager/trunk/public/class_rm_public.php

Restart Required: No

Instructions:

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

🔧 Temporary Workarounds

Disable vulnerable shortcode

all

Remove or disable the RM_Form shortcode from posts/pages to prevent exploitation.

Search for [RM_Form] in posts/pages and remove or replace with alternative

Restrict contributor access

all

Temporarily restrict contributor-level user creation or limit their permissions.

Use WordPress role management plugins to adjust permissions

🧯 If You Can't Patch

  • Implement web application firewall (WAF) rules to block SQL injection patterns targeting the 'id' parameter
  • Monitor and audit contributor-level user activities for suspicious database queries

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin → Plugins → RegistrationMagic → Version number. If version is 5.3.1.0 or lower, you are vulnerable.

Check Version:

wp plugin list --name=*registration* --field=version

Verify Fix Applied:

After updating, verify version is higher than 5.3.1.0 and test RM_Form shortcode functionality.

📡 Detection & Monitoring

Log Indicators:

  • Unusual database queries from contributor-level users
  • Multiple failed SQL queries with injection patterns
  • High volume of requests to pages containing RM_Form shortcode

Network Indicators:

  • SQL error messages in HTTP responses
  • Unusual parameter patterns in POST/GET requests to WordPress pages

SIEM Query:

source="wordpress.log" AND ("RM_Form" OR "id parameter") AND (sql OR injection OR union OR select)

🔗 References

📤 Share & Export