Notes
Security2025

애플리케이션 침투 진단 (IDOR · XSS)

운영 중인 서비스를 직접 침투 테스트해 7건의 취약점을 CVSS/CWE로 정리하고 개발팀에 전달. (대상·자격증명 마스킹)

curl과 Python만으로 인증 → IDOR → 데이터 수집까지 재현하고, 발견 취약점을 심각도·CVSS·CWE로 문서화했다.

발견 취약점

취약점심각도CVSSCWE
IDOR — 전체 사용자 정보 노출Critical9.1CWE-639
비밀번호 해시 노출Critical9.1CWE-916
Stored XSSHigh7.1CWE-79
Rate Limiting 부재High7.5CWE-307
계정 잠금 정책 부재High7.0CWE-645
타이밍 공격Medium-High6.5CWE-208
권한 상승Medium4.3CWE-284

총 7건 — Critical 2 · High 3 · Medium-High 1 · Medium 1.

시나리오 ① IDOR — 전체 사용자 노출

  • 일반 계정으로 로그인해 JWT 획득
  • 사용자 조회 API가 소유권 검증 없이 전체 사용자(수백 명)를 반환
  • 응답에 bcrypt 해시·이메일·프로필까지 포함 → 오프라인 크래킹·개인정보 유출로 이어짐

시나리오 ② Stored XSS

  • username 필드에 <script> / <img onerror=...> 페이로드 입력
  • 입력 검증·이스케이프 없이 그대로 저장 → 타 사용자 프로필 조회 시 실행 가능
  • 쿠키/세션 탈취로 확대 가능

권고 사항

  • 객체 소유권 검증(IDOR) · 응답에서 해시 등 민감 필드 제거
  • 입력 검증 + 출력 이스케이프(XSS)
  • Rate Limiting · 계정 잠금 정책 · 로그인 상수시간 비교(타이밍)
Next외부 노출 프린터 차단 — 포트포워딩 → VPN