fix(ecommerce): 숨김 리뷰 이미지의 관리자 썸네일을 한시 서명 URL 로 복구

KVE-2026-1914 S-2 게이트가 숨김(HIDDEN) 리뷰 이미지를 무조건 404 차단해,
관리자 리뷰 화면의 <img> 썸네일(인증 헤더를 실을 수 없는 렌더 경로)이 깨졌다.
게시판·페이지 첨부와 동일 설계로, 게이트를 통과한 관리자 응답의 직렬화
시점에만 30분 한시 서명 download URL 을 발급하고 서빙 엔드포인트가 유효
서명을 허용한다. 무서명·변조·만료 요청 게이트와 전시중 리뷰의 무서명
공개 URL(직접 URL/CDN 포함)은 종전과 동일하다.

숨김 리뷰가 이미지와 함께 직렬화되는 경로는 관리자 응답뿐이므로(공개
목록은 VISIBLE 필터, 작성 직후는 이미지 미로드) 서명 발급이 곧 게이트
통과 자격의 위임이다.
This commit is contained in:
HeuJung
2026-08-18 10:54:26 +09:00
parent 04f1066e66
commit 932866da8f
10 changed files with 261 additions and 9 deletions
@@ -9,7 +9,7 @@
### Security
- 비밀 상품 문의의 내용이 작성자·관리자가 아닌 사람에게도 노출되던 문제를 막았습니다. 문의 목록은 게시글의 비밀 여부를 서버에서 확인해, 열람 권한이 없는 요청에는 내용·제목·답변·첨부를 가립니다. (목록의 '비밀글 숨김' 옵션과 무관하게 서버가 요청자 신원으로 노출 여부를 결정합니다.) (KISA 측에서 제보해주셨습니다 — KVE-2026-1914)
- 관리자가 숨긴 리뷰의 이미지가 주소만 알면 계속 조회되던 문제를 수정했습니다. 이제 숨김 처리된 리뷰의 이미지는 제공되지 않습니다. 리뷰가 삭제되어 상태를 확인할 수 없는 이미지도 함께 차단합니다. (KISA 측에서 제보해주셨습니다 — KVE-2026-1914)
- 관리자가 숨긴 리뷰의 이미지가 주소만 알면 계속 조회되던 문제를 수정했습니다. 이제 숨김 처리된 리뷰의 이미지는 제공되지 않습니다. 리뷰가 삭제되어 상태를 확인할 수 없는 이미지도 함께 차단합니다. 관리자 리뷰 화면에 표시되는 숨김 리뷰의 이미지 썸네일은 한시적으로만 유효한 서명 주소로 전달되어, 보호를 유지한 채 정상 표시됩니다. (KISA 측에서 제보해주셨습니다 — KVE-2026-1914)
- 상품·주문·리뷰·브랜드·쿠폰·배송정책·추가배송비 관리에 담당 범위 제한을 적용했습니다. 이 권한들은 "본인이 등록한 것만" 처럼 범위를 좁혀 위임할 수 있는데, 그 제한이 실제로는 어느 관리 화면에서도 적용되지 않았습니다. 목록에서 여러 건을 한 번에 처리하는 일괄 기능뿐 아니라, 항목을 하나씩 수정·삭제하는 화면에서도 마찬가지였습니다. 이제 모든 경로에서 대상마다 범위를 확인하며, 일괄 기능은 범위 밖 대상이 하나라도 섞이면 요청 전체를 거부하고 아무것도 변경하지 않습니다. 범위 제한 없이 위임받은 관리자의 작업은 종전처럼 정상 동작합니다. (KVE-2026-1919)
- 리뷰 작성 시 대상 상품을 요청에 담긴 값이 아니라 실제 구매한 주문 옵션에서 확정하도록 바로잡았습니다. 이전에는 자신의 구매 내역을 근거로 삼되 다른 상품을 대상으로 지정해 리뷰를 남길 수 있었습니다. (sir.kr 커뮤니티의 Xbuilder 님께서 제보해주셨습니다.)
- 다운로드 대상이 아닌 쿠폰(자동 발급·관리자 직접 발급)이나 이미 유효기간이 지난 쿠폰을, 목록에 보이지 않더라도 주소만 알면 직접 내려받을 수 있던 문제를 수정했습니다. 이제 다운로드 발급 조건과 유효기간을 발급 시점에 함께 확인합니다. (sir.kr 커뮤니티의 Xbuilder 님께서 제보해주셨습니다.)