위조 질의
작은 UDP 요청의 출발지를 피해자 IP로 둔다.
Resolver A
큰 응답을 피해자에게 반환
Authoritative B
DNSSEC, TXT, EDNS로 응답이 커짐
피해자 링크
많은 큰 응답이 한 지점으로 수렴한다.
방어 위치
BCP 38, open resolver 제한, 응답률 제한, Anycast 흡수
1. spoof
발신망 필터가 없으면 피해자 주소로 질의를 보낸다.
2. reflect
DNS 서버는 정상 응답처럼 피해자에게 돌려준다.
3. amplify
질의보다 큰 응답이 회선과 장비를 압박한다.
4. contain
출발지 검증과 resolver 운영 정책이 경계를 줄인다.
Attacker bot
UDP source를 피해자 IP로 위조하고 여러 서버에 분산 질의
Reflector
resolver 또는 authoritative DNS가 응답을 피해자에게 보냄
Victim edge
요청한 적 없는 DNS 응답이 회선과 방어 장비를 압박
Operators
발신망, DNS 운영자, 피해자 측 방어가 서로 다른 지점에서
필요
1
forged query
src=victim, dst=reflector:53/udp,
작은 질의 다량 전송
2
large answer
DNSSEC 서명, TXT, 큰 RRset, EDNS UDP size로 응답 크기
증가
3
victim flood
피해자는 반사자 IP에서 온 UDP/53 응답 폭주를 관측한다
spoofing
BCP38 미적용 발신망
공격 패킷이 나가는 네트워크가 출발지 주소 검증을 하지 않으면
반사 공격이 가능해진다.
payload
작은 요청, 큰 응답
ANY, TXT, DNSSEC 관련 응답, 큰 권한 응답은 요청보다 훨씬 커질
수 있다.
UDP
연결 상태가 없는 반사
UDP는 TCP 3-way handshake처럼 주소 소유를 먼저 확인하지
않는다.
scale
다수 reflector 병렬 사용
피해자 입장에서는 여러 DNS 서버에서 온 정상 형식 응답처럼
보인다.
발신망 / ISP
BCP38, uRPF, egress filtering으로 자기 고객망에서 위조 source가
나가지 못하게 한다.
Recursive DNS
재귀 기능은 고객·내부 대역으로 제한하고 open resolver가 되지
않게 ACL을 둔다.
Authoritative DNS
외부 공개는 정상이다. 대신 RRL, minimal responses, ANY 제한,
DNS Cookies, EDNS UDP size 조정을 검토한다.
피해자 / 엣지
Anycast, scrubbing, 상위 ISP 협력, UDP/53 응답 패턴 탐지로
유입을 흡수·완화한다.
victim view
요청하지 않은 DNS responses
피해자는 outbound query보다 훨씬 많은 inbound UDP/53 응답을
본다.
reflector view
피해자 IP에서 온 듯한 queries
반사자 로그에는 source가 피해자로 보일 수 있어 네트워크 레벨
검증이 중요하다.
fallback
TC bit와 TCP fallback은 완화 단서
큰 UDP 응답을 줄이고 TCP로 넘기면 스푸핑 기반 대량 반사가
어려워진다.