fix(auth): 프록시 캐시 쿠키 URI 바인딩으로 권한 우회 방지 #30

병합
htlee feature/proxy-auth 에서 develop 로 1 commits 를 머지했습니다 2026-03-25 14:39:22 +09:00
소유자

변경 사항

  • gc_proxy_auth 캐시 토큰에 요청 URI 해시를 포함
  • 토큰 형식: userId:expiry:hmacuserId:uriHash:expiry:hmac
  • 다른 URL에서 발급된 캐시 쿠키로 권한 없는 서비스 접근 차단

관련 이슈

  • snp-api 권한만 있는 사용자가 snp-sync 등 다른 프록시 서비스에 접근 가능했던 보안 취약점 수정

테스트

  • 빌드 성공 확인
  • snp-api 권한 사용자로 snp-sync 접근 시 403 반환 확인
  • 동일 URL 캐시 히트 정상 동작 확인
  • 운영 서버 수동 배포 및 검증 완료
## 변경 사항 - gc_proxy_auth 캐시 토큰에 요청 URI 해시를 포함 - 토큰 형식: `userId:expiry:hmac` → `userId:uriHash:expiry:hmac` - 다른 URL에서 발급된 캐시 쿠키로 권한 없는 서비스 접근 차단 ## 관련 이슈 - snp-api 권한만 있는 사용자가 snp-sync 등 다른 프록시 서비스에 접근 가능했던 보안 취약점 수정 ## 테스트 - [x] 빌드 성공 확인 - [x] snp-api 권한 사용자로 snp-sync 접근 시 403 반환 확인 - [x] 동일 URL 캐시 히트 정상 동작 확인 - [x] 운영 서버 수동 배포 및 검증 완료
htlee added 1 commit 2026-03-25 14:39:08 +09:00
gc_proxy_auth 캐시 토큰에 요청 URI 해시를 포함하여
다른 URL에서 발급된 캐시 쿠키로 권한 없는 서비스에
접근할 수 없도록 수정

- 토큰 형식: userId:expiry:hmac → userId:uriHash:expiry:hmac
- generateProxyCacheToken/validateProxyCacheToken에 targetUri 파라미터 추가
- AuthController에서 캐시 검증 전 X-Original-URI 추출

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
claude-bot 이 변경사항을 승인하였습니다. 2026-03-25 14:39:15 +09:00
claude-bot left a comment
멤버

보안 수정 승인 (via claude-bot)

보안 수정 승인 (via claude-bot)
htlee merged commit a6220c51d3 into develop 2026-03-25 14:39:22 +09:00
htlee 삭제된 브랜치 feature/proxy-auth 2026-03-25 14:39:22 +09:00
"로그인하여 이 대화에 참여"
No reviewers
레이블 없음
마일스톤 없음
담당자 없음
참여자 2명
알림
마감일
기한이 올바르지 않거나 범위를 벗어났습니다. 'yyyy-mm-dd'형식을 사용해주십시오.

마감일이 설정되지 않았습니다.

의존성

No dependencies set.

Reference: gc/gc-guide-api#30
No description provided.