Description
Frappe HR (hrms) before 16.11.0, including all 14.x and 15.x releases through 15.64.3, contains a missing authorization vulnerability in the whitelisted expire_allocation method that allows authenticated users to expire any leave allocation. Attackers without HR roles can name another employee's Leave Allocation in a POST request to zero its allocated leaves and wipe that employee's remaining leave balance.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
frappe hrms
Default version status: unaffected
0 to < 16.11.0affected
pkg:github/frappe/hrmsReferences
- https://hackmd.io/@haind03/frappe-hrms-expire-allocation-missing-authorization-20261010 ↗
- https://github.com/frappe/hrms/blob/0a54d2c7b8b6043e2705b6f557b6ed65260670dd/hrms/hr/doctype/leave_ledger_entry/leave_ledger_entry.py#L199-L228 ↗
- https://github.com/frappe/hrms/commit/6ab7a50347367413b78ad5bd5d9e4b8c6653c81f ↗
- https://github.com/frappe/hrms/releases/tag/v16.11.0 ↗
- https://github.com/frappe/hrms ↗
- https://www.vulncheck.com/advisories/frappe-hr-hrms-before-16.11.0-missing-authorization-via-expire-allocation ↗