SD-03
🗂️ 디렉토리 서비스 조회 및 결과 검증 (설계)
설계단계 보안설계 · 입력검증
위험도: 중💡 쉽게 말하면
디렉터리(LDAP) 조회에 입력값을 그대로 끼우면, 명단 검색칸에 괄호와 별표 같은 특수기호를 넣어 조건 전체를 비트는 것과 같습니다. 메타문자는 이스케이프하고 허용된 값만 받는 화이트리스트로 설계해야 합니다.
디렉터리(LDAP) 조회에 입력값을 그대로 끼우면, 명단 검색칸에 괄호와 별표 같은 특수기호를 넣어 조건 전체를 비트는 것과 같습니다. 메타문자는 이스케이프하고 허용된 값만 받는 화이트리스트로 설계해야 합니다.
🎯 직접 해보기 — 공격을 실행해 보세요
아래에서 시스템 상태를 취약 또는 안전(조치 적용)으로 바꾼 뒤 공격 실행을 눌러, 같은 공격이 어떻게 다르게 끝나는지 직접 확인하세요.
# 검색 입력에 LDAP 메타문자를 넣어 필터를 통째로 비튼다
# [공격 실행] 버튼을 누르면 시작합니다.
📋 설정 비교 (왜 막혔나?)
✗ 취약한 설정
# 설계 결정
LDAP 필터에 입력값 그대로 결합
→ LDAP 인젝션으로 인증 우회·정보 노출
✓ 안전한 설정
# 설계 결정
LDAP 메타문자 이스케이프 규칙 표준화
허용 문자 화이트리스트 검증
→ 필터 변조 차단
🔧 조치 방법
- LDAP 특수문자(*,(,),\ 등) 이스케이프를 공통 규칙으로 설계합니다.
- 디렉토리 조회 입력은 화이트리스트 기반 검증을 거치도록 설계합니다.
- 디렉토리 계정 권한도 최소화합니다.
✅ 점검 체크리스트
- LDAP 이스케이프 규칙이 표준화됨
- 화이트리스트 검증이 설계됨
점검기준: 개발보안 설계기준 1.3 디렉토리 서비스 조회 및 결과 검증