
The VTEX Checkout Service exposes OrderForm data through the endpoints `/api/checkout/pub/orderForm/{orderFormId}` and `/attachments/*`. These endpoints do not validate the tenant (store account) of the authenticated session against the ownership of the requested OrderForm.
Cross-tenant and cross-user authorization flaw (IDOR / BOLA) in the VTEX Commerce Platform Checkout service.
| Field | Value |
|---|---|
| CVE ID | CVE-2026-52217 |
| Vendor | VTEX |
| Product | VTEX Commerce Platform, Checkout service (chk) |
| Affected | Observed on chk v2.367.3 and reproduced on v2.374.3. The root cause is in the OrderForm storage and authorization layer and is platform wide. |
| Vulnerability type | CWE-639 (Authorization Bypass Through User-Controlled Key, IDOR / BOLA); CWE-284 (Improper Access Control) |
| CVSS 3.1 | 7.7 High, vector AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N |
| Researcher | Theo Cia (Guardsi) |
| CVE status | Reserved at MITRE. Coordinated disclosure with the vendor in progress. |
Full technical detail and the proof of concept are not published in this repository while the researcher and VTEX complete coordinated disclosure under VTEX's published security policy. They are available to the vendor, and to the assigning CNA or MITRE for validation, on request through the private channel below. The full write-up will be published after a mutually agreed disclosure window.
The Checkout OrderForm object is addressed by an orderFormId, but it is not bound to the VTEX account (tenant) or to the authenticated user that owns it. Because of that, a request presenting a valid orderFormId can read and modify that OrderForm across account and user boundaries, with no ownership check on the session.
An actor who obtains a victim's orderFormId can:
The orderFormId is a 128-bit opaque token and is not enumerable, so this is an authorization flaw gated by obtaining a valid identifier, not a brute-force issue.
Bind each OrderForm to its owning tenant and, for authenticated carts, to its owning user. Reject any read or write from a session whose tenant or user does not match the OrderForm owner, and reject anonymous access to an OrderForm owned by an authenticated user.
Complete reproduction steps and a working proof of concept are available on request through the vendor channel above. The proof of concept was executed only against test accounts owned by the researcher, using synthetic data. Keeping it out of the public record preserves coordinated disclosure while the issue is being addressed.
Theo Cia, Guardsi.