CVE-2025-5953

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.
Configurations

Configuration 1 (hide)

cpe:2.3:a:mishubd:wp_human_resource_management:*:*:*:*:*:wordpress:*:*

History

13 Aug 2025, 19:29

Type Values Removed Values Added
References () 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#L543 - Product
References () https://plugins.trac.wordpress.org/browser/hrm/tags/2.2.17/class/employee.php#L591 - () https://plugins.trac.wordpress.org/browser/hrm/tags/2.2.17/class/employee.php#L591 - Product
References () 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#L89 - Product
References () https://wordpress.org/plugins/hrm/#developers - () https://wordpress.org/plugins/hrm/#developers - Release Notes
References () https://www.wordfence.com/threat-intel/vulnerabilities/id/3ba33a18-429f-4a3e-b018-bdfbbe6e8482?source=cve - () https://www.wordfence.com/threat-intel/vulnerabilities/id/3ba33a18-429f-4a3e-b018-bdfbbe6e8482?source=cve - Third Party Advisory
First Time Mishubd
Mishubd wp Human Resource Management
CPE cpe:2.3:a:mishubd:wp_human_resource_management:*:*:*:*:*:wordpress:*:*

08 Jul 2025, 16:18

Type Values Removed Values Added
Summary
  • (es) El complemento WP Human Resource Management para WordPress es vulnerable a la escalada de privilegios debido a la falta de autorización en las funciones ajax_insert_employee() y update_empoyee() en las versiones 2.0.0 a 2.2.17. El controlador AJAX lee el $_POST['role'] proporcionado por el cliente y, tras una limpieza básica mediante hrm_clean(), lo pasa directamente a wp_insert_user() y posteriormente a $user->set_role() sin verificar que el usuario actual tenga permiso para asignar dicho rol. Esto permite que atacantes autenticados, con acceso de empleado o superior, eleven sus privilegios a administrador.

04 Jul 2025, 03:15

Type Values Removed Values Added
New CVE

Information

Published : 2025-07-04 03:15

Updated : 2025-08-13 19:29


NVD link : CVE-2025-5953

Mitre link : CVE-2025-5953

CVE.ORG link : CVE-2025-5953


JSON object : View

Products Affected

mishubd

  • wp_human_resource_management
CWE
CWE-862

Missing Authorization