CVE-2025-15064 Overview
CVE-2025-15064 is a Stored Cross-Site Scripting (XSS) vulnerability affecting the Ultimate Member – User Profile, Registration, Login, Member Directory, Content Restriction & Membership Plugin for WordPress. The vulnerability exists in all versions up to and including 2.11.1 due to insufficient input sanitization and output escaping in the user description field.
This vulnerability allows authenticated attackers with subscriber-level access or above to inject arbitrary web scripts into pages. These malicious scripts execute whenever any user accesses an injected page, potentially leading to session hijacking, credential theft, or further compromise of the WordPress installation.
Critical Impact
Authenticated users with minimal privileges (subscriber level) can inject persistent malicious scripts that execute in the context of other users, including administrators, potentially leading to full site compromise.
Affected Products
- Ultimate Member WordPress Plugin versions ≤ 2.11.1
- WordPress installations with Ultimate Member plugin and "HTML support for user description" enabled
- All WordPress sites using vulnerable versions with default or custom user profile configurations
Discovery Timeline
- 2026-04-04 - CVE CVE-2025-15064 published to NVD
- 2026-04-07 - Last updated in NVD database
Technical Details for CVE-2025-15064
Vulnerability Analysis
This Stored Cross-Site Scripting vulnerability (CWE-79) occurs due to inadequate input sanitization and output escaping mechanisms within the Ultimate Member plugin's user description field handling. When the "HTML support for user description" setting is enabled in the plugin configuration, user-supplied content in the description field is not properly sanitized before being stored in the database or escaped when rendered to other users.
The vulnerability requires authentication, meaning attackers need at least subscriber-level access to exploit it. However, since many WordPress sites allow user registration by default, obtaining subscriber access is often trivial. Once exploited, the injected scripts persist in the database and execute in the browser context of any user viewing the affected profile page.
Root Cause
The root cause of this vulnerability is the plugin's failure to properly sanitize HTML content in user description fields before storage and inadequate output escaping when rendering this content to other users. When administrators enable "HTML support for user description" to allow formatting in user profiles, the plugin does not implement sufficient security controls to prevent script injection through this field.
The lack of proper allowlist-based HTML sanitization allows attackers to inject <script> tags or event handlers (such as onerror, onload, onclick) that execute JavaScript code in the victim's browser session.
Attack Vector
The attack is network-based and requires the attacker to have authenticated access to the WordPress site with at least subscriber-level privileges. The attack flow involves:
- The attacker registers or authenticates to the WordPress site with a low-privilege account
- The attacker navigates to their user profile editing interface
- In the user description field, the attacker injects malicious JavaScript code
- The payload is stored in the WordPress database
- When other users (including administrators) view the attacker's profile or any page displaying the description, the malicious script executes
The exploitation requires no user interaction beyond normal browsing behavior. The vulnerability is only exploitable when "HTML support for user description" is enabled in Ultimate Member settings.
Detection Methods for CVE-2025-15064
Indicators of Compromise
- Unusual JavaScript or HTML content in user description fields in the wp_usermeta database table
- User descriptions containing <script> tags, javascript: URIs, or suspicious event handlers (onerror, onload, onclick)
- Reports of unexpected behavior when viewing user profiles (redirects, pop-ups, credential prompts)
- Suspicious subscriber or user accounts created recently with populated description fields
Detection Strategies
- Review user description fields in the WordPress database for script tags and JavaScript event handlers
- Implement Web Application Firewall (WAF) rules to detect XSS patterns in form submissions
- Monitor WordPress audit logs for unusual profile update activities from low-privilege users
- Use WordPress security plugins to scan for known malicious patterns in user-generated content
Monitoring Recommendations
- Enable detailed logging of profile update operations in WordPress
- Configure alerts for database entries containing script tags or event handlers in user meta fields
- Implement Content Security Policy (CSP) headers to mitigate the impact of successful XSS attacks
- Regularly audit subscriber accounts and their associated profile content
How to Mitigate CVE-2025-15064
Immediate Actions Required
- Update Ultimate Member plugin to the latest patched version beyond 2.11.1
- Disable "HTML support for user description" in Ultimate Member settings until patched
- Review and sanitize existing user description fields for malicious content
- Implement Content Security Policy headers to reduce XSS impact
Patch Information
The vulnerability has been addressed by the plugin developers. A fix is referenced in the GitHub Pull Request #1774. Site administrators should update to the latest version of the Ultimate Member plugin that includes this security fix. Additional technical details are available in the Wordfence Vulnerability Report.
Workarounds
- Disable "HTML support for user description" in Ultimate Member → Settings → General → Users until a patch is applied
- Implement strict input validation at the web server or WAF level to block script injection attempts
- Restrict user registration to reduce the attack surface for authenticated attacks
- Consider using a Content Security Policy to prevent inline script execution
# WordPress wp-config.php - Add CSP header as mitigation
# Add to your theme's functions.php or use a security plugin
# This reduces XSS impact but does not fix the vulnerability
# Example Apache .htaccess CSP configuration
Header set Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline';"
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

