Description (CNA)
Kimai before 2.56.0 does not enforce team-membership checks in TimesheetVoter::voteOnAttribute(), which maps permissions only to own_timesheet or other_timesheet. As a result, any authenticated user with ROLE_TEAMLEAD (or a role holding edit_other_timesheet/delete_other_timesheet) can read, modify, and permanently delete timesheets belonging to any user system-wide via the API, regardless of team membership. Timesheet IDs are sequential integers and trivially enumerable. ROLE_USER accounts are correctly restricted. (Note: the maintainers characterize this behavior as matching the documented permission model.)
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| kimai / kimai | affected 0 before 2.56.0; unaffected 2.56.0 |
CWE
CWE-863
References
- https://github.com/kimai/kimai/security/advisories/GHSA-9g2q-w3w2-vf7q
- https://www.vulncheck.com/advisories/kimai-before-2.56.0-authorization-bypass-via-timesheetvoter
ADP enrichment
No English description supplied.