CVE-2026-56827
nicheMissing Authorization on Filament Bulk Actions in Shopper Admin (CVE-2026-56827)
The Shopper e-commerce package for Laravel leaves several Filament `groupedBulkActions` blocks on its admin Livewire pages without permission checks: the bulk delete and enable/disable actions on the attributes, tags, brands, categories, and suppliers pages never call `->authorize()`, while each page's `mount()` only enforces the read-only `browse_*` permission. Any staff account holding just the corresponding browse permission can drive the standard Livewire `callTableBulkAction` endpoint to permanently delete every product attribute or tag (with attribute deletions cascading into dependent product variants) or mass-toggle the `is_enabled` visibility of every brand, category, and supplier. The attacker gains integrity and availability sabotage of the storefront catalog (CVSS 8.1 High, no confidentiality impact) using any low-privilege staff login, with no user interaction. All self-hosted Shopper stores that expose these admin pages to browse-only staff roles are affected through master commit ac9a760; no fixed release version is stated in the available data. No public proof-of-concept and no confirmed exploitation in the wild is known.
What to do: Upgrade to the Shopper release that adds `->authorize()` gates to the affected grouped bulk actions as soon as one is published (no fixed version is given in the available data). Until then, deny browse-only staff roles access to the attributes, tags, brands, categories, and suppliers admin pages, and audit those tables (plus dependent product variants) for unexplained bulk deletions or visibility changes.
| Shopper (Laravel/Filament e-commerce admin panel, packages/admin) | — |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
Shopper is a Headless e-commerce Admin Panel. Prior to 2.9.2, groupedBulkActions in packages/admin/src/Livewire/Pages/Attribute/Browse.php, packages/admin/src/Livewire/Pages/Tag/Index.php, packages/admin/src/Livewire/Pages/Brand/Index.php, packages/admin/src/Livewire/Pages/Category/Index.php, and packages/admin/src/Livewire/Pages/Supplier/Index.php omit server-side authorization while the pages require only browse_attributes, browse_tags, browse_brands, browse_categories, or browse_suppliers. A browse-only staff user can invoke DeleteBulkAction to mass delete attributes or tags and can invoke BulkAction::make('enabled') or BulkAction::make('disabled') to change attribute, brand, category, or supplier visibility. These operations can break product variants and substantially disrupt storefront catalog visibility. Per-record actions and the comparison pages identified by the advisory are correctly authorized and are not affected. This issue is fixed in version 2.9.2.
- Ecosystems
- composer
- Weakness
- CWE-862
- Vector
- CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H
- GHSA
- GHSA-243p-f3cv-c5wh (high)
In the news0 stories
No ingested article mentions this CVE yet.