
VTEX Checkout Service는 `/api/checkout/pub/orderForm/{orderFormId}` 및 `/attachments/*` 엔드포인트를 통해 OrderForm 데이터를 노출합니다. 이 엔드포인트들은 인증된 세션의 테넌트(스토어 계정)와 요청된 OrderForm의 소유권을 대조 검증하지 않습니다.
VTEX Commerce Platform Checkout 서비스의 테넌트 간 및 사용자 간 인가 결함 (IDOR / BOLA)
| 필드 | 값 |
|---|---|
| CVE ID | CVE-2026-52217 |
| 공급업체 | VTEX |
| 제품 | VTEX Commerce Platform, Checkout 서비스 (chk) |
| 영향 범위 | chk v2.367.3에서 관찰되었으며 v2.374.3에서 재현되었습니다. 근본 원인은 OrderForm 저장 및 인가 계층에 있으며 플랫폼 전반에 걸쳐 있습니다. |
| 취약점 유형 | CWE-639 (Authorization Bypass Through User-Controlled Key, IDOR / BOLA); CWE-284 (Improper Access Control) |
| CVSS 3.1 | 7.7 높음, 벡터 AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N |
| 연구자 | Theo Cia (Guardsi) |
| CVE 상태 | MITRE에서 예약됨. 공급업체와의 조율된 공개가 진행 중입니다. |
연구자와 VTEX가 VTEX의 공개 보안 정책에 따라 조율된 공개를 완료하는 동안 전체 기술 세부 사항과 개념 증명은 이 저장소에 공개되지 않습니다. 해당 자료는 아래의 비공개 채널을 통해 요청하면 공급업체와 배정된 CNA 또는 MITRE가 검증을 위해 받을 수 있습니다. 전체 보고서는 상호 합의된 공개 기간 이후에 게시될 예정입니다.
Checkout OrderForm 객체는 orderFormId로 식별되지만, 해당 객체를 소유한 VTEX 계정(테넌트)이나 인증된 사용자에게 바인딩되어 있지 않습니다. 따라서 유효한 orderFormId를 제시하는 요청은 세션에 대한 소유권 확인 없이 계정 및 사용자 경계를 넘어 해당 OrderForm을 읽고 수정할 수 있습니다.
피해자의 orderFormId를 획득한 공격자는 다음을 수행할 수 있습니다:
orderFormId는 128비트 불투명 토큰이며 열거가 불가능하므로, 이는 유효한 식별자를 획득해야만 악용할 수 있는 인가 결함이며 무차별 대입(브루트포스) 문제가 아닙니다.
각 OrderForm을 소유 테넌트에 바인딩하고, 인증된 장바구니의 경우 소유 사용자에 바인딩하십시오. 테넌트나 사용자가 OrderForm 소유자와 일치하지 않는 세션의 모든 읽기 또는 쓰기를 거부하고, 인증된 사용자가 소유한 OrderForm에 대한 익명 접근을 거부하십시오.
전체 재현 단계와 동작하는 개념 증명은 위의 공급업체 채널을 통해 요청 시 제공됩니다. 개념 증명은 연구자가 소유한 테스트 계정에 대해서만 합성 데이터를 사용하여 실행되었습니다. 이 내용을 공개 기록에서 제외함으로써 문제가 해결되는 동안 조율된 공개가 유지됩니다.
Theo Cia, Guardsi.