CVE-2026-53637 Overview
CVE-2026-53637 is an improper workflow enforcement vulnerability in the Sylius eCommerce framework built on Symfony. The flaw resides in the cart FormComponent LiveComponent. When a customer completes an order while the cart page remains open in another tab or window, the stale LiveComponent fails to detect the order's state transition. Authenticated customers can then continue to execute cart actions against the completed order, allowing modification or permanent deletion of an already finalized order. The issue is tracked under [CWE-672] (Operation on a Resource After Expiration or Release).
Critical Impact
An authenticated customer can tamper with or delete completed orders, causing integrity loss for order records and downstream fulfillment, accounting, and reporting systems.
Affected Products
- Sylius versions 2.0.0 through 2.0.17
- Sylius versions 2.1.0 through 2.1.14
- Sylius versions 2.2.0 through 2.2.5
Discovery Timeline
- 2026-09-08 - CVE-2026-53637 published to NVD
- 2026-09-09 - Last updated in NVD database
Technical Details for CVE-2026-53637
Vulnerability Analysis
Sylius uses Symfony UX LiveComponents to render interactive cart pages. The cart FormComponent maintains its view state on the client and re-hydrates the associated Order entity on each server round-trip. The component treats the cart as always mutable and does not re-validate the order's workflow state before executing actions such as item quantity changes, item removal, or full cart deletion.
When a customer opens the cart in one browser context and finalizes checkout in another, the first context still holds a live component tied to what has since become a completed order. The stale component accepts subsequent user interactions and applies them to the persisted Order, bypassing the intended workflow boundary between cart and completed states.
The result is an integrity failure. An authenticated customer, operating only within their own session, can modify line items on a completed order or delete the order entirely from the customer-facing flow.
Root Cause
The root cause is missing workflow state enforcement inside the sylius_shop.twig.component.cart.form service. The component does not check whether the underlying order is still in a cart state before permitting cart actions, violating the expected order lifecycle.
Attack Vector
Exploitation requires an authenticated customer account and the ability to keep the cart page open while completing checkout in another tab or session. No elevated privileges, no user interaction from another party, and no network-adjacent position are required. The attacker only needs to trigger a cart action against the stale component after the order has transitioned to completed.
No verified exploit code has been published. Refer to the Sylius GitHub Security Advisory GHSA-5597-7rmh-97q5 for maintainer-provided technical details.
Detection Methods for CVE-2026-53637
Indicators of Compromise
- Sylius Order records whose state is completed but whose updatedAt timestamp changes after the state transition.
- Order audit or history entries showing item quantity changes or item removals occurring after the order completion event.
- Missing or deleted order records that previously reached the completed state without a corresponding administrative action.
Detection Strategies
- Review application logs for LiveComponent action requests targeting the cart FormComponent where the associated order is no longer in a cart state.
- Correlate customer session activity spanning the checkout completion event with subsequent cart mutation requests from the same user.
- Enable Symfony workflow event logging to record any transitions or mutations attempted against orders outside the cart state.
Monitoring Recommendations
- Alert on database write operations to the sylius_order and sylius_order_item tables that affect rows whose state column equals completed.
- Monitor HTTP requests to LiveComponent endpoints (/_components/...) tied to cart actions, and flag those referencing orders past the checkout stage.
- Track anomalous rates of order deletions initiated from customer sessions versus administrative panels.
How to Mitigate CVE-2026-53637
Immediate Actions Required
- Upgrade Sylius to a patched release: 2.0.18, 2.1.15, or 2.2.6, matching the deployed 2.x branch.
- Audit recent completed orders for post-completion modification or deletion and reconcile with fulfillment and accounting systems.
- Rotate exposed customer sessions if audit results indicate active abuse.
Patch Information
The Sylius maintainers released fixed versions 2.0.18, 2.1.15, and 2.2.6. These releases add workflow state enforcement to the cart FormComponent so it rejects actions on orders that have left the cart state. See the Sylius GitHub Security Advisory GHSA-5597-7rmh-97q5 for release notes and commit references.
Workarounds
- Copy the patched FormComponent class from the fixed release into the application's src/ directory.
- Override the sylius_shop.twig.component.cart.form service definition to point at the local, patched class.
- Restrict order deletion at the persistence layer (for example, via Doctrine event listeners) so completed orders cannot be removed through customer-facing flows until the upgrade is applied.
# Configuration example
# config/services.yaml
services:
Sylius\Bundle\ShopBundle\Twig\Component\Cart\FormComponent: ~
sylius_shop.twig.component.cart.form:
class: App\Twig\Component\Cart\FormComponent
# Point the service alias at your locally patched class
# copied from Sylius 2.0.18 / 2.1.15 / 2.2.6
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

