3. LDAP 인젝션

박소정·2023년 7월 15일
0

IT@Security

목록 보기
5/5

LDAP 인젝션

LDAP(Lightweight Directory Access Protocol) 인젝션
: 사용자의 입력값이 LDAP Query에 직접 영향을 끼칠 수 있을 때 이를 통해 비정상적인 LADP 동작을 유도하는 공격 방법이다.

  • SQL Injection 방식과 거의 동일하다.
  • 로그인 ID, Password에 많이 사용된다.

※ LDAP: TCP/IP 위에서 Direct Service를 조회하고 수정하는 Application Protocol이지만, 보통은 기업 인프라에서 사람, 기기 등의 인증에서 사용되는 경우가 많다.


취약점 분석

취약점 개요
점검내용웹페이지 내 LDAP 인젝션 취약점 점검
점검목적취약한 시스템에 신뢰할 수 없는 LDAP 코드 삽입 공격을 통한 비인가자의 악의적인 행위를 차단하기 위함
보안위협- 응용 프로그램이 사용자 입력 값에 대한 적절한 필터링 및 유효성 검증을 하지 않아 공격자는 로컬 프록시를 사용함으로 LDAP문의 변조가 가능함
- 공격 성공 시 승인되지 않은 쿼리에 권한을 부여하고, LDAO 트리 내의 내용 수정이나 임의의 명령 실행을 가능하게 하므로 적절한 필터링 로직을 구현하여야 함

점검대상 및 판단기준
대상웹 애플리케이션 소스코드, 웹 방화벽
판단기준- 양호: 임의의 LDAP 쿼리 입력에 대한 검증이 이루어져 변조된 쿼리가 실행되지 않는 경우
- 취약: 임의의 LDAP 쿼리 입력에 대한 검증이 이루어지지 않아 변조된 쿼리가 실행되는 경우
조치방법 지정된 문자열만 입력 허용하고, 임의의 LDAP 쿼리 입력에 대한 검증 로직 구현

점검 및 조치사례

  1. 입력값에 변조된 LADP 쿼리 삽입 후 오류페이지 나오는지 확인

  1. 별다른 오류 페이지가 보이지 않음.

보안설정방법

  • 사용자 입력 값을 화이트 리스트로 지정하여 영문과 숫자만을 허용
  • DN(Distingusihed name)과 필터에 사용되는 사용자 입력 값에는 특수문자가 포함되지 않도록 특수문자 제거
  • 특수문자를 사용해야 하는 경우 특수문자에 대해서는 실행 명령이 아닌 일반문자로 인식되도록 처리


참고
https://www.hahwul.com/cullinan/ldap-injection/
주요정보통신기반시설 기술적 취약점 분석 평가 방법 상세가이드

0개의 댓글

관련 채용 정보