DDoS에 대한 이해: 예방과 대응 방법

DDoS(분산 서비스 거부) 공격은 기본적으로 인터넷 연결된 서비스, 서버, 또는 네트워크 자원에 대해 압도적인 트래픽을 일으켜 정상적인 서비스 이용을 방해하는 사이버 공격입니다.

이러한 공격은 다양한 방식으로 이루어지며, 그 기술적 복잡성은 공격자의 목적과 사용 가능한 자원에 따라 달라집니다. 여기서는 DDoS 공격의 기술적 측면을 좀 더 깊이 있게 탐구하고, 징후를 알고 예방 및 대처 방법에 대해 소개합니다.

DDoS 공격의 이해

개요

DDoS(Distributed Denial of Service) 공격은 다수의 감염된 컴퓨터 시스템이 웹사이트나 네트워크와 같은 대상을 공격하여 정상 사용자가 대상 자원을 이용할 수 없게 만드는 사이버 공격입니다.

대상 시스템으로의 입장 메시지, 연결 요청 또는 형식이 잘못된 패킷의 홍수는 시스템을 느리게 하거나 심지어 충돌하고 종료되게 만들어 정당한 사용자에게 서비스를 거부합니다.

공격 원리

DDoS 공격은 여러 대의 감염된 컴퓨터(좀비 또는 봇으로 알려진)를 사용하여 대상에 대한 동시 다발적인 요청을 보냄으로써 수행됩니다.

이 컴퓨터들은 일반적으로 봇넷(Botnet)이라는 네트워크를 형성하며, 한 명 또는 그 이상의 공격자에 의해 원격으로 제어됩니다.

공격의 목표는 대상의 처리 용량을 초과하여 정상적인 요청을 처리할 수 없도록 만드는 것입니다.

DDoS 공격 유형

Volume-based Attacks:

이러한 공격은 대상의 네트워크 대역폭을 초과하도록 설계되어 있습니다.

UDP 홍수, ICMP 홍수 등이 이에 해당하며, 공격자는 대량의 트래픽을 생성하여 서비스를 마비시킵니다.

ddos-volumne-based-attack
출처: https://www.cloudflare.com/learning/ddos/what-is-a-ddos-attack/

Protocol Attacks:

SYN flood, Ping of Death, Smurf 공격과 같은 프로토콜 공격은 네트워크 계층과 전송 계층의 프로토콜 취약점을 이용합니다.

이러한 공격은 서버 자체나 중간 네트워크 장비(예: 로드 밸런서, 방화벽)의 리소스를 고갈시키는 것을 목표로 합니다.

ddos-protocol-attack
출처: https://www.cloudflare.com/learning/ddos/what-is-a-ddos-attack/

Application Layer Attacks:

HTTP 플러딩과 같은 응용 계층 공격은 웹 서버의 리소스를 소진시키기 위해 설계되었습니다.

이 공격은 보통 정상적인 요청처럼 보이지만, 서버의 처리 능력을 초과하여 과부하를 일으킵니다

ddos-application-layer-attack
출처: https://www.cloudflare.com/learning/ddos/what-is-a-ddos-attack/

DDoS 징후

DDoS(분산 서비스 거부) 공격의 징후를 파악하는 것은 조기에 대응하고 피해를 최소화하기 위해 매우 중요합니다.

DDoS 공격은 다양한 방식으로 이루어질 수 있으며, 그에 따라 징후도 다양할 수 있습니다.

하지만 몇 가지 일반적인 징후들을 통해 DDoS 공격을 의심해 볼 수 있습니다.

1. 접속 지연 또는 서비스 이용 불가

가장 명확한 징후 중 하나는 웹사이트나 온라인 서비스에 접속할 때 비정상적으로 오랜 시간이 걸리거나, 아예 서비스 이용이 불가능한 상황입니다.

이는 공격자가 대량의 트래픽으로 네트워크를 과부하시켜 발생할 수 있습니다.

2. 네트워크 성능 저하

네트워크의 성능이 갑자기 저하되는 경우, 이는 DDoS 공격의 징후일 수 있습니다.

특히, 네트워크 대역폭 사용량이 평소보다 현저히 높다면 공격을 받고 있을 가능성을 의심해 볼 필요가 있습니다.

3. 비정상적인 트래픽 증가

네트워크 모니터링 도구를 통해 트래픽의 양과 패턴을 지속적으로 관찰할 때, 비정상적인 트래픽 증가나 예상치 못한 트래픽 패턴을 발견할 수 있습니다.

특정 IP 주소 또는 IP 주소 범위에서 오는 트래픽이 갑자기 급증하는 경우 DDoS 공격의 징후일 수 있습니다.

4. 서버 리소스의 과도한 사용

서버의 CPU 사용률, 메모리 사용량, 디스크 입출력 등이 갑자기 높아지는 경우, 이는 서비스 요청을 처리하기 위해 과도한 리소스가 사용되고 있음을 의미합니다.

이는 DDoS 공격으로 인한 결과일 수 있습니다.

5. 특정 서비스의 비정상적인 동작

웹사이트의 특정 기능이나 페이지가 갑자기 작동하지 않거나, 응답 시간이 평소보다 훨씬 긴 경우, 이는 DDoS 공격의 타겟이 되었을 가능성을 시사합니다.

6. 보안 시스템 경보

방화벽, 침입 탐지 시스템(IDS), 침입 방지 시스템(IPS)과 같은 보안 시스템에서 경보가 발생하는 경우, 이는 DDoS 공격의 징후일 수 있습니다.

이러한 시스템은 비정상적인 네트워크 활동을 감지하고 경고하기 때문에, 보안 경보에 주의를 기울여야 합니다.

예방 및 대처방법

예방 전략

  1. 리소스 오버프로비저닝:
    • 네트워크 및 서버 리소스를 필요한 수준보다 높게 설정하여, 예상치 못한 트래픽 증가에 대비할 수 있습니다.
    • 이는 임시적인 해결책일 수 있으나, 공격의 초기 단계에서 유용할 수 있습니다.
  2. 리스크 분산:
    • 서버와 데이터 센터를 지리적으로 분산시키는 것은 DDoS 공격의 영향을 줄이는 데 도움이 됩니다.
    • 공격이 특정 지역에 집중되더라도 다른 지역의 서비스는 정상적으로 작동할 수 있습니다.
  3. 네트워크 보안 강화:
    • 방화벽, 침입 탐지 시스템(IDS), 침입 방지 시스템(IPS) 등을 사용하여 비정상적인 트래픽을 감지하고 차단합니다.
    • 이러한 시스템은 공격을 사전에 감지하여 자동으로 대응할 수 있도록 설정해야 합니다.
  4. DDoS 방어 솔루션 사용:
    • 전문적인 DDoS 방어 서비스나 솔루션을 사용하는 것이 효과적입니다.
    • 이러한 서비스는 대량의 트래픽을 분석하고 정상 트래픽과 비정상 트래픽을 구분하여 공격을 차단할 수 있습니다.

대응방법

  1. 공격 식별:
    • DDoS 공격을 신속하게 식별하는 것이 중요합니다.
    • 이를 위해 네트워크 트래픽을 지속적으로 모니터링하고, 비정상적인 트래픽 증가를 감지해야 합니다.
  2. 트래픽 필터링:
    • 공격이 감지되면, 비정상적인 트래픽을 필터링하고 차단하는 조치를 취해야 합니다.
    • IP 주소 차단, 지리적 차단, 레이트 리밋팅(rate limiting) 등의 방법이 있습니다.
  3. 비상 대응 계획 수립:
    • DDoS 공격에 대응하기 위한 비상 대응 계획을 미리 수립해야 합니다.
    • 이 계획에는 연락처 목록, 대응 절차, 복구 계획 등이 포함되어야 합니다.
  4. 외부 지원 요청:
    • 필요한 경우, ISP(인터넷 서비스 제공업체)나 DDoS 방어 전문 업체와 같은 외부 조직의 도움을 요청할 수 있습니다.
    • 이들은 공격을 분산시키거나 차단하는 데 도움을 줄 수 있습니다.

예시

참고링크

What is a DDoS attack? (CloudFlare)

What is a DDoS Attack? (Akamai)

Leave a Comment