
Il servizio VTEX Checkout espone i dati di OrderForm attraverso gli endpoint `/api/checkout/pub/orderForm/{orderFormId}` e `/attachments/*`. Questi endpoint non convalidano il tenant (account del negozio) della sessione autenticata rispetto alla proprietà dell'OrderForm richiesto.
Vulnerabilità di autorizzazione cross-tenant e cross-user (IDOR / BOLA) nel servizio Checkout della piattaforma VTEX Commerce.
| Campo | Valore |
|---|---|
| CVE ID | CVE-2026-52217 |
| Fornitore | VTEX |
| Prodotto | Piattaforma VTEX Commerce, servizio Checkout (chk) |
| Versioni affette | Osservato su chk v2.367.3 e riprodotto su v2.374.3. La causa principale risiede nel layer di archiviazione e autorizzazione dell'OrderForm ed è esteso a tutta la piattaforma. |
| Tipo di vulnerabilità | CWE-639 (Bypass dell'autorizzazione tramite chiave controllata dall'utente, IDOR / BOLA); CWE-284 (Controllo di accesso improprio) |
| CVSS 3.1 | 7.7 High, vector AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N |
| Ricercatore | Theo Cia (Guardsi) |
| Stato CVE | Riservato presso MITRE. Divulgazione coordinata con il fornitore in corso. |
I dettagli tecnici completi e la proof of concept non sono pubblicati in questo repository mentre il ricercatore e VTEX completano la divulgazione coordinata secondo la politica di sicurezza pubblicata da VTEX. Sono disponibili per il fornitore e per il CNA assegnante o MITRE per la validazione, su richiesta attraverso il canale privato sottostante. La documentazione completa sarà pubblicata dopo una finestra di divulgazione concordata reciprocamente.
L'oggetto OrderForm del Checkout è indirizzato da un orderFormId, ma non è legato all'account VTEX (tenant) né all'utente autenticato che lo possiede. Per questo motivo, una richiesta che presenta un orderFormId valido può leggere e modificare quell'OrderForm attraverso i confini di account e utente, senza alcun controllo di proprietà sulla sessione.
Un attore che ottiene un orderFormId della vittima può:
L'orderFormId è un token opaco a 128 bit e non è enumerabile, quindi si tratta di un difetto di autorizzazione limitato dall'ottenimento di un identificatore valido, non di un problema di forza bruta.
Associa ogni OrderForm al suo tenant proprietario e, per i carrelli autenticati, al suo utente proprietario. Rifiuta qualsiasi lettura o scrittura da una sessione il cui tenant o utente non corrisponde al proprietario dell'OrderForm, e rifiuta l'accesso anonimo a un OrderForm di proprietà di un utente autenticato.
I passaggi di riproduzione completi e una proof of concept funzionante sono disponibili su richiesta attraverso il canale del fornitore sopra. La proof of concept è stata eseguita solo su account di test di proprietà del ricercatore, utilizzando dati sintetici. Tenerla fuori dalla documentazione pubblica preserva la divulgazione coordinata mentre il problema viene affrontato.
Theo Cia, Guardsi.