Description
DaybydayCRM through 2.2.1 contains a missing authorization vulnerability in ProjectsController::updateAssign() that allows any authenticated user to reassign projects without the can-assign-new-user-to-project permission. Low-privileged employees can send PATCH or POST requests to /projects/updateassign/{external_id} with a chosen user_assigned_id to redirect project ownership and notifications.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Bottelet | DaybydayCRM | ≤ 2.2.1 | — |
References
- https://github.com/Bottelet/DaybydayCRM/issues/347 issue-tracking
- https://github.com/Bottelet/DaybydayCRM/pull/362 patch issue-tracking
- https://github.com/Bottelet/DaybydayCRM/commit/20a161e6c3e7ad60ee0430678bcbace593dfd1d8 patch
- https://github.com/Bottelet/DaybydayCRM/blob/2.2.1/app/Http/Controllers/ProjectsController.php#L232-L245 technical-description
- VulnCheck Advisory: DaybydayCRM through 2.2.1 Missing Authorization via ProjectsController updateAssign third-party-advisory