문서의 각 단락이 어느 리비전에서 마지막으로 수정되었는지 확인할 수 있습니다. 왼쪽의 정보 칩을 통해 작성자와 수정 시점을 파악하세요.

CLDAP | |
정식 명칭 | Connection-less Lightweight Directory Access Protocol |
유형 | 네트워크 프로토콜 디렉터리 서비스 프로토콜 |
기반 프로토콜 | LDAP |
주요 용도 | 디렉터리 서비스 쿼리 |
전송 프로토콜 | UDP |
상세 정보 | |
특징 | 연결 설정 없이 요청/응답 교환 LDAP의 경량화 버전 |
표준 문서 | RFC 1798 |

CLDAP은 Connection-less Lightweight Directory Access Protocol의 약자이다. 이는 디렉터리 서비스 쿼리를 위한 네트워크 프로토콜로, LDAP를 기반으로 한다. LDAP의 핵심 기능 중 하나인 디렉터리 정보 조회를 단순화한 형태이다.
주요 특징은 연결 지향 통신을 하지 않는다는 점이다. 기반 전송 프로토콜로 TCP 대신 UDP를 사용하여, 연결 설정 과정 없이 빠른 요청과 응답이 가능하다. 이로 인해 오버헤드가 적고 속도가 빠르다는 장점이 있다.
이 프로토콜은 주로 디렉터리 서비스에 대한 간단한 조회 작업에 사용된다. 예를 들어, 사용자 인증 정보나 네트워크 리소스의 위치를 빠르게 확인하는 용도로 활용될 수 있다. 그러나 연결 없는 특성은 보안 측면에서 취약점으로 작용하기도 한다.

CLDAP은 LDAP의 경량화된 변종이다. LDAP은 디렉터리 서비스에 접근하기 위한 표준 네트워크 프로토콜로, 일반적으로 TCP를 전송 계층으로 사용한다. 이에 비해 CLDAP은 연결 지향적인 TCP 대신 비연결형 UDP를 사용한다는 점이 가장 큰 차이점이다.
이러한 설계는 LDAP 세션을 수립하고 유지하는 데 필요한 오버헤드를 줄이는 것을 목표로 한다. UDP는 핸드셰이크 과정이 없고 상태를 유지하지 않아, 단순한 요청과 응답 교환에 더 효율적이다. 따라서 CLDAP은 빠른 응답 시간이 요구되고, 신뢰성보다는 속도가 더 중요한 특정 디렉터리 서비스 쿼리 환경에서 사용되었다.
CLDAP의 개발 배경에는 초기 네트워크 환경에서의 자원 제약과 성능 최적화 요구가 있었다. 마이크로소프트의 액티브 디렉토리와 같은 일부 디렉터리 서비스 구현체에서 특정 기능을 지원하기 위해 이 프로토콜을 활용한 것으로 알려져 있다. 그러나 UDP의 비연결적 특성은 이후 심각한 보안 취약점으로 이어지는 근본 원인이 되기도 했다.

CLDAP는 LDAP의 경량화된 변형으로, UDP를 전송 프로토콜로 사용한다. TCP를 사용하는 일반 LDAP과 달리, 연결 설정 과정 없이 데이터그램을 통해 직접 요청과 응답을 교환하는 비연결형 통신 방식을 채택한다. 이는 디렉터리 서비스에 대한 간단한 조회 작업에 적합하도록 설계되었다.
작동 방식은 클라이언트가 UDP 패킷에 LDAP 조회 요청을 담아 디렉터리 서버의 지정된 포트(일반적으로 389번)로 전송하는 것으로 시작한다. 서버는 해당 요청을 처리한 후, 마찬가지로 별도의 UDP 패킷에 응답 데이터를 담아 클라이언트에게 회신한다. 이 과정에서 핸드셰이크나 세션 유지와 같은 연결 상태 관리가 필요하지 않다.
이러한 구조는 빠른 응답과 낮은 오버헤드를 장점으로 하지만, 패킷 손실이나 재전송 제어와 같은 신뢰성 보장 메커니즘을 프로토콜 자체에서 제공하지 않는다. 따라서 네트워크 상태에 따라 응답이 손실되거나 중복될 수 있으며, 필요한 경우 애플리케이션 수준에서 처리해야 한다. 주로 사용자나 시스템 리소스에 대한 기본적인 정보 조회와 같은 간단한 쿼리 작업에 활용된다.

CLDAP는 UDP를 기반으로 하기 때문에 본질적으로 연결 지향적이지 않으며, 이는 보안 취약점의 주요 원인이 된다. UDP는 3-way handshake와 같은 연결 설정 절차가 없어 스푸핑 공격에 취약하며, 패킷의 출처를 쉽게 위조할 수 있다. 이러한 특성은 CLDAP를 DDoS 공격의 증폭기로 악용하는 데 악용된다.
공격자는 IP 스푸핑을 통해 공격 대상의 IP 주소를 출발지로 위조한 작은 CLDAP 요청 패킷을 다수의 CLDAP 서버로 전송한다. 서버는 이에 응답하여 요청보다 훨씬 큰 응답 패킷을 공격 대상으로 보내게 되는데, 이로 인해 대역폭이 소진되는 DDoS 공격이 발생한다. 이 공격 기법은 DNS 증폭 공격과 유사한 원리로 작동하며, 높은 증폭 비율을 보인다.
이러한 취약점을 완화하기 위해 네트워크 관리자는 불필요한 CLDAP 서비스 포트(일반적으로 UDP 389 포트)를 외부 네트워크에 노출하지 않도록 방화벽 규칙을 설정하는 것이 권장된다. 또한, 인터넷 서비스 제공자 수준에서 출발지 IP 주소가 위조된 패킷을 필터링하는 BCP38과 같은 인그레스 필터링 기법을 적용하는 것이 효과적이다.

CLDAP는 UDP 기반의 경량 디렉터리 서비스 프로토콜로서, LDAP의 연결 지향적 오버헤드를 줄여 빠른 단일 질의 응답이 필요한 환경에서 주로 활용된다. 인터넷 서비스 제공자나 대규모 기업 네트워크에서는 사용자 정보, IP 주소 또는 네트워크 자원의 위치를 빠르게 조회하기 위해 CLDAP 쿼리를 사용할 수 있다. 또한, 도메인 네임 시스템과 유사하게 디렉터리 내 특정 객체에 대한 기본 정보를 효율적으로 가져오는 데 적합하다.
주요 사용 사례로는 인증 서버에 대한 사용자 계정 존재 여부 확인, 이메일 주소 검증, 또는 네트워크 관리 도구에서 장비의 속성을 간헐적으로 조회하는 작업 등이 포함된다. LDAP 서버에 대한 핑 또는 상태 확인과 같은 간단한 모니터링 목적으로도 사용될 수 있다. 이러한 사용은 TCP 연결을 수립하고 유지하는 데 드는 비용 없이 빠른 요청-응답 사이클을 가능하게 한다.
사용 분야 | 주요 목적 | 비고 |
|---|---|---|
네트워크 관리 | 사용자/장비 정보 빠른 조회 | 상태 확인, 속성 검색 |
인증 시스템 | 계정 존재 여부 확인 | 로그인 전 초기 검증 |
디렉터리 서비스 | 리소스 위치 검색 | 이메일, 프린터, 서버 주소 조회 |
그러나 CLDAP는 UDP의 특성상 연결 상태를 관리하지 않으며, 신뢰성 있는 전송이나 대용량 데이터 교환에는 적합하지 않다. 따라서 복잡한 검색이나 디렉터리 수정 작업은 여전히 전통적인 LDAP over TCP에 의존한다. CLDAP의 사용은 주로 읽기 전용이고 응답이 작은 단순 쿼리 환경으로 제한된다는 점이 특징이다.
