CVE-2025-13320
📋 TL;DR
The WP User Manager WordPress plugin has an arbitrary file deletion vulnerability that allows authenticated attackers with Subscriber-level access or higher to delete arbitrary files on the server. This occurs due to insufficient validation of user-supplied file paths in profile update functionality combined with improper handling of array inputs by PHP's filter_input() function. The vulnerability only affects sites with custom avatar settings enabled.
💻 Affected Systems
- WP User Manager WordPress Plugin
⚠️ 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.
- Review the CVE details at NVD
- Check vendor security advisories for your specific version
- Test if the vulnerability is exploitable in your environment
- Consider updating to the latest version as a precaution
⚠️ Risk & Real-World Impact
Worst Case
Attackers could delete critical system files, leading to complete site compromise, remote code execution, or denial of service.
Likely Case
Attackers delete WordPress core files, plugin files, or configuration files causing site disruption and potential data loss.
If Mitigated
With proper file permissions and monitoring, impact is limited to non-critical files in web-accessible directories.
🎯 Exploit Status
Requires authenticated access (Subscriber-level or higher) and custom avatar setting enabled
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 2.9.13 or later
Vendor Advisory: https://wordpress.org/plugins/wp-user-manager/#developers
Restart Required: No
Instructions:
1. Log into WordPress admin panel
2. Navigate to Plugins > Installed Plugins
3. Find WP User Manager plugin
4. Click 'Update Now' if update available
5. Alternatively, download version 2.9.13+ from WordPress.org and replace plugin files
🔧 Temporary Workarounds
Disable Custom Avatar Setting
allTemporarily disable the vulnerable feature until patched
Restrict File Permissions
linuxSet restrictive permissions on critical directories
chmod 755 /var/www/html/wp-content/uploads
chmod 644 /var/www/html/wp-config.php
🧯 If You Can't Patch
- Disable WP User Manager plugin completely
- Implement strict file integrity monitoring and alerting
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin panel > Plugins > WP User Manager version. If version is 2.9.12 or lower and custom avatar setting is enabled, system is vulnerable.
Check Version:
wp plugin list --name=wp-user-manager --field=version
Verify Fix Applied:
Verify plugin version is 2.9.13 or higher in WordPress admin panel.
📡 Detection & Monitoring
Log Indicators:
- Unusual file deletion events in web server logs
- Multiple failed file operations from single user
- POST requests to profile update endpoints with unusual file paths
Network Indicators:
- HTTP POST requests containing 'current_user_avatar' parameter with path traversal sequences
SIEM Query:
source="web_server" action="DELETE" OR (method="POST" AND uri="*/profile/*" AND params CONTAINS "current_user_avatar")
🔗 References
- https://plugins.trac.wordpress.org/browser/wp-user-manager/tags/2.9.12/includes/forms/trait-wpum-account.php#L70
- https://plugins.trac.wordpress.org/browser/wp-user-manager/tags/2.9.12/includes/forms/trait-wpum-account.php#L75
- https://plugins.trac.wordpress.org/browser/wp-user-manager/tags/2.9.12/includes/forms/trait-wpum-account.php#L86
- https://plugins.trac.wordpress.org/browser/wp-user-manager/trunk/includes/forms/trait-wpum-account.php#L70
- https://plugins.trac.wordpress.org/browser/wp-user-manager/trunk/includes/forms/trait-wpum-account.php#L75
- https://plugins.trac.wordpress.org/browser/wp-user-manager/trunk/includes/forms/trait-wpum-account.php#L86
- https://www.wordfence.com/threat-intel/vulnerabilities/id/9d8304bf-bec2-4fcf-9fe2-46b626b3dae9?source=cve