Skip to main content

Sylius EUVDEUVD-2026-96890

| CVE-2026-108724 MEDIUM
Authorization Bypass Through User-Controlled Key (CWE-639)
2026-10-11 VulnCheck GHSA-8cf2-xcwc-ppqc
6.9
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Reach public shop API endpoint
  2. Exploit
    Request product-review item by id
  3. Execution
    Enumerate sequential review ids
  4. Impact
    Harvest unmoderated reviews and author first names

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
Exploitation Conditions

No special conditions - remote unauthenticated exploitation against default configurations of Sylius where the shop REST API (/api/v2/shop) is exposed, which is standard for storefront deployments. The only prerequisite is network reachability of the shop API endpoint. Limiting factors that bound real-world impact: the flaw is read-only and leaks only low-sensitivity data (review titles, ratings, comments, timestamps, author first names), it does not expose full identities, credentials, or order/payment data, and it does not permit any modification; exposure also assumes the product-review resource exists and IDs are predictably sequential for enumeration.

Impact

This is a genuine but moderate-priority issue, not a top-tier emergency. The supplied CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N, base 6.9) is internally consistent with the description: remote, unauthenticated, low-complexity access to the shop REST API, with only limited confidentiality impact and zero integrity/availability impact. My independent CVSS 3.1 assessment lands at ~5.3 (C:L only), reinforcing that this is an information-disclosure flaw, not a code-execution or data-tampering flaw. Exploitation is trivial - sequential ID enumeration on a public endpoint - and a detailed public technical write-up (hackmd) plus the exact vulnerable source file (AcceptedExtension.php) are referenced, which materially lowers the barrier to exploitation even though no packaged weaponized exploit is cited. No EPSS score and no KEV status were provided in the input, so probabilistic exploitation likelihood and confirmed in-the-wild use cannot be asserted; absence here is unknown, not zero. Weighing the signals: trivial exploitability and public method detail push risk up, while the strictly read-only, low-sensitivity data exposure (review text and author first names) and lack of any confirmed active exploitation keep real-world severity bounded. Treat as a prompt-but-scheduled patch, prioritized higher for merchants whose shop API is internet-facing and who rely on review moderation for brand/compliance reasons.

Exploit ScenarioDerived

An unauthenticated attacker scripts iterative GET requests to /api/v2/shop/product-reviews/{id}, walking sequential numeric IDs. Because the AcceptedExtension moderation filter is not applied to the item operation, the API returns reviews that merchants intentionally hid or rejected, letting the attacker harvest review titles, ratings, comments, timestamps and author first names. A public hackmd write-up documents the exact enumeration technique, so no special tooling is needed.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 11, 2026

Unauthenticated remote attackers can read unmoderated and rejected product reviews on Sylius storefronts through 2.3.0 because the AcceptedExtension Doctrine filter is applied to review collection queries but not to the single-item operation, allowing sequential IDs to be enumerated against GET /api/v2/shop/product-reviews/{id}. The exposure is read-only and limited to low-sensitivity fields - review title, rating, comment, timestamp and author first name - so the practical impact is a moderation/authorization bypass plus minor privacy disclosure rather than credential, order or payment compromise; no public exploit identified at time of analysis. Sylius ships this endpoint as part of the standard shop REST API (/api/v2/shop), which is exposed by default on typical storefront deployments; CVSS 6.9 (v4.0) reflects the confidentiality-only scope, while our own assessment scores it 5.3 under CVSS 3.1 - a genuine but moderate-priority issue, not a top-tier emergency.

RemediationAI

No vendor-released patch identified at time of analysis; the advisory references only upstream source repositories rather than a fixed release, so confirm the current Sylius release notes before assuming any version is corrected. The most direct code-level fix is to extend the API Platform extension registration (src/Sylius/Bundle/ApiBundle/Resources/config/services/extensions.php) so the ProductReview AcceptedExtension applies to the item operation as well as the collection, or to replace the numeric id lookup in the item data provider with an explicit check that the requested review is accepted; this restores parity between the list and detail endpoints at the cost of requiring a custom (or forked) bundle until upstream ships a fix. Until then, effective compensating controls are: block or restrict unauthenticated access to GET /api/v2/shop/product-reviews/{id} at the reverse proxy or WAF while leaving the collection endpoint untouched (side effect: storefront pages that render a single review by ID will fail, so test against your theme/templates first); require authentication or a signed token for review retrieval (side effect: breaks guest browsing of reviews); and add per-IP rate limiting and alerting on /api/v2/shop/product-reviews/* to blunt sequential ID enumeration (side effect: high-traffic storefronts may see false positives). Longer-term hardening is to migrate review identifiers from sequential integers to ULIDs/UUIDs so keys are not guessable, and to add regression tests that assert rejected reviews are unreachable from every route that exposes the resource. Because the issue is read-only and the leaked fields are low sensitivity (title, rating, comment, timestamp, author first name), remediation can be scheduled as a moderate-priority change rather than an emergency hotfix.

Affected VersionsENISA

Sylius 0 ≤2.3.0

Affected Packages

euvd sylius no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Sylius is a Symfony-based e-commerce platform whose headless shop API is built on API Platform atop Doctrine ORM. Moderation of product reviews is enforced by a Doctrine QueryExtension, AcceptedExtension (src/Sylius/Bundle/ApiBundle/Doctrine/ORM/QueryExtension/Shop/ProductReview/AcceptedExtension.php, lines 25-59), which adds a WHERE clause restricting results to accepted reviews. The flaw class is CWE-639 (Authorization Bypass Through User-Controlled Key) - a textbook IDOR: the extension is registered only against certain resource operations in the API bundle's extension configuration (Resources/config/services/extensions.php, lines 63-67), and that wiring omits the item operation, so the filter that guards review listings is never applied when a single review is fetched by its key. The result is inconsistent authorization between the collection and item representations of the same resource: the list endpoint hides rejected/unmoderated reviews, the item endpoint returns them. Because Sylius uses auto-increment integer identifiers for reviews and the item route is publicly reachable, the attacker-controlled key (the {id} path segment) is both guessable and unbounded, defeating the intended access control. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N, VC:L with no integrity or availability impact) confirms a low-complexity, network-reachable, unauthenticated information disclosure; the CPE cpe:2.3:a:sylius:sylius:*:*:*:*:*:*:*:* indicates all Sylius versions through 2.3.0 are in scope, and there is no indication that a non-default configuration or elevated privilege is required - only default exposure of the shop API.

Know when Sylius 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

Vendor (VulnCheck) PRIMARY 6.9 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 5.3 MEDIUM

Remote unauthenticated REST API access (AV:N/AC:L/PR:N/UI:N) with read-only disclosure of limited low-sensitivity review data gives C:L, I:N, A:N and no scope change.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Sylius through 2.3.0 contains an authorization bypass vulnerability that allows unauthenticated attackers to read unmoderated and rejected product reviews because the AcceptedExtension filter is not applied to the item operation. Attackers can enumerate sequential ids on GET /api/v2/shop/product-reviews/{id} to retrieve review titles, ratings, comments, timestamps and author first names, bypassing merchant moderation.

Threat Intelligence Overview

EPSS Score
0.3%
Top 77% exploitable
Prevalence
Medium
open-source Symfony eCommerce platform, moderate adoption, not ubiquitous
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact· derived
Medium

Priority Score

34
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

More in Sylius

View all
CVE-2024-57610 HIGH POC
7.5 Feb 06

A rate limiting issue in Sylius v2.0.2 allows a remote attacker to perform unrestricted brute-force attacks on user acco

CVE-2020-15146 HIGH POC
8.8 Aug 20

In SyliusResourceBundle before versions 1.3.14, 1.4.7, 1.5.2 and 1.6.4, request parameters injected inside an expression

CVE-2020-15143 HIGH POC
8.8 Aug 20

In SyliusResourceBundle before versions 1.3.14, 1.4.7, 1.5.2 and 1.6.4, rrequest parameters injected inside an expressio

CVE-2022-24743 HIGH POC
8.2 Mar 14

Sylius is an open source eCommerce platform. Rated high severity (CVSS 8.2), this vulnerability is remotely exploitable,

CVE-2024-29376 MEDIUM POC
6.4 Apr 22

Sylius 1.12.13 is vulnerable to Cross Site Scripting (XSS) via the "Province" field in Address Book. Rated medium severi

CVE-2022-24749 MEDIUM POC
6.1 Mar 14

Sylius is an open source eCommerce platform. Rated medium severity (CVSS 6.1), this vulnerability is remotely exploitabl

CVE-2022-24752 CRITICAL
9.8 Mar 15

SyliusGridBundle is a package of generic data grids for Symfony applications. Rated critical severity (CVSS 9.8), this v

CVE-2026-31824 HIGH
8.2 Mar 10

Sylius eCommerce Framework is vulnerable to a race condition in promotion and coupon usage limit enforcement, where conc

CVE-2026-68500 HIGH
7.5 Jul 30

Payment-authorization bypass in the Sylius Mollie Plugin (versions before 2.2.8, 3.2.4, and 3.3.1) lets an unauthenticat

CVE-2021-41120 HIGH
7.5 Oct 05

sylius/paypal-plugin is a paypal plugin for the Sylius development platform. Rated high severity (CVSS 7.5), this vulner

CVE-2026-68501 MEDIUM
6.5 Jul 30

Sequential integer order ID enumeration in Sylius MolliePlugin exposes customer PII across all orders without authentica

CVE-2026-31820 MEDIUM
6.5 Mar 10

Authenticated users in Sylius eCommerce can access sensitive customer data belonging to other users through unvalidated

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy