CVE-2026-47744: Shopper: Authorization bypass and RBAC privilege escalation in team settings
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 viewusers permission.
Published Jun 5, 2026
Affected packages
shopper/framework
- Ecosystem
- Composer (PHP)
- Affected
- < 2.8.0
- Fixed in
- 2.8.0
- Check
composer show shopper/framework
Advisory details
From the GitHub Advisory Database (CC BY 4.0).
Impact
Two distinct authorization defects in the team settings allowed any authenticated panel user to take over the RBAC system:
Settings/Team/Indexhad nomount()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/RolePermissiongated its write actions on the read-onlyview_userspermission. Any user holdingview_userscould grant themselves or any other user arbitrary permissions, includingmanage_usersandedit_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 againstmanage_users.Settings/Team/RolePermissionwrite actions now requiremanage_usersinstead ofview_users.
Upgrade via:
composer require shopper/admin:^2.8Workarounds
None. Upgrade to v2.8.0.
Credited to baradika.
References
How this page is made: the data panel comes from the GitHub Advisory Database, CISA’s KEV catalog, the NVD and FIRST EPSS, and updates twice a day. No analysis has been written for this entry yet. Methodology
