VDB
Sign up
CRITICAL9.9

GHSA-c3qp-2ggw-xjg7

Shopper: Authorization bypass and RBAC privilege escalation in team settings

Quick fix

GHSA-c3qp-2ggw-xjg7 — shopper/framework: upgrade to the fixed version with the command below.

composer require shopper/framework:^2.8.0

Details

## Impact

Two distinct authorization defects in the team settings allowed any authenticated panel user to take over the RBAC system:

- `Settings/Team/Index` had no `mount()` authorization. Any authenticated user could load the page and use its public actions to create new roles and delete other users, including administrators. - `Settings/Team/RolePermission` gated its write actions on the read-only `view_users` permission. Any user holding `view_users` could grant themselves or any other user arbitrary permissions, including `manage_users` and `edit_orders`, effectively escalating to full panel administrator from a read-only account.

Combined, these two defects allow a low-privilege authenticated user to obtain administrator privileges and remove the legitimate administrators from the panel.

## Patches

Fixed in `v2.8.0`:

- `Settings/Team/Index::mount()` now authorizes against `manage_users`. - `Settings/Team/RolePermission` write actions now require `manage_users` instead of `view_users`.

Upgrade via:

```bash composer require shopper/admin:^2.8 ```

## Workarounds

None. Upgrade to `v2.8.0`.

Are you affected?

Enter the version of the package you're using.

Affected packages

Packagist/shopper/framework
Introduced in: 0Fixed in: 2.8.0
Fixcomposer require shopper/framework:^2.8.0

References