CVE-2026-24951

4.3 MEDIUM

📋 TL;DR

This CVE describes a Missing Authorization vulnerability in the myCred WordPress plugin that allows attackers to exploit incorrectly configured access control security levels. It affects myCred plugin versions up to and including 2.9.7.3, potentially allowing unauthorized access to functionality that should be restricted.

💻 Affected Systems

Products:
  • myCred WordPress plugin
Versions: n/a through <= 2.9.7.3
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Affects all WordPress installations using vulnerable myCred plugin versions 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

Attackers could gain administrative privileges, modify user points/balances, access sensitive user data, or manipulate plugin settings to compromise the entire WordPress site.

🟠

Likely Case

Unauthorized users could access restricted plugin functionality to modify their own or other users' points/balances, potentially disrupting the reward system's integrity.

🟢

If Mitigated

With proper access controls and authentication checks, the vulnerability would be prevented, maintaining normal plugin functionality with appropriate user permissions.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires some level of access to the WordPress site but bypasses authorization checks within the myCred plugin.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Versions after 2.9.7.3

Vendor Advisory: https://patchstack.com/database/Wordpress/Plugin/mycred/vulnerability/wordpress-mycred-plugin-2-9-7-3-broken-access-control-vulnerability?_s_id=cve

Restart Required: No

Instructions:

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

🔧 Temporary Workarounds

Temporary Plugin Deactivation

all

Disable the myCred plugin until patched to prevent exploitation

wp plugin deactivate mycred

Access Restriction via .htaccess

linux

Restrict access to myCred plugin directories

# Add to .htaccess in wp-content/plugins/mycred:
Order Deny,Allow
Deny from all
Allow from 127.0.0.1

🧯 If You Can't Patch

  • Implement strict network access controls to limit who can access the WordPress admin interface
  • Enable WordPress security plugins that monitor for unauthorized access attempts and implement additional authentication layers

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin → Plugins → Installed Plugins → myCred version. If version is 2.9.7.3 or earlier, you are vulnerable.

Check Version:

wp plugin get mycred --field=version

Verify Fix Applied:

After updating, verify myCred plugin version shows higher than 2.9.7.3 in WordPress admin panel.

📡 Detection & Monitoring

Log Indicators:

  • Unauthorized access attempts to myCred admin endpoints
  • Unexpected modifications to user points/balances
  • Access to myCred functionality from non-admin users

Network Indicators:

  • HTTP requests to /wp-admin/admin.php?page=mycred* endpoints from unauthorized IPs
  • POST requests to myCred API endpoints without proper authentication

SIEM Query:

source="wordpress" AND (uri_path="/wp-admin/admin.php" AND uri_query="page=mycred*") AND user_role!="administrator"

🔗 References

📤 Share & Export