Overview
A critical vulnerability, tracked as CVE-2025-3844, has been identified in the PeproDev Ultimate Profile Solutions plugin for WordPress. This vulnerability pertains to a weakness in the authentication process, specifically the change_user_meta functionality, that could allow an unauthenticated attacker to bypass the login process and gain unauthorized access to user accounts, including those of administrators. This could potentially lead to system compromise or data leakage, posing a significant risk to the privacy and security of website users.
With a CVSS severity score of 9.8, this vulnerability is deemed to be of critical severity and should be addressed immediately. The widespread usage of WordPress and the affected plugin underscores the urgent need for mitigation actions.
Vulnerability Summary
CVE ID: CVE-2025-3844
Severity: Critical (CVSS: 9.8)
Attack Vector: Network
Privileges Required: None
User Interaction: None
Impact: System compromise, data leakage
Affected Products
No phone number, email, or personal info required.
Product | Affected Versions
PeproDev Ultimate Profile Solutions Plugin for WordPress | 1.9.1 to 7.5.2
How the Exploit Works
The vulnerability lies in the handel_ajax_req() function of the PeproDev Ultimate Profile Solutions plugin. Due to improper restrictions on the change_user_meta functionality, an attacker can set an OTP (One-Time Password) code and subsequently use that code to log in. This allows the attacker to bypass the authentication process and login as any user on the site, including administrators, thus gaining unfettered access to the system and potentially sensitive data.
Conceptual Example Code
The following pseudocode illustrates a potential exploit:
POST /wp-admin/admin-ajax.php?action=peprodev_ultimate_profile_solutions HTTP/1.1
Host: targetwebsite.com
Content-Type: application/x-www-form-urlencoded
user_id=victim_user_id&user_meta_key=otp_for_login&user_meta_value=attacker_generated_otp
In this conceptual example, the attacker sends a POST request to the vulnerable endpoint, setting the user_meta_key to ‘otp_for_login’ and the user_meta_value to a value of their choice. This allows the attacker to log in as the specified user_id with the OTP they have set.
Mitigation Guidance
Users of the affected plugin are strongly advised to apply the vendor-supplied patch immediately. Until the patch can be applied, temporary mitigation can be achieved by using a Web Application Firewall (WAF) or Intrusion Detection System (IDS) to block attempts to exploit the vulnerability.