Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconObtain low-privilege panel account (read_orders/browse_orders)
-
DeliveryAuthenticate to Shopper Filament admin
-
ExploitInvoke unauthorized order Filament action
-
InstallTrigger capturePayment for real PSP fund movement
-
C2Mutate lifecycle of additional orders
-
ExecutePivot to Settings/Team to create admin role
-
ImpactDelete legitimate users and entrench access
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization verification
MITRE ATT&CK
1 technique across 1 tactic: Defense Evasion The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated Shopper admin-panel account holding the low-privilege read_orders or browse_orders permission (or any role lacking edit_orders/edit_products but with panel login), and network reachability to the Shopper Filament admin routes. capturePayment additionally requires that the target Shopper instance has a Payment Service Provider configured and an order in a captureable state for real funds movement to occur; the order-lifecycle mutations (cancel, mark paid, mark complete, archive, start processing, mark delivered, edit tracking) require only the low-privilege account with no further configuration. Limiting factors: the attacker must already have valid panel credentials (PR:L), so deployments that restrict admin access to a small group of trusted operators face reduced risk, and panels gated behind VPN/IP allowlists shrink the network reachability needed by AV:N. No user interaction is required from a victim (UI:N). |
| Impact | The CVSS 8.1 (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N) reflects network-reachable, low-complexity exploitation by an authenticated low-privilege user with high confidentiality and integrity impact and no availability impact - consistent with an authorization bypass rather than crash or DoS. Real-world risk is meaningful for any Shopper deployment that grants broad read-only roles (support staff, analysts, junior operators), because such users gain de facto control over order lifecycle, product catalog, RBAC roles, and - critically - can invoke capturePayment to move real funds through the connected PSP. EPSS and CISA KEV data were not provided in the input, so exploitation probability and active-exploitation status are unknown; no public exploit identified at time of analysis, but the GHSA description and PR diff publicly enumerate the vulnerable components and missing authorize() calls, lowering the effort to craft a working exploit. The financial-impact angle (PSP capture) and ease of weaponization once an account exists make this a high-priority patch for any production Shopper instance with more than one admin user. |
| Exploit ScenarioDerived | An authenticated user holding only the read_orders or browse_orders role - for example a customer-support agent or a compromised low-tier staff account - opens the Shopper admin Order detail page and invokes the Filament capturePayment action on a pending order, causing the connected Payment Service Provider to capture real funds; the same session then marks unrelated orders cancelled, paid, complete, or delivered, and pivots to Settings/Team to create a new admin role and delete legitimate users. No public exploit identified at time of analysis, but the GHSA advisory and PR #511 diff publicly identify the exact unauthenticated action handlers and missing authorize('edit_orders') calls, so reproduction requires only standard browser/Livewire request crafting against the documented endpoints. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – May 29, 2026
Authorization bypass in Shopperlabs Shopper headless e-commerce admin panel prior to 2.8.0 allows authenticated low-privilege users with read-only order permissions to mutate every order in the panel and trigger real Payment Service Provider captures via Filament admin actions. The flaw spans multiple Livewire components beyond orders - including product sub-forms, team settings, and RBAC management - enabling privilege escalation up to role creation and user deletion. No public exploit identified at time of analysis, but a detailed GitHub Security Advisory and patch diff are public.
RemediationAI
Vendor-released patch: 2.8.0 - upgrade by running composer require shopper/admin:^2.8 shopper/cart:^2.8 shopper/core:^2.8 followed by php artisan migrate, per the GHSA-f946-9qp6-vgch advisory. The vendor explicitly states no workarounds exist; if an immediate upgrade is not possible, compensating controls include temporarily revoking all non-administrative roles (read_orders, browse_orders, view_users, and any custom roles missing edit_* abilities) so only fully trusted admins can reach the panel - accepting the operational cost that support and fulfillment staff lose admin access - and disabling external network access to the /admin (or configured Shopper) route via reverse-proxy IP allowlists to limit exposure to known operator workstations. Monitor PSP logs for unexpected capture events and Laravel audit logs for unauthorized cancel/mark-paid/mark-delivered actions until the upgrade lands. Review the patch commit fcd0c5920588702df5b874f432b1042abd77a50b and PR #511 (https://github.com/shopperlabs/shopper/pull/511) to confirm coverage of any locally forked components.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in composer, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Shopper is a Laravel/Filament-based headless e-commerce admin package (composer/shopper/framework) that uses Livewire components for interactive admin panels. The root cause is CWE-285 Improper Authorization (and CWE-862 Missing Authorization per the GHSA): Filament action callbacks and Livewire component store()/mount() methods did not invoke $this->authorize() against the correct ability, instead gating mutating operations on read-only permissions like read_orders, browse_orders, view_users, or no permission at all. Additionally, public Eloquent model properties on Livewire components were not annotated with the #[Locked] attribute, allowing clients to tamper with bound IDs and operate on records they should not access - the patch adds #[Locked] across Customer, Order, and Product components alongside explicit authorize() calls. A separate stored XSS via DNS1DFacade::getBarcodeHTML() rendered with {!! !!} on the product barcode field is also fixed in 2.8.0.
Know when Shopper gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Primary rating from Vendor (GitHub_M) · only source for this CVE.
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
Shopper is a Headless e-commerce Admin Panel. Prior to 2.8.0, Multiple Filament actions on the admin Order detail and Order shipments table were callable by an authenticated low-privilege user without the permission required to mutate orders. The order detail actions cancel, mark paid, mark complete, capture payment, archive, and start processing were callable with the read-only read_orders permission and did not require edit_orders. capturePayment could trigger an actual PSP capture (real funds movement). The order shipments table actions mark delivered and edit tracking were callable with the read-only browse_orders permission. A user with read access to orders could therefore alter the lifecycle of every order in the panel and trigger real-world payment captures. This vulnerability is fixed in 2.8.0.
Executive ViewAI
Shopperlabs Shopper admin panel versions prior to 2.8.0 contain an authorization bypass enabling low-privilege authenticated users to escalate privileges, manipulate orders, and trigger unauthorized payment captures. Organizations face direct financial loss, customer data integrity violations, and potential regulatory exposure from unauthorized transaction processing in production systems.
Apply vendor patch: upgrade to Shopperlabs Shopper 2.8.0 or later.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Privilege escalation in Shopper headless e-commerce admin panel prior to version 2.8.0 allows any low-privilege authenti
Privilege escalation in Shopper 2.0.0 through 2.5.x allows an authenticated admin-panel user who holds only the access_d
Stored cross-site scripting in the Shopper headless e-commerce admin panel (2.0.0 up to but not including 2.10.1, plus 3
Permanent deletion of product variants in Shopper's admin panel is possible for any authenticated staff member who holds
Privilege escalation in shopperlabs/shopper prior to 2.8.0 allows any authenticated admin panel user - regardless of ass
Missing authorization enforcement in the Shopper headless e-commerce admin panel (all versions prior to 2.8.0) allows an
Shopper versions prior to 2.10.1 expose administrator and staff profile records to low-privileged admin-panel users thro
Discount over-redemption via race condition in Shopper (shopperlabs/shopper prior to v2.8.0) allows concurrent unauthent
EUVD-2026-33410
GHSA-f946-9qp6-vgch
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB