IT/정보보안

[정보 보안] 분산 서비스 공격(DDOS) 이란?

디지털 은행원 이야기 2020. 9. 10. 23:33
반응형

 

안녕하세요. 방프개입니다.

오늘은 분산 서비스 공격(DDOS)에 대해 적어보려고 합니다.
오늘 업무를 보고 있는데 제가 일하고 있는 공사의 홈페이지에 DDOS 공격이 발생했습니다.
물론 보안팀에서 빠르게 확인을 했고 의심되는 IP를 차단하는 방법으로 크게 피해가 발생하는 일은 없었습니다.
제가 업무를 보면서 실제로 이렇게 악의적인 공격이 발생한 건 처음 경험해봤습니다.

실제로 오늘 공사의 홈페이지에 일시적으로 접속이 안되기도 했는데

대기업, 중소기업, 공기업 등 사이버 보안 위협이 날이 갈수록 증가하고 있는 것 같습니다.
특히 별도의 보안조직을 갖추지 못했거나 보안 전담 인력을 보유하지 못한 중소기업들은

다양한 보안 위협에 노출될 수밖에 없습니다.

그중에서도 디도스(DDoS) 공격은 중소기업에 가장 치명적인 사이버 공격 가운데 하나라고 합니다.

 

# DDOS 공격이란?

 

디도스 공격에 앞서 먼저 DoS(Denial of Service) 공격에 대해 알 필요가 있습니다.

도스 공격은 정상적으로 네트워크 및 시스템을 사용할 수 없게 만드는 시도로,

공격을 받게 되면 사용 가능한 네트워크 및 시스템 리소스 속도가 느려지거나 서버가 손상될 수 있습니다.

이러한 도스 공격이 불특정 다수에 의해 동시다발적으로 발생할 경우

이를 디도스(DDoS(Distributed Denial of Service)) 공격이라고 합니다.

일반적인 디도스 공격은 공격자가 공격 대상 서버 및 네트워크에 많은 양의 악의적인 트래픽을 전송할 때 발생합니다.

공격자는 주로 봇넷을 이용하여 트래픽을 전송하는데, 봇넷은 공격 도구로 이용하기 위한 악성코드에 감염된

수많은 좀비(숙주) 시스템으로, 인터넷을 통해 연결되어 있어 서로 통신하고 제어할 수 있습니다.

공격자가 봇넷을 사용하여 디도스 공격을 감행하면 봇넷에 연결된 좀비들 중 일부 또는 전부가 공격을 수행하게 됩니다.

따라서 디도스 공격은 피해자 리소스에 과부하를 유도하면서

규모를 확대해 여러 네트워크에서 발생하게 되고 여러 국가에서 동시에 발생할 수도 있습니다.

또 다른 형태의 디도스 공격의 하나인 반사 디도스 공격은 공격자가 IP 주소를 도용할 때 발생합니다.

정상적인 서버에 서비스 요청을 보낼 때, 공격자가 자신의 IP 주소가 아닌 공격 대상 시스템의

IP 주소를 도용하여 서비스를 요청하면, 정상적인 웹서버 측에서는 요청받은 서비스에 대한 응답을

도용된 IP 주소(피해자)로 보내게 됩니다. 이때 공격자는 공격 효율성을 높이기 위해 피해자에게 전송되는 응답이

해당 요청보다 크도록 증폭 기술을 함께 사용하기도 합니다.

# 디도스 공격은 어떤 형태로 이루어질까?

 

1. SYN Flood (일반적인 디도스 공격 형태)

 

    디도스 공격 형태 중 가장 많이 사용되고 오래된 공격 형태 중 하나가 바로 SYN Flood입니다.

    이는 정상적인 사용자가 서버를 사용할 수 없도록 서버의 리소스를 소비하기 위해,

    공격자가 피해자 시스템에 TCP(SYN) 연결 요청을 연속해서 전송할 때 발생합니다.

    공격을 받으면 피해자 서버에서는 정상적인 사용자에 대한 연결이 불가능한 서비스 장애가 발생합니다.

2. UDP Flood (일반적인 디도스 공격 형태)

    UDP Flood는 SYN Flood와 매우 유사한 디도스 공격입니다.

    공격자는 봇넷을 사용하여 공격 대상 서버로 많은 양의 트래픽을 전송합니다.

    UDP 패킷을 수신하는 서버가 네트워크 포트 중 해당 포트(예: 50555)를 오픈하고,

    수신 대기하는 응용 프로그램이 작동합니다.

    공격이 발생하면 크고 많은 수의 UDP 패킷이 전송되며,

    대부분의 서버에서 응답이 이루어져 모든 사용 가능한 공격 대상 대역폭을 빠르게 잠식합니다.

3. ICMP Flood (일반적인 디도스 공격 형태)

    ICMP Flood는 공격자가 봇넷을 사용하여 사용 가능한 모든 대역폭을 소비하고

    정상적인 사용자의 접근을 막기 위해 많은 수의 ICMP 패킷을 공격 대상 서버로 전송합니다.

    ICMP를 사용하는 대표적인 ‘ping’ 명령어는 일반적으로 같은 네트워크 두 지점 간 연결을

    테스트하는 기능을 수행합니다. 명령어 사용 시 매개변수를 이용하여 크기와 요청 주기를 조정할 수 있어

    처리 가능한 공격 대상 네트워크 대역폭을 모두 소진시킬 수 있습니다.

4. SYN+ACK 반사 공격 (반사 디도스 공격 형태)

    SYN+ACK Flood는 공격자가 피해자의 IP를 도용한 후 반사체로 악용될 서버에 SYN 패킷을 보내고

    해당 응답인 SYN/ACK 패킷을 피해자에게 전송하게 하는 공격입니다.

    공격이 발생하면 피해자는 SYN/ACK 패킷을 대량으로 전송받게 되고 해당 패킷을 처리하기 위해

    리소스를 소모하게 됩니다. 이 과정에서 서버의 과부하가 발생하여 정상 사용자들이 접속할 수 없게 됩니다.

5. NTP 반사 및 증폭 공격 (반사 디도스 공격 형태)

    NTP(Network Time Protocol) 반사 공격은 공격자가 정상적인 NTP 서버의 트래픽을 사용하여 공격하는 형태입니다.

    공격자는 공격 대상의 IP 주소로 도용하고 NTP 서버가 많은 양의 응답 트래픽(고정된 패킷 크기)을

    공격 대상 서버에게 보내도록 요청합니다. NTP 반사 및 증폭 공격을 받게 되면 피해자는

    네트워크 대역폭을 모두 소진하여, 정상적인 사용자에 대한 서비스 장애가 발생합니다.

 

# 디도스(DDoS) 공격 피해 최소화 위한 대응전략

1. 먼저 네트워크 서비스 제공 업체에서 제공하는 디도스 방어 서비스를 알고 있어야 합니다.

    디도스 공격의 경우, 네트워크 서비스 제공 업체에서 조치하는 것이 대응이 훨씬 빠르기 때문입니다.

2. 디도스 공격이 발생하면 네트워크 서비스 제공 업체에 공격 IP 주소를 신속히 제공합니다.

3. 방화벽 및 프록시 서버와 같은 주변 장치에서 'TCP keepalive' 및 '최대 연결'을 설정하면

    SYN Flood 공격을 예방할 수 있습니다.

4. 네트워크 서비스 제공 업체에서 포트 및 패킷 크기 필터링이 가능한지 확인하고 설정합니다.

5. 공개 웹사이트의 기본 트래픽 패턴(볼륨 및 유형)을 파악하고, 이상 패턴이 발생하는지 정기적으로 확인합니다.

6. 네트워크/보안 장비의 패치는 적절한 테스트 및 검증을 거친 후 적용합니다.

7. 예약된 IP 주소(0/8), 루프백(127/8), 사설(RFC 1918 블록 10/8, 172.16/12 및 192.168/16),

    할당되지 않은 DHCP 클라이언트(169.254.0/16), 멀티캐스트(224.0.0/4) 및 RFC 5735에 나열된

    다른 주소에서 출발되는 인바운드 트래픽을 차단하도록 방화벽을 구성합니다.

    이 구성은 네트워크 서비스 제공 업체에도 요청해야 합니다.

8. 비즈니스 목적에 필요한 프로세스와 네트워크 대역폭을 파악하고,

    서버에 설정을 반영해야 하며, 방화벽 설정도 필히 해야 합니다.

9. 이상 징후 발생 시, 즉시 인지할 수 있도록 방화벽 및 침입 탐지 서비스를 구성합니다.

10. 디도스 공격으로 네트워크 서비스 장애가 발생할 것을 대비하여, 대체 연결 수단을 준비합니다.


기업을 대상으로 한 다양한 디도스 공격이 시도되고 발생하고 있습니다.

디도스 공격이 발생했을 때는 무엇보다 신속한 대응을 통해 피해를 최소화하는 것이 현명합니다.

언제 있을지 모를 디도스 공격! 미리 대비할 수 있는 건 대비해 피해를 최소화할 수 있도록 해야 할 것 같습니다!

감사합니다.

반응형