▶논문 선정 이유
전공 수업 중 데이터통신 및 네트워크 수업에서 DNS 서버를 배우면서 DDoS 공격에 대해 알게 되었다. 당시 수업에선 자세히 배우진 않아 따로 논문을 찾아보던 중 전반적인 DDoS 공격과 RDDoS 공격, 방어 시스템에 관련된 논문을 읽게 되었다.
▶DDoS 공격 종류
1. DDoS(Distributed Denial of Service)
공격자가 악성코드에 감염된 다수의 좀비 PC를 이루는 봇넷에 공격 명령을 내려 공격 대상 시스템에 대규모 트래픽을 발생시키는 공격
※봇넷(Bot-Net) : 악성코드에 감염되어 공격자에 의해 조종되는 컴퓨터 네트워크
<예시: IoT 봇넷을 이용한 DDoS 과정>
공격자가 IoT 장비를 악성코드로 감염시킨 후 IoT 봇넷 네트워크를 구성하여 공격 대상에게 DDoS를 수행하는 방식
※IoT(사물 인터넷): 센서가 장착된 연결된 오브젝트와 장치(사물)로 이루어진 네트워크로 다른 사물 및 시스템과 데이터를 전송하고 수신할 수 있다.
2. DRDoS(Distributed Reflection DoS)
① 공격 대상의 IP 주소로 변조하여 외부에 노출된 서버에 요청하고 외부에 노출된 서버는 공격 대상 IP 주소를 증폭한다.
② 패킷 전송을 통해 공격 대상에게 대규모 응답 메시지가 발생하게 유도하여 시스템이 장애가 발생하도록 하는 공격이다.
- 다수의 좀비 PC 없이 공격 대상에게 대규모 트랙픽 발생
- 실제 공격이 공격자와 무관한 외부의 노출된 서버를 통해 수행함으로써 공격자의 위치가 노출되지 않음
3. DNS 세탁 공격
신뢰가 있는 DNS를 이용하여 불법 트래픽을 정상적인 트래픽인 것처럼 위장하여 DDoS를 수행하는 공격
① 공격자가 공격 대상이 관리하는 도메인에 대한 서브 도메인을 랜덤화하여 쿼리를 요청한다.
② 재귀적 DNS는 랜덤한 서브 도메인을 찾지 못해 해당 도메인을 관리하는 DNS 서버에 쿼리를 전송한다.
③ 공격 대상 서버는 대규모의 쿼리를 요청 받게 되어 정상적으로 쿼리를 실행할 수 없게된다.
※재귀적 쿼리: Local DNS 서버가 여러 DNS 서버에게 차례대로 물어봐서 그 답을 찾는 과정
- ISP 사업자의 IP 주소와 같은 신뢰성 있는 DNS 주소를 이용하여 공격 -> 정상적 쿼리와 악의적 쿼리를 구분하기 어려움
4. RDDoS(Ransum Distributed Denial of Service)
기업 또는 기관을 대상으로 협박 메일을 전송하여 금전을 요구하는 방식에 따라 DDoS를 수행하는 공격
① 공격자가 관리자에게 협박 메일 전송
② 공격자가 제어하는 봇넷 기기들에게 공격을 명령하여 IoT 장비, 반사 서버, 좀비 PC를 통해 생성된 대규모 트래픽을 공격 대상 서버에 발생시켜 시스템 장애 발생
※반사 서버: 네트워크 트래픽을 반사시켜 공격 대상을 가로막는 데 사용되는 서버
- 상대방을 속이는 기술과 해당 시스템에 침투하기 위한 고급 기술이 필요하지 않음
- 전문적인 지식도 필요하지 않음
-> 단순 DDoS 공격만 실행하면 됨
- 협박 메일 속 악성코드가 담겨있는 링크를 클릭하도록 유도하여 데이터의 암호화 및 유출 등의 2차 협박에도 활용 가능
▶기존 DDoS 대응 방법
1. 탐지&차단 측면
OSL 3계층부터 7계층에서의 탐지와 차단은 IDS와 IPS 사용
① IDS(침입 탐지 시스템): 네트워크 트래픽에서 의심스러운 활동이 있는지 모니터링하고, 그러한 활동이 발견되면 경보를 발령하는 시스템
- N-IDS: 네트워크 트래픽의 이상을 탐지하고 분석
- H-IDS: 시스템 이상을 탐지 및 분석
② IPS(침입 방지 시스템): 네트워크 트래픽에서 잠재적인 위협을 모니터링하고 보안 팀에 경고, 위험한 연결 종료, 악성 콘텐츠 제거 또는 기타 보안 장치를 트리거하는 등 자동으로 차단 조치하는 시스템
- 모든 트래픽이 IPS를 통해 전달하도록 구성된 인라인 방식으로 설치 즉, IPS를 통해서만 목적지로 전송할 수 있음
<오용 방식 & 이상 방식> - IDS & IPS 모두 해당
- 오용 방식: 기존에 알려진 공격방식 및 패턴을 입력하여 규칙을 만들어 탐지하고 차단
-> 알려지지 않는 공격은 탐지 및 차단이 어려움
- 이상 방식: 정상적으로 사용한 방식이나 패턴을 저장하고 분석해 기분을 설정하여 탐지하고 차단
-> 정상 사용자의 행위 패턴 오류를 공격으로 오인할 수 있음
③ WAF(Web Application Firewall): 웹 애플리케이션으로 이동하는 악의적인 HTTP/S 트래픽을 필터링, 모니터링 및 차단하여 웹 앱을 보호하고, 승인되지 않은 데이터가 앱에서 나가는 것을 방지
- 7계층인 어플리케이션 계층에서 동작
- 어플리케이션 서버와 인터넷 사이에 설치
- 웹 영역에서는 SQL 인젝션 공격을 대응하기에 IDS, IPS보다 성능이 뛰어남
※SQL(Structured Query Language.구조적 질의 언어) 인젝션: 악의적인 사용자가 응용 프로그램 보안 상의 허점을 의도적으로 이용해, 악의적인 SQL문을 주입하고 실행되게 하여 데이터베이스가 비정상적인 동작을 하도록 조작하는 행위
<규칙 기반 WAF와 이상 방식 WAF>
- 규칙 기반 WAF: 사전에 비정상 행위에 대하여 규칙 및 서명을 생성하여 대응
-> 어렵고 새로운 공격이나 제로데이 공격에 대응하기 어려움
※제로데이: 취약점이 공표 혹은 발견된 날
제로데이 공격: 취약점에 대한 패치가 나오지 않은 시점에서 이루어지는 공격
- 이상 기반 WAF: 정상적 동작의 규칙과 패턴을 학습하여 저장하고 저장된 패턴과 다른 패턴을 동작하는 트래픽에 대응
2. 완화 측면
- DDos 완화: DDoS 공격으로부터 서버 및 시스템을 보호하기 위해 공격에 저항하여 공격 피해를 최소하기 위한 기술 -> 거의 사용X
- 블랙홀 라우팅: ISP 사업자가 제공. 라우터에 BGP를 활영하여 BGF 라우팅 테이블에 특정 IP 주소를 포워딩하도록 설정하고 해당 IP 주소의 라우터는 모든 패킷은 NULL로 지정하여 삭제
-> 정상 사용자와 악의적 사용자가 동시에 존재하는 트래픽에서 사용하면 모두 차단당해 정상 사용자가 서비스 이용할 수 없음
※BGP(Border Gateway Protocol): 인터넷에서 데이터를 전송하는데 가장 적합한 네트워크 경로를 결정하는 인터넷 라우팅 프로토콜
Forwarding: 라우터에 도착한 패킷을 적절한 출력링크로 보냄
- 사이버 대피소: 한국 인터넷 진흥원 제공. 공격 대상의 IP 주소를 사이버 대피소의 IP 주소로 변경한 후 공격 트래픽을 사이버 대피소에 전송하여 방어하는 방식
① 1단계: ISP 사업자와 협업을 통해 단순한 네트워크 자원을 소모하는 DDoS 공격 차단
② 2단계: QoS(Quality of Service) 장비를 사용하여 발신 IP 주소 분석을 통해 정상 사용자와 좀비 PC
구분
※QoS: 서비스 품질. 한정된 네트워크 용량으로 트래픽을 제어하고 주요 어플리케이션의 성능을 보장하기 위해 메커니즘이나 기술 활용
③ 3단계: L7 스위치와 웹 캐싱, WAP 장비 등을 사용하여 트래픽 단순화를 통해 서버를 분산하여 서버의 가용성 확보
※L7 스위치: 네트워크 보안 장비 역할. 어플리케이션 계층에서 동작하며 HTTP의 URL, FTP(파일 전송 프로토콜)의 파일명, 쿠키정보, 바이러스 패턴 등 분석
WAP: 무선 어플리케이션 프로토콜
▶RDDoS 대응 시스템
1. 설계
실시간으로 트래픽 측정과 메일을 탐지하며 특정 패턴이나 규칙을 설정하여 규칙에 맞으면 관리자에게 알림을 보내는 시스템
- 트래픽 규칙에 기준을 임의로 설정하여 기준을 초과하면 특정 파일을 생성
- -> 특정 파일 존재하지 않으면 : 트래픽 차단 (①)
-> 특정 파일이 존재하면 임계값 초과 : DDoS 완화 사용 (②)
-> DDoS 완화가 없을 경우 : 관리자에게 긴급 알림 (③)
① 측정된 값과 임계값을 비교하여 임계값이 측정값보다 작은 경우: 패킷 차단
-> 특정 포트 차단, 연결 시간 횟수 초과, 특정 IP 차단 등 규칙이 설정된 방화벽 또는 IPS 사용
② 측정값이 임계값보다 큰 경우: DDoS 완화 사용하고 관리자에게 알림 보냄
-> 트래픽 측정값이 정상이 되면 DDoS 종료로 관리자에게 알림을 보냄
③ DDoS 완화 사용이 불가능한 경우 관리자에게 긴급 알림을 보내고 KISA에 제공하는 사이버 대피소, ISP 사업자의 블랙홀 라우팅을 긴급으로 신청하여 사용
-> 트래픽 측정값이 정상이 되면 DDoS 종료로 관리자에게 알림을 보냄
⇒ 관리자는 시스템 로그 , DDoS 완화 로그 등을 바탕으로 취약점 분석 및 보완
RDDoS 대응 시스템 흐름도
2. 구현
- 설정
kari: 공격 서버
red: 피해 서버
① Kari가 관리자에게 협박 메일 전송
② 좀비 PC를 통해 red 서버에 대해 TCP-flooding 공격을 수행하여 서비스 거부 상태로 만들어 정상 사용자들이 red의 웹서비스를 제공하지 못하게 구성
※TCP-flooding 공격 수행: 공격자는 보낸 SYN 요청에 대한 서버의 SYN-ACK에 응답하지 않고 SYN 요청만 마구잡이로 보내는 네트워크 계층 공격
3. 결과
와이어샤크를 통해 피해 대상 서버 red에서 대량의 TCP 연결 요청을 확인할 수 있다.
위의 사진은 설계 과정에서 ②번 경우인 설정된 임계값을 초과하여 DDoS 완화를 사용한 것을 red 사용자에게 알림을 보낸 후 mail 명령어를 통해 확인한 결과이다.
이번엔 ③번 경우에 해당하는 DDos 완화없이 관리자에게 긴급알림을 보낸 것이다.
4. 성능
① 공격이 발생한 경우 위의 주황색 그래프에서 확인할 수 있듯이 네트워크 트래픽 속도가 400Mbps로 대폭 증가하였다. DDoS완화 및 트래픽 차단을 사용하여 초록색 그래프처럼 트래픽 속도가 100Mbps로 줄어든 것을 확인할 수 있다.
② 공격이 발생한 경우 주황색 그래프처럼 CPU 평균 사용량이 100%로 급격히 증가하였다. 그러나 트래픽 차단 및 DDoS 완화를 사용하여 CPU 평균 사용량이 초록색 그래프처럼 줄어졌다.
'2024 SWLUG > 논문 분석' 카테고리의 다른 글
6. 오버리프의 보안취약점 및 개인 리소스 노출위험 분석 (0) | 2024.10.30 |
---|---|
5. 크로스 사이트 스크립팅(XSS) 취약점에 대한 공격과 방어 (0) | 2024.09.20 |
4. ARP 공격 시그니처 정보에 기반한 스푸핑 공격 탐지 및 차단 모델 (0) | 2024.05.26 |
3. 스마트 컨트랙트 보안 취약점 분석 및 보안 자동화 모델 (0) | 2024.05.22 |
1. 메타버스 플랫폼 Roblox 포렌식을 통한 아티팩트 분석 (0) | 2024.05.22 |