DDoS 공격이란 무엇인가?
DDoS(분산 서비스 거부, Distributed Denial-of-Service)는 다수의 봇넷 시스템이 하나의 시스템을 집중적으로 공격해 정상적인 운영을 마비시키는 사이버 공격입니다. 공격자는 웹사이트의 서비스를 중단시키려 하며, 애플리케이션, 네트워크, 서비스, 장치, 서버는 물론 소프트웨어 내 특정 트랜잭션까지 접근을 차단하는 방식으로 이루어집니다. 일반적인 DoS 공격은 단일 시스템에서 악성 데이터나 요청을 보내는 반면, DDoS 공격은 여러 시스템에서 동시에 공격이 이루어진다는 점이 가장 큰 차이입니다.

사이버 범죄자들은 과도한 서비스 요청으로 시스템을 압도합니다. 공격자는 특정 페이지에 대한 접근 요청으로 서버를 채우거나, 데이터베이스에 비정상적으로 많은 쿼리를 날립니다. 그 결과 RAM, CPU, 인터넷 대역폭 같은 하드웨어 자원의 임계 용량이 초과되며 시스템 전체가 마비됩니다. 피해는 경미한 서비스 중단부터 애플리케이션이나 웹사이트, 나아가 사업 전체의 다운타임이라는 심각한 손실까지 다양하게 나타납니다.
DDoS 공격의 증상
DDoS 공격은 겉보기에는 악의적이지 않은 활동처럼 보입니다. 서버 다운타임, 실제 사용자들의 수많은 정상 요청, 혹은 단순한 케이블 불량으로 착각할 수 있기 때문입니다. 따라서 실제 공격 여부를 판단하려면 트래픽을 면밀히 분석해야 합니다.
DDoS 공격의 역사
2000년대 초반, '마피아보이(MafiaBoy)'라는 별명으로 알려진 학생 마이클 칼세(Michael Calce)는 DDoS 공격으로 야후(Yahoo)의 서비스를 마비시켰습니다. 이어 그는 CNN, 이베이(eBay), 아마존(Amazon)에도 성공적인 공격을 감행했습니다. 역사상 최초의 DDoS 공격은 아니었지만, 이 연쇄 공격은 세간의 큰 주목을 받으며 DDoS가 세계 유력 기업들을 위협하는 공격으로 부상하는 계기가 되었습니다.
DDoS 공격은 주로 갈취, 사이버전 수행, 혹은 단순한 복수 등의 목적으로 사용됩니다. 수년에 걸쳐 공격은 1,000Gbps를 넘어서는 규모를 만들어낼 수 있는 자원을 확보하며 끊임없이 진화했습니다. 대표적인 사례가 2016년의 'Dyn 공격'입니다. 이 공격에서는 초당 데이터 전송률이 1.2Tbps로 기록되었는데, 최신 봇넷인 미라이(Mirai) 봇넷 덕분에 가능했습니다. 수백만 개의 IP 주소가 서버에 쿼리를 쏟아내면서 미국 동부 해안 전체가 흔들렸습니다.
Dyn 공격은 프린터와 카메라를 포함해 10만 개의 IoT 장치에 직접적인 영향을 미쳤습니다. 이후 넷플릭스(Netflix), 트위터(Twitter), 텀블러(Tumblr), 스포티파이(Spotify), 레딧(Reddit), 아마존 등 주요 서비스도 유사한 공격의 표적이 되었습니다. 또한 GitHub도 DDoS 공격을 받아 초당 1.35Tbps의 데이터 전송률을 기록했습니다. 공격의 규모가 엄청났지만 GitHub는 이를 효과적으로 방어해 즉시 정상 운영을 회복했습니다.
사후 분석 결과, 공격자들은 Memcached 서버를 활용해 공격 효과를 증폭시킨 것으로 밝혀졌습니다. 이는 이전 공격들에 비해 상당히 단순한 기법이었습니다.
보안 전문가들은 미라이 봇넷 공격과 유사한 '와이렉스(WireX)'라는 또 다른 공격도 발견했습니다. 이 공격은 100개국에 걸쳐 유통된 10만 개의 안드로이드 장치를 표적으로 삼았습니다. 그 이후로도 다양한 서비스 제공업체를 겨냥한 DDoS 공격이 계속되고 있어, 이러한 사건들에 대한 지속적인 조사와 대응이 필요합니다.
DDoS 공격에 쓰이는 도구
공격자들은 봇넷(botnet)을 이용해 DDoS 공격을 확산시킵니다. 봇넷이란 봇마스터(공격자)가 원격으로 통제하는 악성코드 감염 장치들의 네트워크를 의미합니다. DDoS 공격자들은 주로 서버와 컴퓨터를 감염 대상으로 삼으며, 최근에는 모바일 및 IoT 장치도 표적 시스템 마비에 적극 활용하고 있습니다. 이런 장치들은 대량 주입(mass injection) 기법, 맬버타이징(malvertising) 공격, 피싱(phishing) 공격 등을 통해 개별 시스템을 감염시키는 데 사용됩니다.
DDoS 공격의 세 가지 유형
DDoS 공격은 크게 세 가지 유형으로 분류할 수 있습니다.
- 볼류메트릭 공격: 대량의 가짜 트래픽으로 시스템 접근 자체를 차단합니다. 예: 스푸핑 패킷 플러드(spoofed packet flood), UDP·ICMP 플러드 공격
- 프로토콜 공격: 데이터 패킷으로 네트워크 인프라 전체 또는 인프라 관리 도구를 공략합니다. 예: 스머프(Smurf) DDoS, SYN 플러드
- 애플리케이션 계층 공격: 조직의 애플리케이션 계층을 표적으로 삼아 악성코드가 담긴 요청으로 애플리케이션을 마비시킵니다. 그 결과 온라인 리소스가 응답하지 못하게 됩니다.
DDoS 공격은 어떻게 진화했는가
요즘 공격자들은 봇넷을 임대해 손쉽게 DDoS 공격을 수행하기도 합니다. 또 하나의 고급 기법인 'APDoS(Advanced Persistent Denial-of-Service, 지속형 고급 서비스 거부)'는 단일 공격에서 여러 공격 벡터를 동원합니다. 이런 공격은 애플리케이션, 데이터베이스, 서버를 모두 공략합니다. 공격자들은 한 번에 최대한 많은 장치에 영향을 주기 위해 ISP(인터넷 서비스 제공업체)를 직접 노리는 기술도 사용합니다.
이제 DDoS 공격은 단일 시스템만 노리는 수준을 넘어 여러 조직, 공급업체, 협력사, 비즈니스 파트너를 동시에 표적으로 삼는 공격으로 성장했습니다. 어떤 조직도 가장 약한 고리만큼만 안전하다는 말이 있듯이, 제3자와 직원 등 모든 구성 개체를 철저히 보호하는 것이 필수적입니다.
날로 정교해지는 사이버 범죄자들의 공격에 대해 기술과 전략만으로 완벽히 맞서기는 어렵습니다. AI, 머신러닝, 새로운 IoT 장치가 세상에 등장하면서 DDoS 공격 역시 계속 진화할 것입니다. 공격자들은 이러한 신기술을 공격에 활용해 더욱 치명적인 위협을 만들어낼 것입니다. 그럼에도 불구하고, DDoS 방어 기술 역시 이에 맞춰 함께 발전해 나갈 것입니다.