IgnatiusHeo

설계단계 보안설계기준-디렉토리 서비스 조회 및 결과 검증 본문

자격/SW보안약점진단원

설계단계 보안설계기준-디렉토리 서비스 조회 및 결과 검증

Ignatius Heo 2023. 6. 22. 02:12

작성일: 230621

 

※ 본 게시글은 학습 목적으로 행정안전부·KISA의 소프트웨어 보안약점 진단 가이드, 소프트웨어 개발보안 가이드를 참고하여 작성하였습니다.

 

정리 내용: 소프트웨어 보안약점 진단 가이드(54~57p)

 

유형  입력데이터 검증 및 표현
설계항목  디렉토리 서비스 조회 및 결과 검증
설명
디렉토리 서비스(LDAP 등)을 조회할 때 입력값과 그 조회결과에 대한 유효성 검증방법 설계 및 유효하지 않은 값에 대한 처리방법을 설계한다.

보안대책
 ① LDAP 인증서버로 인증을 구현하는 경우 인증요청을 위해 사용되는 외부입력값은 LDAP 삽입 취약점을
     가지지 않도록 필터링해서 사용해야 한다.


연관된
구현단계
- LDAP 삽입
https://cryptocurrencyclub.tistory.com/119

 

가. 취약점 개요

 

ㅇ 위 내용을 볼 때, 예상 가능한 보안 위협: 공격자가 인가되지 않은 민감 디렉토리 또는 파일에 접근할 수 있을 거 같음

  →  LDAP(Lightweight Directory Access Protocol): TCP/IP 레이어에서 디렉토리 서비스를 조회/수정하는 응용 프로토콜

 

 

나. 설계시 고려사항

 

① LDAP 인증서버로 인증을 구현하는 경우 인증요청을 위해 사용되는 외부입력값은 LDAP 삽입 취약점을 가지지 않도록 필터링해서 사용해야 한다.

  →  DBMS/XML과 유사하게 구조 변경 관련 변수 필터링, 검증 컴포넌트 등이 필요해 보임

 

 

다. 진단 세부사항

 

 ① LDAP 인증서버로 인증을 구현하는 경우 인증요청을 위해 사용되는 외부입력값은 LDAP 삽입 취약점을 가지지 않도록 필터링해서 사용해야 하며, LDAP 질의문 생성 시 사용되는 입력값과 조회결과에 대한 검증방법(필터링 등)을 설계하고 유효하지 않은 값에 대한 처리방법이 명시되어 있는지 확인한다.

  ㅇ  LDAP 조회필터 생성에 사용되는 입력값을 필터링하는 기능이 설계되어 있거나, 안전한 외부라이브러리를 사용하도록 설계되어 있는지 확인

  ㅇ  LDAP 조회기능 구현시, LDAP필터링을 적용하기 위한 코딩규칙이 개발가이드에 정의되어 있는지 확인

  ㅇ  LDAP 필터구문을 변경할 수 있는 입력값을 사용하여 LDAP필터의 규칙이 변경되는지를 점검하기 위한 테스트계획 수립 여부 확인

    → 구문 변경 가능 입력값: = + < > # ; \

 

 

끝.