SECURITY · CH4

입력 검증과 정규화 경계

입력값 검증은 신뢰 경계에서 데이터를 canonicalization한 뒤 allowlist, 길이·범위, 인코딩, 서버 측 검증을 적용하는 방어 절차입니다.

허용 목록과 범위 제한

신뢰 경계
canonicalizationURL 디코딩, 유니코드 정규화, 경로 정리를 먼저 해 우회 표현을 하나로 만듭니다.
allowlist허용 문자, enum 값, 파일 확장자처럼 가능한 값만 통과시키고 denylist 의존을 줄입니다.
length/range수량, 금액, 페이지 번호, 문자열 길이는 최소·최대와 타입 변환 실패를 함께 검사합니다.
encoding검증은 저장 전, 인코딩은 HTML·SQL·shell 등 출력 맥락별로 적용합니다.

검증 처리 순서

server-side
수신raw input
정규화decode·normalize
검증/인코딩allowlist·context
입력 검증과 정규화 점검

open redirect, path traversal, XSS는 정규화 전 검증을 우회합니다. 입력 검증 실패는 거절하고, 필요한 경우 감사 로그에 원본과 사유를 남깁니다.