| 제목 | macrozheng mall latest master before fix Improper Authorization |
|---|
| 설명 | An improper authorization vulnerability exists in mall-portal order payment success handling.
The endpoint POST /order/paySuccess accepts user-controlled orderId and payType parameters and directly updates an unpaid order to paid status without verifying that the order belongs to the currently authenticated portal member and without validating a trusted payment-provider callback, transaction id, amount, or signature.
Source-level chain:
POST /order/paySuccess?orderId=<id>&payType=<type>
→ OmsPortalOrderController.paySuccess(orderId, payType)
→ OmsPortalOrderServiceImpl.paySuccess(orderId, payType)
→ update oms_order set status=1 where id=orderId and status=0 and delete_status=0
→ portalOrderDao.getDetail(orderId)
→ reduceSkuStock(...) for each order item
The missing ownership and payment-proof checks allow an authenticated portal member to force an unpaid order into paid/to-ship state and trigger inventory reduction. If the orderId belongs to another user, this also becomes a business-logic IDOR issue.
Impact includes unauthorized payment-state transition, order integrity compromise, and inventory reduction without verified payment. |
|---|
| 원천 | ⚠️ https://github.com/macrozheng/mall |
|---|
| 사용자 | feng123123 (UID 95215) |
|---|
| 제출 | 2026. 04. 26. AM 07:34 (1 월 ago) |
|---|
| 모더레이션 | 2026. 05. 23. PM 04:06 (27 days later) |
|---|
| 상태 | 중복 |
|---|
| VulDB 항목 | 322183 [macrozheng mall 까지 1.0.3 /order/paySuccess orderId 권한 상승] |
|---|
| 포인트들 | 0 |
|---|