ZeroHour

CVE-2026-56825

niche

Missing Authorization in Shopper Admin Allows Unauthorized Product Removal from Collections

CVSS 3.1
8.1 high
EPSS
Published
()
Modified
AI analysis

CVE-2026-56825 is a missing-authorization flaw (CWE-862) in the CollectionProducts Livewire component of the Shopper e-commerce admin panel: the per-record delete action and the bulk delete action have no ->authorize() checks, so the server never verifies the caller's permissions before detaching products. Any authenticated admin-panel session can trigger these actions — including staff whose role only holds browse_collections — and because the public Collection $collection property is not marked #[Locked], the collection ID is mutable in the Livewire wire payload, letting the caller empty any collection in the database, individually or in bulk. An attacker gains integrity and availability impact (CVSS 8.1 High, confidentiality unaffected): products can be detached from arbitrary collections, disrupting storefront merchandising until restored. All Shopper deployments whose admin panel is accessible to minimally privileged staff accounts are affected, while single-trusted-admin stores face negligible risk. No public proof-of-concept, CISA KEV listing, or in-the-wild exploitation has been reported.

What to do: Upgrade Shopper to a release that adds ->authorize() checks to both delete actions and marks the $collection property #[Locked] (fixed version not stated in the advisory — track the vendor's GitHub releases and security advisory). Until patched, restrict admin-panel access to fully trusted administrators and avoid assigning low-privilege roles such as browse_collections to staff. Check collection membership histories for unexplained product removals.

Affected
Shopper (Laravel e-commerce platform, admin panel CollectionProducts component)
Estimated exposure
nicheLikely hundreds to a few thousand deployments; no reliable active-install figure is published — Shopper is a niche Laravel e-commerce toolkit with modest Packagist/GitHub adoption and no published active-install counts, so real-world installations are plausibly in the low thousands or fewer.

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

Shopper is a Headless e-commerce Admin Panel. Prior to 2.9.2, packages/admin/src/Livewire/Components/Collection/CollectionProducts.php exposes Action::make('delete') and DeleteBulkAction::make() without delete_collections authorization, while public Collection $collection remains client mutable because it lacks the Livewire Locked attribute. An authenticated staff user with only browse_collections can invoke a Livewire removal action, substitute an arbitrary collection identifier, and detach selected products or empty the collection. This can disrupt catalog landing pages and promotions associated with the targeted collection. 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-2cg9-97gq-9mqp (high)

In the news

No ingested article mentions this CVE yet.