CVE-2024-10528

4.3 MEDIUM

📋 TL;DR

This vulnerability in the Ultimate Member WordPress plugin allows authenticated attackers with subscriber-level access or higher to change other users' profile pictures without authorization. The flaw exists due to missing capability checks in image resizing functions. All WordPress sites using Ultimate Member versions up to 2.8.9 are affected.

💻 Affected Systems

Products:
  • Ultimate Member WordPress Plugin
Versions: All versions up to and including 2.8.9
Operating Systems: All operating systems running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress installation with Ultimate Member plugin enabled. Any authenticated user (subscriber role or higher) can exploit this.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could replace legitimate profile pictures with inappropriate or malicious content, potentially damaging user reputations or enabling social engineering attacks.

🟠

Likely Case

Malicious users changing profile pictures of other users to cause confusion, harassment, or minor reputation damage.

🟢

If Mitigated

Limited impact if proper user education and monitoring are in place, though unauthorized changes still violate user control.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires authenticated access but is technically simple. The vulnerability details are publicly documented.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.9.0

Vendor Advisory: https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&old=3186722%40ultimate-member&new=3186722%40ultimate-member&sfp_email=&sfph_mail=

Restart Required: No

Instructions:

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

🔧 Temporary Workarounds

Disable vulnerable AJAX endpoints

all

Prevent access to the vulnerable image resizing functions by blocking the AJAX endpoints

Add to theme's functions.php or custom plugin: add_action('init', function() { if (defined('DOING_AJAX') && DOING_AJAX) { remove_action('wp_ajax_um_resize_image', 'um_resize_image'); remove_action('wp_ajax_nopriv_um_resize_image', 'um_resize_image'); } });

Restrict user capabilities

all

Temporarily limit subscriber-level users from accessing profile modification features

Use WordPress role management plugin to remove 'upload_files' capability from subscriber role

🧯 If You Can't Patch

  • Disable the Ultimate Member plugin entirely until patched
  • Implement strict monitoring of user profile changes and review audit logs daily

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin → Plugins → Ultimate Member → Version. If version is 2.8.9 or lower, you are vulnerable.

Check Version:

wp plugin list --name='ultimate-member' --field=version (if WP-CLI installed)

Verify Fix Applied:

After updating, verify version shows 2.9.0 or higher in WordPress plugins page.

📡 Detection & Monitoring

Log Indicators:

  • Multiple AJAX requests to /wp-admin/admin-ajax.php with action=um_resize_image from non-admin users
  • Unexpected profile picture changes in user database or media library

Network Indicators:

  • POST requests to admin-ajax.php containing um_resize_image action parameter

SIEM Query:

source="wordpress.logs" AND (action="um_resize_image" OR uri="/wp-admin/admin-ajax.php") AND user_role!="administrator"

🔗 References

📤 Share & Export