본문 바로가기
SECURITY ISSUE

20211025 KT 네트워크 오류 사태로 보는 디도스 공격과 라우팅

by pharmerci 2021. 10. 29.
728x90

지난 25일 오전 11시경 KT 네트워크 장애가 발생했다. 이 장애는 1시간 넘게 지속되었으며, 많은 개인, 학교, 기업 등이 피해를 입었다.

 

 

 

KT 네트워크 장애로 인해 발생한 피해

이후 과학기술정보통신부는 KT 장애를 이유로 정보통신사고 위기경보 단계를 주의로 격상하였다.

 

장애 초기 KT는 DNS로 트래픽이 몰려서 디도스 공격일 것이라고 추정하고, 디도스 공격으로 인한 네트워크 장애가 발생하였다고 설명했다. 그러나 이후 면밀히 살펴본 결과 디도스 공격이 아닌 라우팅(네트워크 경로설정) 오류였다고 장애 원인을 정정했다. 다만 정확한 원인은 아직 밝혀내지 못했다.

 

이 사건으로 인해 보안에 관심이 없는 사람들은 디도스, 라우팅에 대해서 궁금증을 갖게 되었다. 이번 기회에 개념들을 정확히 이해하고 어떻게 동작하는지, 어떻게 보안할 수 있는지 알아보려 한다.

 

 

 


DDoS

 

DDoS(Distributed Denial of Service) 공격을 이해하기 전에 DoS 공격을 이해하면 DDoS공격을 이해하기가 더 쉬워진다.

 

DoS(Denial of Service) 공격은 시스템을 악의적으로 공격하여 해당 시스템의 리소스를 부족하게 해서 원래 용도로 사용하지 못하게 하는 공격이다. DoS공격은 한 호스트가 비정상적인 접근을 하여 부하를 유발하기 때문에 감염시스템의 취약점을 찾아서 공격하게 된다.

 

DDoS는 DoS 앞에 Distributed의 의미가 추가된 것으로 분산된 PC 즉 다수의 서버 PC를 이용해서 감염시스템의 취약점을 찾아서 공격한다.

 

위 그림을 보면 더 쉽게 이해할 수 있는데, 먼저 공격자가 1차 좀비pc에 악성코드를 전파한다. 메일을 통해 전파할 수도 있고 불법 다운로드를 하는 pc를 노려 불법 다운로드 파일 안에 악성코드를 심어놓았을 수도 있다. 이 1차 피해자는 자신도 모르게 웹서버에 접속하게 된다. 이 1차 피해자가 매우 많아진다면 해당 웹서버는 마비될 수 있다.

 

어떤 웹서버가 동시간에 1000명정도 방문하는 서버라고 하자. 그런데 공격자가 10000개의 좀비PC가 이 웹서버에 동시에 접속하게 하면 원래 웹서버를 쉽게 이용하던 1000명 혹은 그 이상의 방문자는 이 웹서버를 이용하지도 않는 10000개의 좀비PC 때문에 이용하기가 어려워진다. 이 과정은 디도스 공격 유형 중 하나이다.

 

DDoS 공격은 형태에 따라서 대역폭 공격, 자원 소진 공격, 웹/DB 부하 공격으로 구분된다.

 

먼저 대역폭 공격은 높은 bps(bit per second)를 갖는다. 동일 회선을 사용하는 모든 시스템의 접속을 불가하게 만들며 UDP, ICMP, TCP, GRE 프로토콜의 특성을 악용한 공격이다. IP 위변조가 가능하고 일시적으로 대량의 트래픽을 발생시키기 때문에 회선의 대역폭이 작으면 방어가 어렵다.

 

자원소진공격은 높은 pps(packet per second)와 높은 connection을 갖는다. 대상서버, 네트워크 장비 등의 과부하를 발생시킨다. TCP 프로토콜을 이용해서 공격을 하는데 IP 위변조가 가능하고 대역폭 공격에 비해서 적은 트래픽으로도 서버의 과부하를 유발할 수 있다.

 

웹/DB 부하공격은 높은 pps, 높은 connection을 갖는다는 특징이 있다. 대상 웹과 DB서버의 과부하를 발생시키며 HTTP, HTTPS 프로토콜을 이용해서 공격을 하는데 실제 IP로 공격을 하여 정상적으로 세션을 맺은 후 과도한 HTTP 요청으로 과부하를 유도한다.

 

 

 

 


KT에서는 초기 장애가 발생했을 때 DDoS로 인해 네트워크 장애가 발생한 것으로 판단했고, 경기남부경찰청 사이버수사대에서 피해와 공격 규모를 조사하였다. KT에서도 위기관리위원회를 가동하여 조치를 취하고 있었다. 

하지만 보안업계에서는 통신사가 기본적으로 회선을 다중화하는 점을 고려하면 디도스 공격으로 전국망이 동시에 마비되는 것은 상상하기 어려운 일이라고 설명했다.

 

몇시간 후 KT는 라우팅 오류가 원인이었음을 발표하면서, 보안업계의 생각대로 KT 네트워크 장애는 DDoS로 인한 장애가 아니였음이 밝혀졌다. 

 

 

 

 


라우팅

 

라우팅은 네트워크 안에서 통신 데이터를 전송할 때 최적의 경로를 선택하는 과정을 말한다.

라우트랑 라우팅 그리고 라우팅 프로토콜 이 단어들은 서로 헷갈리기가 쉽다.

라우트 : 최적의 경로(라우팅의 결과)

라우팅 : 라우트를 선택하는 과정

라우팅 프로토콜 : 라우팅을 하는 규칙

 

이렇게 생각하면 된다.

 

모든 네트워크 장비에는 라우팅을 위한 라우팅 케이블이 있다. 데이터가 들어오면 이 데이터의 전송 경로를 설정하여 데이터를 전송하는데 여기서 오류가 난 것을 라우팅 오류라고 한다. 데이터가 전송될 서버나 네트워크에 도달하지 못하고 데이터 송수신이 불가능해져서 인터넷 서비스 사용이 불가능해지는 것이다.

 

 

 

 

 


구현모 KT 대표는 부산에 있는 KT 시설에서 망 고도화 작업 중 새 장비를 설치하고 라우팅을 입력하는 과정에서 오류가 났다고 설명했다. KT 협력사 직원이 망 고도화 작업 중 실수를 하여 발생한 '인재'인 것이다. 통신장비를 설치하고 스크립트를 입력하는 중 명령어 한 줄을 빠뜨려 전국 KT 통신망을 마비시킨 것이다.

 

보통 망 고도화 작업은 트래픽이 많이 발생하는 낮시간대를 피해서 이루어진다. 그런데 낮시간대 망 고도화 작업을 하다가 오류가 발생했고, 많은 음식점을 운영하는 소상공인, 배달 플랫폼, 기업, 학교, 개인 등에 피해가 크게 발생하였다.

 

 

 

 

 


 

12시 45분경 KT로부터 서비스 복구가 보고됐지만, 과학기술정보통신부는 정보통신사고 위기관리 매뉴얼에 따라서 정보보호네트워크정책관을 상황실장으로 방송통신재난대응상황실을 구성해 완전한 복구여부를 확인중이다. 또한 과학기술정보통신부는 사고원인 조사 후, 재발방지대책 등 후속조치를 마련할 계획이라고 밝혔다.

 

 

728x90