디도스
디도스(DDoS)란 Distributed Denial of Service의 약자이다. 악성코드를 삽입하여 감염시킨 좀비PC를 활용하여 다수의 분산된 컴퓨터를 이용하여 특정 서버 컴퓨터가 처리할 수 있는 용량을 초과하는 정보를 한꺼번에 보내 과부하로 서버가 다운되거나 정상 접속되지 못하도록 만드는 공격을 말한다. 분산 서비스 거부 공격이라고 한다.
서버-클라이언트 구조에서는 중앙 서버에 디도스 공격을 함으로써 전체 서비스를 마비시킬 수 있다. 예를 들어, 최대 1,000명이 동시 접속할 수 있는 서버에 2,000명이 동시 접속을 시도하면, 서버가 부하를 이겨내지 못하고 다운되거나 먹통이 되어 정상적인 서비스를 제공할 수 없게 된다.
디도스 공격을 막기 위해서는 막대한 트래픽을 견딜 수 있도록 네트워크 대역을 늘리거나 별도의 우회로를 만들어 두는 방법이 있다. 기존의 서버-클라이언트 구조가 아니라, 블록체인 기술을 사용하여 전 세계 여러 서버에 데이터를 분산 저장함으로써 디도스 공격을 막을 수 있다.
목차
암호화폐[편집]
디지바이트(DigiByte)는 블록체인 기술을 적용한 게임 관련 코인으로 시작했으나 디도스(DDoS) 공격으로 중단된 암호화폐이다.
공격 메커니즘[편집]
- 다른 사람의 컴퓨터 시스템에 무단으로 침입하여 정보를 훔치거나 프로그램을 훼손하는 크래커(Cracker)가 다양한 방법으로 악성코드를 유포하여 사용자의 PC를 감염시킨다. 감염된 PC들을 좀비 PC라고 부른다. 보통 인터넷의 검증되지 않은 파일을 다운받거나 설치하는 방법으로 감염이 되고, 자신의 PC가 좀비 PC인지 모르는 경우가 많다. 감염된 PC는 이후 크래커의 명령에 따라 디도스 공격을 실행하는 좀비 PC가 된다.
- 크래커는 좀비 PC들의 디도스 공격을 제어하기 위해서 C&C(Command&Control, 명령/제어) 서버를 확보한다.
- 크래커는 C&C서버를 통해 좀비PC들이 특정 시스템으로 동시다발적인 디도스 트래픽을 발생시키도록 명령한다.
- 대상 서버는 단시간에 시스템 과부하로 서비스가 마비된다.[1]
유형[편집]
서비스에 따른 분류[편집]
대역폭 공격[편집]
대역폭 공격은 다수의 좀비 PC에서 동시에 대용량 디도스 공격 트래픽을 발생 시켜 해당 서버의 네트워크 대역폭을 소진시키는 형태이다. 한적한 도록에서 갑자기 많은 차가 나와 도로가 막히는 상황이라고 비유할 수 있다.[1]
- UDP Flooding : 대량의 UDP(User Datagram Protocol, 사용자 데이터그램 프로토콜) 패킷을 발생시켜 경로상의 회선 대역폭을 소진하는 능력
- ICMP Flooding : 대량의 ICMP(Internet Control Message Protocol, 인터넷 제어 메시지 프로토콜) 패킷을 발생 시켜 경로상의 회선 대역폭을 소진하는 능력
프로토콜 공격[편집]
프로토콜 공격은 IP 계층이나 전송 계층 프로토콜들의 구조적인 취약성을 악용해서 대상 서버나 경로상에 있는 네트워크 장비(라우터, 방화벽, 스위치 등)의 자원을 소진하는 것이다.[1]
- TCP SYN Flooding : 대량의 SYN(동기화된) 패킷을 발생 시켜 시스템의 관계나 메모리 자원을 소진하는 공격
- TCP Out-of-State-Packet Flooding : 대량의 비정상적인 TCP Flags 패킷을 발생시켜 시스템의 CPU 부하를 유발하는 공격
- Ping of Death : Ping Size를 매우 크게 하여 시스템에서 단편화로 인한 CPU 부하를 유발하는 공격
애플리케이션 공격[편집]
애플리케이션 공격은 해플리케이션의 구조적인 취약성이나 운영체제의 보안 취약성을 악용해 가상 서버의 자원을 소진시킨다.[1]
- HTTP GET Flooding : 대량의 GET 요청을 발생 시켜 시스템의 데이터베이스 관계나 데이터베이스 과부하를 유발하는 공격
- CC Attack : HTTP GET 요청 시 캐싱을 하지 않도록 설정하여 서버의 부하를 유발하는 공격
- Slowloris : 불완전한 HTTP GET 요청으로 시스템의 연결을 유지하여 관계 자원을 소진하는 공격
- RUDY : Content Length를 비정상적으로 크게하여 시스템의 연결을 계속 유지하는 공격
- DNS Query Flooding : 대량의 DNS Query 패킷을 발생 시켜 DNS 서버의 QPS(query/sec)를 소진하는 공격
- DNS Application DDoS : SRC IP를 공격 대상 IP로 위장하여 대상 DNS 서버로 대량의 패킷을 유도하는 공격
- Mail Bomb : 대량의 전자우편을 보내어 대상 메일 서버의 디스크 소진이나 과부하를 유발하는 공격
OSI 모델의 계층에 따른 분류[편집]
일반적으로 디도스 공격은 공격 대상인 OSI(Open Systems Interconnection) 모델의 계층에 따라 분리될 수 있다. 디도스 공격은 네트워크(계층 3), 전송(계층 4), 프레젠테이션(계층 6) 및 애플리케이션(계층 7) 계층에서 가장 많이 나타난다.
인프라 계층 공격[편집]
계층 3과 계층 4에 대한 공격은 일반적으로 인프라 계층 공격으로 분류한다. 이 공격은 가장 일반적인 유형의 디도스 공격이며, SYN(동기화된) 플러드 같은 벡터 그리고 UDP(User Datagram Packet) 플러드 같은 기타 반사 공격을 포함한다. 이런 공격은 대개 볼륨이 상당히 크고, 네트워크 또는 애플리케이션 서버 용량에 과부하가 걸리게 하는 것을 목표로 한다. 그러나 다행히도 이러한 공격 유형은 징후가 분명하고 감지하기가 좀 더 쉽다.[2]
애플리케이션 계층 공격[편집]
계층 6과 계층 7에 대한 공격은 주로 애플리케이션 계층 공격으로 분류됩니다. 이러한 공격은 덜 일반적이지만, 좀 더 정교한 경향이 있다. 일반적으로 이러한 공격은 인프라 계층 공격과 비교하여 볼륨은 작지만, 애플리케이션에서 고가의 특정 부분을 집중적으로 공격하여 실제 사용자가 사용할 수 없도록 만든다. 로그인 페이지에 대한 HTTP 요청 플러드, 고가의 검색 API, 또는 Wordpress XML-RPC 플러드(Wordpress 핑백 공격이라고도 함)를 예로 들 수 있다.[2]
사례[편집]
1.25 인터넷 대란[편집]
2003년 1월 25일, 디도시 공격으로 국내 인터넷망이 마비되어 혼란에 빠졌었다. 마이크로소프트의 SQL 서버의 허점을 이용하는 슬래머 웜이 문제였다. 감염된 좀비 PC들은 대량의 데이터를 만들어 KT의 DNS 서버를 공격하면서 시작됐다. 이 전화국 서버가 마비되자 트래픽이 백본망으로 우회했고 결국 다른 지역의 서버도 마비됐다.[3]
아이템 거래중계 사이트 공격[편집]
2008년 12월부터 2009년 2월까지 한 아이템 거래중계 사이트에 디도스 공격이 있었다. 총 12차례에 이르는 공격으로 해당 사이트는 1,000억 원대 피해를 입었다. 하지만 이는 경쟁사의 전 임원의 소행으로 밝혀져 충격을 주었다. 그는 중국 지린성에서 다른 공범과 함께 중국 해커를 모집, 해당 사이트의 서버를 공격하게 했다. 동시에 공격을 중단하는 것을 대가로 금품을 요구한 것으로 알려졌다. 경찰은 범인이 사전에 치밀하게 범행을 계획했다고 발표했다.[3]
7.7 디도스 공격[편집]
2009년 7월 7일 미국과 우리나라 주요 정부 기관과 포털 사이트, 은행 등이 공격을 받아 서비스를 일시적으로 마비시키는 피해가 있었다. 5일부터 9일까지 5일간에 걸쳐 4차례 공격이 감행됐다. 첫날에는 백악관 및 27개 사이트가 공격을 받았다. 우리나라는 7월 7일 주요 언론사와 정당, 포털 사이트가 공격을 받았다. 그다음 공격에서는 1차 공격 대상이었던 사이트 일부와 주요 포털 사이트 메일 서비스를 대상으로 했다. 마지막으로 공격을 했던 9일에는 국가정보원과 금융기관 일부가 공격으로 서비스 장애가 발생했지만 빠른 시간 안에 정상화가 이루어졌다.[3]
3.3 디도스 공격[편집]
2011년 3월 3일에 국내 주요 정부 기관과 포털 사이트, 은행 등이 디도스 공격을 받아 두 차례에 걸쳐 서비스가 마비된 사건이다. 원래 4~7일 정도 지나면 하드디스크가 파괴되게 되어 있지만, 공격에 큰 피해가 없자, 이를 앞당겨 하드디스크를 파괴하는 명령과 보호나라 사이트 접속을 막는 명령을 내린 것으로 알려졌다. 방송통신위원회는 해당 디도스 P2P 파일 공유 사이트에 업로드된 일부 파일에 삽입, 유포 됏다고 발표했다.[3]
중앙선관위 디도스 공격[편집]
2011년 10월 26일 중앙선거관리위원회 홈페이지에 디도스에 의한 공격이 있었다. 당시에는 재보궐 선거가 이뤄지고 있었는데, 공격은 당일 오전 9시부터 자정까지 이어져 해당 시간에는 중앙선거관리위원회 홈페이지에 접속할 수 없었다.[3]
현황[편집]
아카마이코리아는 2017년 11월부터 2018년 4월까지 7,822건의 전 세계 디도스 공격이 발생했고, 한국에서는 총 4,820개의 IP가 디도스 공격을 받았다고 밝혔다. 아카마이코리아가 발표한 아카마이 인텔리전트 플랫폼을 기반으로 전 세계 클라우드 보안과 위협 환경을 분석한 '아카마이 인터넷 보아나 현황 보고서:웹 공격'에 따르면 전세계 디도스 공격은 분석기간 7822건 발생해 전년동기 대비 16% 증가했다. 이 기간에 발생한 가장 큰 디도스 공격은 맴케시드(memcached) 반사 기법을 사용한 공격으로 사상 최대 공격 규모인 1.35Tbps를 기록했다. 반사 기반 공격은 전년동기 대비 4% 늘었다. 전 세계 디도스 상위 발원 국가는 미국(30%), 중국(16%), 영국(5%), 인도(4%), 스페인(3%) 순으로 한국은 총 4820건의 IP가 디도스 공격에 활용되어 3%의 점유율로 8위이다. 전 세계적으로 단순한 증폭 공격이 가장 일반적인 디도스 공격 기법이지만 다른 공격 기법들도 꾸준히 등장하고 있다.[4]
디도스 보호 기법[편집]
공격 대상 영역을 축소[편집]
디도스 공격을 완화하는 첫 번째 기법의 하나는 공격을 받을 수 있는 대상 영역을 최소화하여 공격자의 옵션을 제한하고 한 곳에서 보호 기능을 구축하는 것이다. AWS에서는 애플리케이션이나 리소스를 통신이 일어날 것으로 예상되지 않는 포트, 프로토콜 또는 애플리케이션에 노출하지 않는다. 따라서 공격 가능 지점이 최소화되므로 AWS에서는 완화 노력에 집중할 수 있다. 일부의 경우에는 컴퓨팅 리소스를 CDN(Content Distribution Networks) 또는 Load Balancer 뒤에 배치하고 데이터베이스 서버와 같은 인프라의 특정 부분에는 인터넷 트래픽이 직접 접근하지 못하도록 제한할 수 있다. 다른 경우에는 방화벽 또는 ACL(엑세스 제어 목록)을 사용해 애플리케이션에 도달하는 트래픽을 제어할 수 있다.[2]
규모에 대한 대비[편집]
대규모 볼륨의 디도스 공격을 완화하기 위한 주요 고려 사항은 공격을 흡수할 수 있는 대역폭(또는 전송) 용량과 서버 용량이다.
전송 용량[편집]
애플리케이션을 설계할 때에는 호스팅 공급업체가 대량의 트래픽을 처리하도록 충분한 중복 인터넷 연결을 제공하는지 확인해야 한다. 디도스 공격의 최종 목표가 리소스/애플리케이션의 가용성에 악영향을 주는 것이기 때문에, 이를 최종 사용자뿐만 아니라 대규모 인터넷 대규모 교환망에 가까운 곳에 배치해야 한다. 그다음엔 트래픽 볼륨이 증가하더라도 사용자가 애플리케이션에 쉽게 접근할 수 있다. 또한, 웹 애플리케이션의 경우는 CDN(Content Distribution Network) 및 스마트 DNS 확인 서비스를 사용하여 최종 사용자에게 좀 더 가까운 위치에서 콘텐츠를 제공하고 DNS 쿼리를 해결할 수 있는 추가적인 네트워크 인프라 계층을 제공할 수 있다.[2]
서버 용량[편집]
대부분의 디도스 공격은 많은 리소스를 소모하는 볼륨 공격이다. 따라서 컴퓨팅 리소스를 신속하게 확장 또는 축소할 수 있는 기능이 중요하다. 이를 위해서는 더 큰 컴퓨팅 리소스에서 실행하거나, 더 큰 볼륨을 지원하는 좀 더 광범위한 네트워크 인터페이스 또는 향상된 네트워킹과 같은 기능이 있는 컴퓨팅 리소스에서 실행하면 된다. 그리고 로드 밸런스를 사용하여 지속해서 리소스 간 로드를 모니터링하고 이동하고 하나의 리소스에만 과부하가 걸리지 않도록 하는 것도 일반적인 방법이다.[2]
정상 및 비정상 트래픽을 파악[편집]
호스트의 트래픽 볼륨이 증가하는 것을 감지할 때마다 AWS에서 가장 기본적으로 고려하는 원칙은 가용성에 영향을 주지 않고 호스트가 처리할 수 있는 만큼의 트래픽만 수용할 수 있어야 한다. 이것을 속도 제한이라고 한다. 고급 보호 기법은 개별 패킷 자체를 분석해 지능적으로 합법적인 트래픽만 수용하는 것이다. 이를 위해서는 대상이 일반적으로 수신하는 정상 트래픽의 특징을 이해하고 각 패킷을 이러한 기준과 비교할 수 있어야 한다.[2]
정교한 애플리케이션 공격에 대비하여 방화벽 배포[편집]
애플리케이션 자체의 취약성을 악용하려고 시도하는 SQL 명령어 주입 또한 사이트 같 요청 위조와 같은 공격에 대비하려면 WAF(Web Application Firewall)를 사용하는 것이 좋다. 또한 이러한 공격의 고유한 특성상, 정상 트래픽으로 위장하거나 잘못된 IP 또는 예상치 못한 지역에서 수신되는 등의 특징이 있을 수 있는 불법적인 요청에 대비하여 사용자 지정된 완화 기능을 손쉽게 생성할 수 있어야 한다. 때때로 트래픽 패턴을 연구하고 사용자 지정된 보호 기능을 생성할 수 있는 경험이 풍부한 엔지니어의 지원을 받을 수 있다면 공격을 완화하는 데 도움이 될 수 있다.[2]
좀비 PC가 되지 않도록 하는 예방 방법[편집]
- 윈도우 등 운영체제 및 소프트웨어의 최신 보안 패치 설치 및 버전 업그레이드
- 바이러스 백신 설치 및 실시간 감시 기능 활성화
- 신뢰 가능한 웹사이트에서만 액티브 X 설치
- 출처가 명확하지 않은 이메일 확인 및 첨부 파일 클릭 금지
- 불법 콘텐츠 공유 사이트 접속 지양 및 불법 파일 다운로드 금지
- 정품 소프트웨어 사용
- 컴퓨터에 반드시 암호 설정[5]
피해 최소화 방법[편집]
- 기관, 기업의 경우 : KISA 사이버 대피소 또는 ISP에서 운영 중인 디도스 방어 서비스 신청, 디도스 유발하는 IP 접근 차단
- 일반 사용자 : 랜선 제거, 사용하는 회선 사업자(ISP, IDC)에 공격 로그 추출 문의(수사기관에 신고), 운영체제 최신 버전 업데이트, 최신 업데이트 백신으로 PC 바이러스 검사 및 치료, 운영체제 재설치 권장, KISA에서 제공하는 PC 원격 점검 서비스 이용[5]
각주[편집]
- ↑ 1.0 1.1 1.2 1.3 호스팅고도, 〈'보안' DDoS(디도스)란?〉, 《네이버블로그》, 2016-01-28
- ↑ 2.0 2.1 2.2 2.3 2.4 2.5 2.6 〈DDoS 공격이란 무엇입니까?〉, 《aws》
- ↑ 3.0 3.1 3.2 3.3 3.4 이상우 기자, 〈'IT강의실' 백만 좀비PC가 한 서버에 몰려든다 - 디도스(DDOS)〉, 《IT 동아》, 2015-09-04
- ↑ 최민지 기자, 〈韓, 전세계 디도스 공격 발원 국가 8위〉, 《디지털데일리》, 2018-07-02
- ↑ 5.0 5.1 〈디도스(DDoS) 공격〉, 《경칠창 사이버 안전국》
참고자료[편집]
- 〈디도스(DDoS) 공격〉, 《경칠창 사이버 안전국》
- 〈DDoS 공격이란 무엇입니까?〉, 《aws》
- 이상우 기자, 〈'IT강의실' 백만 좀비PC가 한 서버에 몰려든다 - 디도스(DDOS)〉, 《IT 동아》, 2015-09-04
- 호스팅고도, 〈'보안' DDoS(디도스)란?〉, 《네이버블로그》, 2016-01-28
- 최민지 기자, 〈韓, 전세계 디도스 공격 발원 국가 8위〉, 《디지털데일리》, 2018-07-02
같이 보기[편집]