Kimai: Timesheet PATCH/POST allows assigning to project outside user's team via query_builder OR-bypass (CVE-2026-52820)
Kimai versions prior to 2.57.0 have a vulnerability in the Timesheet API PATCH and POST endpoints that allows authenticated users to assign their timesheets to projects outside their authorized teams. This occurs because the project ID submitted by the user bypasses team membership checks due to an unconditional OR condition in the query builder. Consequently, users can access project and customer metadata that should be restricted by team access controls.
AI Analysis
Technical Summary
The vulnerability in Kimai's Timesheet API PATCH /api/timesheets/{id} and POST /api/timesheets endpoints arises from improper access control validation on the project field. The access control voter only verifies ownership of the timesheet but does not validate the new project assignment. The form handling code uses a Symfony EntityType with a query builder that includes an unconditional OR clause allowing any submitted project ID to bypass team membership restrictions. This enables any authenticated user to reassign their timesheet to any project in the database, including those outside their teams, and retrieve sensitive project and customer metadata via the API.
Potential Impact
An authenticated user with permission to edit their own timesheets can reassign timesheets to projects outside their authorized teams. This leads to unauthorized disclosure of project and customer metadata such as names, currency, and customer hierarchy that would normally be filtered by team ACLs. There is no indication of remote code execution or privilege escalation beyond this unauthorized data access.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until an official fix is available, restrict access to the Timesheet API endpoints to trusted users only and monitor for suspicious timesheet project reassignments. Avoid exposing detailed project/customer metadata in API responses to unauthorized users. Follow vendor updates for an official fix.
Kimai: Timesheet PATCH/POST allows assigning to project outside user's team via query_builder OR-bypass (CVE-2026-52820)
Description
Kimai versions prior to 2.57.0 have a vulnerability in the Timesheet API PATCH and POST endpoints that allows authenticated users to assign their timesheets to projects outside their authorized teams. This occurs because the project ID submitted by the user bypasses team membership checks due to an unconditional OR condition in the query builder. Consequently, users can access project and customer metadata that should be restricted by team access controls.
CVSS v4.0
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The vulnerability in Kimai's Timesheet API PATCH /api/timesheets/{id} and POST /api/timesheets endpoints arises from improper access control validation on the project field. The access control voter only verifies ownership of the timesheet but does not validate the new project assignment. The form handling code uses a Symfony EntityType with a query builder that includes an unconditional OR clause allowing any submitted project ID to bypass team membership restrictions. This enables any authenticated user to reassign their timesheet to any project in the database, including those outside their teams, and retrieve sensitive project and customer metadata via the API.
Potential Impact
An authenticated user with permission to edit their own timesheets can reassign timesheets to projects outside their authorized teams. This leads to unauthorized disclosure of project and customer metadata such as names, currency, and customer hierarchy that would normally be filtered by team ACLs. There is no indication of remote code execution or privilege escalation beyond this unauthorized data access.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until an official fix is available, restrict access to the Timesheet API endpoints to trusted users only and monitor for suspicious timesheet project reassignments. Avoid exposing detailed project/customer metadata in API responses to unauthorized users. Follow vendor updates for an official fix.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- GHSA-vrr2-g9gh-c3jc
- Osv Schema Version
- 1.4.0
- Aliases
- ["CVE-2026-52820"]
- Ecosystems
- ["Packagist"]
- Database Specific Severity
- MODERATE
- Cvss Version
- 4.0
Threat ID: 6a55ff8868715ace432f465a
Added to database: 07/14/2026, 09:21:12 UTC
Last enriched: 07/14/2026, 09:45:00 UTC
Last updated: 07/31/2026, 12:27:30 UTC
Views: 19
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.