CVE-2025-5953
WP Human Resource Management 2.0.0 - 2.2.17 - Missing Authorization to Authenticated (Employee+) Privilege Escalation via wp_ajax_hrm_insert_employee AJAX Action
- State
- Published
- Severity
- 8.8 High
- Published
- Jul 4, 2025
- Updated
- Jul 8, 2025
- Reserved
- Jun 9, 2025
Description
The WP Human Resource Management plugin for WordPress is vulnerable to Privilege Escalation due to missing authorization in the ajax_insert_employee() and update_empoyee() functions in versions 2.0.0 through 2.2.17. The AJAX handler reads the client-supplied $_POST['role'] and, after basic cleaning via hrm_clean(), passes it directly to wp_insert_user() and later to $user->set_role() without verifying that the current user is allowed to assign that role. This makes it possible for authenticated attackers, with Employee-level access and above, to elevate their privileges to administrator.
Scores
| CVSS | Score | Vector | Source |
|---|---|---|---|
| 3.1 | 8.8 High | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H | Wordfence |
Weaknesses
- CWE-862 Missing Authorization
Affected Products
| Product | Versions |
|---|---|
WP Human Resource Managementasaquzzaman |
|
References
- https://www.wordfence.com/threat-intel/vulnerabilities/id/3ba33a18-429f-4a3e-b018-bdfbbe6e8482?source=cve
- https://wordpress.org/plugins/hrm/#developers
- https://plugins.trac.wordpress.org/browser/hrm/tags/2.2.17/class/employee.php#L89
- https://plugins.trac.wordpress.org/browser/hrm/tags/2.2.17/class/employee.php#L543
- https://plugins.trac.wordpress.org/browser/hrm/tags/2.2.17/class/employee.php#L591
Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.