CVE-2026-56831
CVE-2026-56831 · Shopper: Negative discount values accepted and propagated through order calculation pipeline
This page contains facts from public vulnerability sources. Check the original advisory before updating.
Shopper is a Headless e-commerce Admin Panel. Prior to 2.9.0, the /cpanel/discounts administrative interface accepts negative fixed_amount discount values, persists them in sh_discounts, and passes them through vendor/shopper/cart/src/Discounts/DiscountCalculator.php and vendor/shopper/cart/src/Pipelines/Calculate.php without enforcing a positive-value invariant. Because the calculation subtracts discountTotal from the subtotal, a negative discount increases the resulting order total instead of reducing it. Malformed discount records can therefore cause incorrect pricing and financial data integrity failures, although the advisory does not establish a customer-facing exploitation path. This issue is fixed in version 2.9.0.
CVSS 6.5 · Medium · EPSS 0.4% · Fix available
- Published
- Updated
Stack: php
Affected products and versions
shopper
- Versions
- < 2.9.0: Affected
No fix published
shopper/framework Packagist
- Versions
- v2.0.0
- v2.0.0-alpha
- v2.0.0-beta
- v2.0.0-beta10
- v2.0.0-beta11
- v2.0.0-beta12
- v2.0.0-beta13
- v2.0.0-beta14
- v2.0.0-beta15
- v2.0.0-beta16
- v2.0.0-beta17
- v2.0.0-beta18
- v2.0.0-beta19
- v2.0.0-beta2
- v2.0.0-beta20
- v2.0.0-beta21
- v2.0.0-beta3
- v2.0.0-beta4
- v2.0.0-beta5
- v2.0.0-beta6
- v2.0.0-beta7
- v2.0.0-beta8
- v2.0.0-beta9
- v2.0.1
- v2.0.2
- v2.0.3
- v2.1.1
- v2.1.2
- v2.1.3
- v2.1.4
- v2.1.5
- v2.1.6
- v2.2
- v2.2.1
- v2.2.2
- v2.2.3
- v2.2.4
- v2.2.5
- v2.2.6
- v2.2.7
- v2.3
- v2.3.1
- v2.3.2
- v2.3.3
- v2.4.0
- v2.4.1
- v2.4.2
- v2.4.3
- v2.5.0
- v2.5.1
- v2.6.0
- v2.6.1
- v2.6.2
- v2.6.3
- v2.6.4
- v2.7.0
- v2.7.1
- v2.7.2
- v2.7.3
- v2.8.0
- v2.8.1
- Affected ranges
- ECOSYSTEM: < 2.9.0
Update to 2.9.0
Original sources
- https://github.com/shopperlabs/shopper/security/advisories/GHSA-5vf4-452p-jjhf
- https://github.com/shopperlabs/shopper/pull/528
- https://github.com/shopperlabs/shopper/commit/967e616281ded1a0050d9102858ecd7dd7f66a41
- https://github.com/shopperlabs/shopper/releases/tag/v2.9.0
- https://nvd.nist.gov/vuln/detail/CVE-2026-56831