Summary
A Manager account (access_all=false) was able to escalate privileges by directly invoking the bulk-access API against collections that were not originally assigned to them.
The API allowed changing assigned=false to assigned=true, resulting in unauthorized access.
Additionally, prior to the bulk-access call, the regular single-update API correctly returned 401 Unauthorized for the same collection. After executing the bulk-access API, the same update API returned 200 OK, confirming an authorization gap at the HTTP level.
Potential Impact
- Confidentiality: Unauthorized access to sensitive information within restricted collections.
- Integrity: Unauthorized modification of collection permission settings and arbitrary changes to access controls.
- Availability: Deletion of existing assignments may cause legitimate users to lose access.
Summary
A Manager account (
access_all=false) was able to escalate privileges by directly invoking the bulk-access API against collections that were not originally assigned to them.The API allowed changing
assigned=falsetoassigned=true, resulting in unauthorized access.Additionally, prior to the bulk-access call, the regular single-update API correctly returned 401 Unauthorized for the same collection. After executing the bulk-access API, the same update API returned 200 OK, confirming an authorization gap at the HTTP level.
Potential Impact