DNS 증폭 공격은 2016년 이후 거의 2016년 이후 700% 증가. 이러한 공격의 증폭 계수는 다음과 같이 다양합니다. 28~54배 증폭 계수는 원래 쿼리 크기의 28배에서 54배까지 다양합니다. 극단적인 경우에는 최대 179배까지 증폭될 수 있습니다.
이 글에서는 DNS 증폭 공격이 무엇인지, 어떻게 작동하는지, 이러한 공격을 탐지하고 완화하는 방법을 살펴봅니다. 또한 최근 DNS 시스템의 안정성을 흔들었던 DNS 증폭 공격의 실제 사례도 몇 가지 소개합니다.
주요 내용
- A DNS 증폭 공격 은 일종의 디도스 공격 해커가 취약한 DNS 서버를 악용하여 대상에게 대량의 트래픽을 전송하는 공격입니다.
- 적은 수의 요청만으로는 네트워크 인프라를 손상시키기에 충분하지 않지만, 수많은 DNS 확인자에 걸쳐 요청이 증가하면 시스템에 매우 위험하고 치명적인 결과를 초래할 수 있습니다.
- 지난 수십 년 동안 수많은 DNS 증폭 공격이 성공적으로 이루어졌으며, 그 중 2013년 스팸하우스 공격, 2022년 구글 공격, 2016년 Dyn 공격 등이 있습니다.
- 적절한 도구와 메커니즘을 갖추고 있다면 DNS 증폭 공격을 조기에 탐지할 수 있습니다.
- DNS 증폭 공격을 방지하는 데 있어 DNSSEC, IDS/IPS 및 EDR 시스템은 큰 도움이 될 수 있습니다.
DNS 증폭 공격이란 무엇인가요?
DNS 증폭 공격은 공격자가 잘못 구성된 개방형 DNS 확인자를 악용하여 대량의 DNS 응답 트래픽을 표적에 쏟아붓는 반사 기반 분산 서비스 거부(DDoS) 공격입니다.
이 공격에서 사이버 범죄자는 특정 개방형 DNS 서버에 DNS 조회 요청을 합니다. 그리고 소스 주소를 스푸핑하여 공격 대상의 주소로 만듭니다. DNS 서버가 DNS 레코드 응답을 반환하면 사이버 범죄자가 제어하는 새로운 표적이 아닌 피해자의 IP 주소(스푸핑된 소스 주소)로 직접 전송됩니다.
이로 인해 피해자는 요청되지 않은 DNS 응답을 대량으로 수신하여 네트워크 인프라에 과부하를 일으켜 서비스 거부를 일으킬 수 있습니다.
이 공격 방법은 위에서 언급했듯이 원래 쿼리 크기의 28~54배에 달하는 증폭 계수 때문에 특히 위험합니다.
DNS 증폭 공격의 작동 방식
DNS 증폭 공격의 과정에는 여러 단계가 포함됩니다:
1단계: 피해자의 IP 스푸핑
공격자는 손상된 디바이스를 악용하여 위조된 IP 주소가 포함된 UDP 패킷을 DNS 재귀 확인자로 전송합니다. 스푸핑된 주소는 피해자의 실제 IP 주소와 일치합니다.
2단계: 증폭된 DNS 쿼리 보내기
각 UDP 패킷은 DNS 확인자를 요청하며, 가능한 한 가장 광범위한 응답을 얻기 위해 "ANY"와 같은 매개변수를 사용하는 경우가 많습니다.
3단계: 리졸버가 대규모 응답을 전송합니다.
요청을 받으면 DNS 확인자는 광범위한 데이터로 응답하여 스푸핑된 IP 주소로 연결합니다.
4단계: 트래픽으로 타겟을 압도하기
공격 대상의 IP 주소가 응답을 받고 네트워크 인프라가 광범위한 트래픽으로 넘쳐나면 서비스 거부로 이어집니다.
소수의 요청만으로는 네트워크 인프라가 손상되지 않지만, 여러 요청과 수많은 DNS 확인자를 통해 요청이 증가하고 규모가 확대되면 공격자는 표적으로 향하는 데이터의 양을 크게 증폭시켜 피해자의 네트워크 리소스를 압도할 수 있습니다.
DNS 증폭 공격 예시
지난 몇 년 동안 DNS 증폭 공격이 여러 차례 발생하여 이러한 공격이 미칠 수 있는 영향의 잠재력과 규모를 보여줬습니다:
구글 어택 (2022)
2022년 6월 1일, 구글 클라우드 아머 사용자를 대상으로 한 디도스 공격이 HTTPS를 사용해 69분. 당시 이 공격은 초당 최대 4,600만 건 이상의 요청을 기록한 '최대 규모의' 분산 서비스 거부(DDoS) 공격이었습니다. 132개국에서 5,256개의 소스 IP가 이 공격에 연루되었습니다. Google에 따르면 이는 레이어 7 DDoS 공격 중 가장 큰 규모였으며 이전 기록보다 약 76% 더 큰 규모였습니다.
딘 어택 (2016)
2016년 10월 21일, 트위터, 아마존, 깃허브, 뉴욕타임즈가 디도스 공격으로 인해 서비스 중단되었습니다. Dyn DDoS 공격. 공격의 표적은 인터넷 도메인 이름 시스템(DNS) 인프라의 상당 부분을 서비스하는 Dyn이라는 회사였습니다.
공격은 거의 하루 종일 지속되었습니다. 사이버 범죄자들은 컴퓨터가 아닌 IoT 디바이스를 이용하는 '미라이 봇넷' 멀웨어를 사용했으며, 그 결과 해커들은 가정용 라우터, 비디오 레코더 등 5만~10만 개 이상의 디바이스 중 하나를 선택하여 멀웨어를 실행할 수 있었습니다.
스팸하우스 어택 (2013)
스팸하우스 디도스 공격은 2013년 3월 18일에 시작되었으며, 당시 알려진 디도스 공격 중 가장 큰 규모였던 약 300Gbps. 스팸 방지 단체인 스팸하우스가 허용적인 정책으로 유명한 호스팅 업체인 CyberBunker를 블랙리스트에 올린 후 시작되었습니다.
이 공격은 개방형 DNS 확인자를 악용하여 트래픽을 증폭시키고 해커가 제한된 리소스로 대량의 데이터를 생성할 수 있는 DNS 리플렉션 기술을 사용했습니다. 이 사건은 개방형 DNS 확인자의 취약성과 대규모 DDoS 공격에 악용될 수 있는 가능성에 대한 전문가들의 주의를 환기시켰습니다. 여러 국가의 법 집행 기관이 이 공격을 조사해야 했습니다. 그 결과 다음과 같이 체포되었습니다. 17세 남성 체포되었습니다.
DNS 증폭 공격을 탐지하는 방법
DNS 증폭 공격을 탐지하는 데 사용할 수 있는 몇 가지 방법이 있습니다.
네트워크에 대한 DNS 증폭 공격의 징후
DNS 증폭 공격의 일반적인 징후는 다음과 같습니다:
- DNS 트래픽의 갑작스러운 급증
- DNS 쿼리 유형의 비정상적인 패턴(예: 대량의 "ANY" 쿼리)
- 합법적인 트래픽의 증가 없이 대역폭 소비량 증가
- 네트워크에서 쿼리하지 않은 DNS 서버의 응답이 많은 경우
의심스러운 DNS 트래픽을 탐지하는 도구 및 방법
- SIEM(보안 정보 및 이벤트 관리) 시스템
SIEM 시스템 은 비정상적인 쿼리 볼륨이나 목적지와 같은 이상 징후가 있는지 DNS 로그를 집계하고 분석합니다. 인기 있는 추천 서비스로는 Splunk, IBM, QRadar 등이 있습니다.
- 침입 탐지/방지 시스템(IDS/IPS)
이러한 시스템은 잠재적으로 의심스러운 DNS 활동의 패턴을 빠르게 식별하고 이러한 위협에 기반하여 경고를 트리거합니다. 일부 권장 도구로는 Snort와 Zeek가 있습니다.
- DNS 모니터링 및 분석 도구
이러한 도구는 DNS 쿼리에 대한 실시간 및 기록 분석을 제공하여 이상 징후를 탐지합니다. 예를 들어 PowerDMARC의 DNS 타임라인 기능이 있습니다.
- 엔드포인트 탐지 및 대응(EDR)
EDR 시스템은 명령 및 제어(C2)에 DNS를 사용하는 멀웨어와 같은 손상 징후가 있는지 엔드포인트 DNS 활동을 모니터링합니다. 예로는 Microsoft Defender ATP 및 SentinelOne이 있습니다.
의심스러운 DNS 활동을 방지하기 위한 사전 조치
- 속도 제한 DNS 쿼리 를 사용하여 남용을 방지합니다.
- 오픈 재귀 리졸버 차단 를 차단하여 공격 표면을 줄입니다.
- DNSSEC 구현 를 구현하여 DNS 스푸핑을 방지합니다.
- DNS 트래픽 로깅 및 분석 장기적인 추세 모니터링을 위해
모니터링할 메트릭 및 로그(예: 비정상적인 트래픽 패턴, 쿼리 비율).
DNS 서버 로그를 분석하여 비정상 트래픽 및 동일한 소스로부터의 반복 쿼리와 같은 비정상적인 패턴을 확인하면 초기 단계에서 잠재적인 공격을 식별하는 데 도움이 될 수 있습니다. 다음은 모니터링할 메트릭의 요약입니다:
- 소스별 쿼리 볼륨(IP/장치)
- 응답 크기 분포
- 쿼리 유형 분석(예: ANY, TXT, NULL, MX, SRV)
- 기기당 쿼리되는 고유 도메인
- 동일한 도메인에 대한 반복 쿼리
- NXDOMAIN(존재하지 않는 도메인) 실패율
- 비정상적인 쿼리 대상(외부 요청과 내부 요청)
- DNS 응답 지연 시간
DNS 증폭 공격 완화
사용할 수 있는 효과적인 완화 전략은 다양합니다.
DNS 증폭 공격을 방지하는 도구
1. 보안 DNS 확인자
개방형 확인자는 DNS 증폭 공격 및 DDoS 공격에 악용되는 경우가 많으므로 액세스를 제한하는 것이 중요합니다. 따라서 개방형 DNS 확인자는 사용하지 않는 것이 가장 좋습니다. 대신 신뢰할 수 있는 내부 클라이언트의 쿼리만 허용하도록 재귀 DNS 확인자를 구성할 수 있습니다. 또한 ACL(액세스 제어 목록)을 사용하여 특정 IP 또는 서브넷에 대한 액세스를 제한하는 것도 도움이 될 수 있습니다.
2. 응답률 제한(RRL) 구현하기
DNS 증폭 공격은 대량의 응답을 생성하는 확인자에게 수많은 작은 요청을 전송하여 피해자의 네트워크를 압도하는 방식입니다. 이를 완화하기 위해 단일 IP로 전송되는 동일한 응답의 비율을 제한하도록 DNS 서버를 구성할 수 있습니다. 이는 쿼리 기반 속도 제한을 구현하여 악의적인 반복 요청의 영향을 줄임으로써 달성할 수 있습니다. 널리 사용되는 DNS 소프트웨어에 내장된 RRL 모듈의 몇 가지 예는 다음과 같습니다:
- BIND: response-rate-limit { responses-per-second X; };
- PowerDNS: 최대-QPS-IP당 설정
- 언바운드: ratelimit 기능을 사용하여 클라이언트당 응답을 제한합니다.
3. 트래픽 필터링
DNS 트래픽을 필터링하면 악성 쿼리, 무단 액세스 및 데이터 유출 시도를 차단하는 데 도움이 될 수 있습니다. 또한 방화벽 및 침입 방지 시스템(IPS)은 의심스러운 DNS 트래픽을 차단하는 데 도움이 될 수 있습니다.
네트워크 보안을 위한 모범 사례
DNS 증폭 공격을 방지하려면 적절한 네트워크 보안을 실천하는 것이 중요합니다. 방법은 다음과 같습니다:
- 네트워크 보안을 위해 제로 트러스트 모델을 실천하세요.
- 구현 다단계 인증(MFA).
- 역할 기반 액세스 제어를 사용하여 민감한 시스템에 대한 액세스를 제한하세요.
- 지리적 차단 기술을 구현하여 고위험 지역의 접근을 제한하세요.
- 차세대 방화벽을 배포하고 방화벽 규칙을 정기적으로 업데이트하세요.
- DNS 스푸핑 공격을 방지하려면 DNSSEC를 사용하도록 설정하세요.
- HTTPS를 적용합니다.
- SSO(Single Sign-On)를 구현합니다.
- 다음과 같은 이메일 인증 프로토콜을 구현하세요. SPF, DKIM, DMARC.
- DLP(데이터 손실 방지) 시스템을 사용하도록 설정합니다.
- 피싱, 소셜 엔지니어링, 보안 브라우징에 대한 정기적인 보안 인식 교육을 실시하세요.
사전 예방적 조치의 중요성
정기적인 보안 감사, 지속적인 모니터링, 업계 뉴스 파악, 올바른 도구 사용과 같은 사전 조치를 취하면 공격 성공 위험을 줄일 수 있습니다. 신속한 조치가 중요한 이유는 다음과 같습니다:
1. 대규모 DDoS 공격 방지
DNS 증폭 공격에 대한 선제적 조치를 취하면 향후 대규모 DDoS 공격을 예방할 수 있습니다.
2. 네트워크 과부하 감소
DNS 증폭 익스플로잇은 네트워크 시스템에 과부하와 과부하를 일으켜 서비스 중단을 초래하고 네트워크 운영 속도를 저하시킬 수 있습니다. 신속한 조치를 취하면 이러한 상황을 방지할 수 있습니다.
3. 재정적 손실 및 법적 문제 방지
DNS 증폭 공격으로 인한 다운타임은 기업에 막대한 손실을 초래할 수 있습니다. 심지어 사이버 범죄를 조장하는 법적 영향을 미칠 수도 있습니다.
4. 조직 평판 유지
DNS 서버가 증폭 익스플로잇을 당하면 얼굴이 노출되고 평판이 손상될 수 있습니다. 이러한 상황에서는 예방이 필수적입니다.
마지막 말
DNS 증폭 공격의 피해자가 되면 재정적, 평판적 측면에서 상당한 비용이 발생할 수 있습니다. 고객의 눈에 도메인과 비즈니스의 신뢰도가 떨어지고 대체 솔루션을 찾게 될 수도 있습니다.
초기 단계에서 탐지하고 예방하기는 매우 어렵지만, 이러한 공격을 가능한 한 빨리 식별하고 완화하는 데 도움이 되는 몇 가지 일반적인 징후, 방법 및 주의해야 할 도구가 있습니다.
- 이메일 배달 가능성은 어떻게 확인하나요? - 2025년 4월 2일
- 2025년 최고의 DKIM 검사기 - 2025년 3월 31일
- 유명한 데이터 유출 및 피싱 공격: 우리가 배울 수 있는 것 - 2025년 3월 27일