김나영 이글루시큐리티 사이버위협분석팀 과장

[아이티데일리] 최근 몇 년 사이에 DDoS(디도스) 공격 트래픽이 대형화되고 공격 유형 또한 지능화 되면서 방화벽(F/W) 및 침입방지시스템(IPS)과 같은 보안장비를 이용한 DDoS 공격 방어에 한계가 노출되어, 보다 효과적으로 방어하기 위한 Anti-DDoS 전용 대응장비들이 출시되었다.

Anti-DDoS 대응장비의 DDoS 방어 기술은 유입되는 트래픽 내 특정 패턴 검사를 통한 시그니쳐 기반 방어기술, 프로토콜 및 서비스 트래픽량(BPS, PPS) 증가에 따른 임계치 기반 방어기술, Client와 Server간 통신과정 중 인증을 통한 인증 기반 방어기술 등이 존재하며 이번 칼럼을 통해 인증기반 방어기술에 대한 주요기술을 알아보겠다.

인증기반의 DDoS 방어기술은 <그림 1>과 같이 Anti-DDoS 대응장비가 Client와 Server간 통신 중간에 위치하여 Client에 대한 인증을 수행하며, 전송 레벨에서 인증을 수행하는 TCP SYN Authentication과 서비스 레벨에서 인증을 수행하는 HTTP Authentication 기술을 통해 정상 사용자와 DDoS 공격자를 구분한다.

▲ <그림 1> 인증기반의 DDoS 대응기술

1. TCP SYN Authentication

전송레벨에서 인증을 수행하는 TCP SYN Authentication은 TCP Reset과 TCP Out-of-Sequence를 이용한 인증 방법이 존재한다.

TCP Reset을 이용한 인증 방법은 <그림 2>와 같이 Anti-DDoS 대응장비가 Client와 Server간 TCP 연결설정(3Way-Handshake) 과정을 Server 대신 설정하고 연결해제(RST) 함으로써 Client를 인증한다. 이때 정상적인 사용자는 운영체제에 설정된 TCP 재연결시도 횟수만큼 연결 시도함으로써 Server와 통신이 이루어지며 재연결 시도가 없는 사용자는 DDoS 공격자로 판단되어 Anti-DDoS 대응장비에 차단된다.

▲ <그림 2> TCP SYN Authentication(TCP Reset) 절차

TCP Out-of-Sequence을 이용한 인증 방법은 <그림 3>과 같이 Client의 연결설정 과정 시 Anti-DDoS 대응장비가 SYN에 대한 잘못된 ACK 번호를 전송함으로써 고의적인 연결해제 상황을 만들어 Client를 인증한다. 이때 정상 사용자는 TCP 재연결 시도를 하며 연결 시도가 없는 사용자는 Anti-DDoS 대응장비에 차단된다.

▲ <그림 3> TCP SYN Authentication(TCP out-of-sequence) 절차

2. HTTP Authentication

웹 서비스레벨에서 인증을 수행하는 HTTP Authentication은 HTTP 응답코드를 이용한 302 Redirect, 웹브라우저의 쿠키처리를 이용한 Cookie 인증, 스크립트 처리를 이용한 Javascript 인증 방법이 존재한다.

HTTP 302 Redirect는 <그림 4>와 같이 Anti-DDos 대응장비가 Client의 GET 요청을 받아 302 redirect 코드와 Location 정보를 응답하고 Client가 해당 응답에 대한 Location 정보를 참조하면 Client를 인증한다. 이때 웹브라우저를 통해 접근한 사용자는 302 Redirect 처리 후 Server와 정상적인 통신을 수행하지만 웹브라우저를 사용하지 않고 접근한 사용자는 302 Redirect를 처리하지 못함에 따라 DDoS 공격자로 판단되어 Anti-DDoS 대응장비에 차단된다.

▲ <그림 4> HTTP Authentication(HTTP 302 Redirect) 절차

HTTP Cookie는 웹브라우저의 Cookie 처리 기능을 이용한 인증 방법으로 <그림 5>와 같이 앞서 설명한 HTTP 302 Redirect 인증 방법에 Cookie 값을 부여하여 Client를 인증한다. 이때 정상적인 사용자라면 Anti-DDoS 대응장비가 부여한 Cookie 값을 이용해 접근 할 것이며 Cookie 값을 처리하지 못한 사용자는 Anti-DDoS 대응장비에 차단된다.

▲ <그림 5> HTTP Authentication(HTTP Cookie) 절차

Javascript 인증은 웹브라우저의 스크립트 문서처리를 이용한 인증 방법으로 <그림 6>과 같이 Anti-DDoS 대응장비가 Javascript를 Client에게 전달하여 사용자의 처리 여부에 따라 Client를 인증한다. 이때 전달되는 Javascript 문서는 사용자로 하여금 특정 메시지 전송 및 마우스 클릭 등을 요구할 수 있으며 해당 문서를 처리하지 못한 사용자는 DDoS 공격자로 판단하여 Anti-DDoS 대응장비에 차단된다.

▲ <그림 6> HTTP Authentication(Javascript 인증) 절차

지금까지 Anti-DDos 대응장비의 방어기술 중 DDoS 공격 발생시 Client의 인증을 통해 공격자를 차단하는 인증 기반의 DDoS 방어기술을 알아보았다. 이러한 방어기술은 스푸핑 된 공격 또는 프로그래밍 된 봇넷 및 공격도구를 이용한 DDoS 공격을 손쉽게 방어 할 수 있다. 하지만 Anti-DDoS 대응장비의 방어측면에서는 보호 서버에 접근하는 모든 Client를 대상으로 인증처리를 수행함에 따라 고용량의 처리 기술이 요구된다.

 

 

저작권자 © 아이티데일리 무단전재 및 재배포 금지