← 수행 사례

회원 기반
서비스 플랫폼

인증과 접근 통제, API 응답을 검증하고 후속 점검을 통해 개선 여부를 확인했습니다.

프로젝트 개요

과제
사용자 간 데이터 접근과 인증 정보의 유효 범위 검증
수행 범위
로그인·로그아웃 · 사용자별 권한 · 프로필 API
제공 결과
취약점의 재현 절차와 증적, 개선 권고 및 후속 점검

사용자 권한과 데이터의 경계를 검증.

테스트 계정을 분리해 다른 사용자의 데이터에 접근할 수 있는지 확인했습니다. 로그아웃 이후의 인증 처리와 API가 반환하는 정보도 함께 점검했습니다.

  • 사용자 식별값 변경에 따른 타 계정 정보 노출
  • 로그아웃 후 기존 인증 정보의 유효성
  • API 응답에 포함된 불필요한 개인정보와 인증 관련 필드

고객과 제품의 식별정보를 제외했습니다. 기술 예시는 설명을 위해 재구성했으며, 과거 진단 당시의 관찰 내용입니다. 현재 고객사의 보안 상태나 수정 완료 여부를 나타내지 않습니다.

검증 내용 자세히 보기

관심 있는 항목을 선택하면 검증 과정과 기술 근거를 확인할 수 있습니다.

사용자 간 접근 권한
01ACCESS CONTROL / IDOR · BOLA익명 재구성 사례

사용자 식별값 변경으로
다른 계정의 정보가 노출됐습니다.

로그인한 사용자가 요청 대상의 식별값을 변경하면, 접근 권한이 없는 다른 계정의 정보가 반환됐습니다.

위험과 영향

본인 정보만 조회할 수 있어야 하는 기능에서 다른 사용자의 개인정보가 노출됐습니다. 일반 사용자 권한만으로도 해당 정보에 접근할 수 있었습니다.

검증 방법

테스트 계정 A와 B를 분리하고, A의 인증 정보로 B의 데이터를 요청했습니다. 화면에 표시되는 메뉴와 관계없이 서버가 권한 없는 요청을 거부하는지 확인했습니다.

개선 권고

각 요청에서 데이터의 소유자·공유 관계·사용자 역할을 확인하도록 권고했습니다. 식별값을 추측하기 어렵게 바꾸는 것만으로 접근 통제 문제가 해결되지는 않습니다.

RETEST CRITERIA

재검증 기준

권한이 없는 계정의 요청은 거부되고, 소유자나 허용된 사용자의 요청은 정상 처리되는지 확인합니다.

로그아웃 이후 인증 처리
02AUTHENTICATION / SESSION LIFECYCLE익명 재구성 사례

로그아웃 후에도
기존 인증 정보가 유효했습니다.

화면에서는 로그아웃 처리됐으나, 서버에서 기존 인증 정보가 무효화되지 않은 사례입니다.

위험과 영향

인증 정보가 탈취된 경우, 사용자가 로그아웃한 뒤에도 무단 접근이 지속될 수 있습니다. 로그아웃 시 화면 전환과 서버의 인증 처리가 정책에 맞게 연동되는지 확인해야 합니다.

검증 방법

로그인 상태에서 보호된 요청을 기록하고, 로그아웃 후 같은 인증 정보로 요청을 다시 보냈습니다. 계정 상태와 인증 수단에 따른 응답을 구분해 확인했습니다.

개선 권고

로그아웃과 계정 비활성화 시 적용할 세션 정책을 정하고, 서버에서 인증 정보의 유효 상태를 확인하도록 권고했습니다. 발급·갱신·만료 처리도 함께 점검하도록 했습니다.

RETEST CRITERIA

재검증 기준

로그아웃으로 무효화하기로 한 인증 정보가 거부되는지 확인합니다. 새로 로그인한 정상 계정은 계속 사용할 수 있어야 합니다.

API 응답의 정보 노출
03API SECURITY / DATA EXPOSURE익명 재구성 사례

API 응답에 불필요한
개인정보가 포함돼 있었습니다.

화면에서는 일부 정보만 보여주지만, 서버 응답에는 업무에 필요하지 않은 개인정보와 인증 관련 필드까지 포함된 사례입니다.

위험과 영향

화면에 표시하지 않는 데이터도 브라우저에 전달되면 사용자가 읽을 수 있습니다. 반환할 항목을 서버에서 제한해야 합니다.

검증 방법

화면에 표시되는 항목과 API가 반환하는 항목을 비교했습니다. 중첩된 사용자 객체와 여러 조회 경로에 불필요한 정보가 반복해서 포함되는지도 확인했습니다.

개선 권고

데이터베이스 객체를 그대로 반환하지 않고, 해당 기능에 필요한 항목으로 응답을 제한하도록 권고했습니다. 인증 관련 정보는 별도로 제외하고 유사한 API도 함께 검토하도록 했습니다.

RETEST CRITERIA

재검증 기준

목록·상세·검색 등 관련 응답에서 불필요한 필드가 제거됐는지, 화면에 필요한 정보는 정상 제공되는지 확인합니다.

인증과 권한, 실제 동작으로 확인합니다.

서비스의 사용자 역할과 데이터 흐름에 맞춰 진단 범위를 논의합니다.

프로젝트 문의
ANONYMISED / SAMPLE REPORT
FELSEN SECURITY / WEB ASSESSMENT

보안 진단
보고서 예시

실제 진단 보고서의 양식을 따른 한국어 익명 발췌본입니다. 고객 식별정보를 제외했으며, 생략한 부분은 ‘…중략…’으로 표시했습니다.

경영진 요약
취약점 분포와 조치 우선순위를 정리합니다.
점검 범위와 방법
진단 대상과 검증 방법, 점검 범위를 명시합니다.
상세 분석 발췌
HSTS 헤더 미설정과 입력 형식 검증 사례를 응답 예시와 함께 설명합니다.
개선 권고
취약점의 영향과 필요한 개선 조치를 제시합니다.

한국어 · PDF · 8쪽 · 739 KB

과거 진단 내용을 익명으로 재구성했습니다. 현재 고객사의 보안 상태나 수정 완료 여부를 나타내지 않습니다.

PRIVACY NOTE

문의 정보 처리 안내

이 사이트의 문의 양식은 입력 내용을 자체 서버로 전송하거나 브라우저 저장소에 보관하지 않습니다. 방문 분석 도구와 마케팅 쿠키를 사용하지 않습니다.

이메일 버튼은 사용자의 이메일 앱을 엽니다. 실제 발송은 이메일 앱에서 직접 진행하며, 문의에 필요한 최소한의 정보만 기재해 주세요. 비밀번호, 접근 토큰, 실제 고객 데이터는 보내지 마세요.

문의 내용 복사와 파일 저장은 버튼을 누를 때 기기 안에서 처리합니다. 웹 호스팅 제공자가 서비스 운영에 필요한 접속 정보를 처리할 수 있습니다.

문의 및 정보 삭제 요청: mingi.hong@gainge.com