DNS 증폭 공격

From CS Wiki
DNS Amplification DDoS Attack; DNS를 이용한 UDP Flooding 서비스 거부 공격

공격 원리[edit | edit source]

  • DNS 질의는 DNS 질의량에 비하여 DNS 서버의 응답량이 훨씬 크다는 점을 이용한다.
  • DNS 프로토콜에는 인증 절차가 없다는 점을 이용한다.

공격이 이루어지는 과정[edit | edit source]

  • 공격자는 증폭된 DNS 응답이 대상자 서버로 대량으로 전달될 수 있도록 출발지 IP를 대상자 IP로 위조한 TXT 질의 유형의 DNS 질의를 중간자에게 다수 요청한다.
  • 중간자는 다수의 DNS 질의에 대한 응답을 위조된 출발지 IP인 대상자에 응답한다.
  • 대상자는 요청하지 않은 대량의 DNS 응답을 중간자로부터 받아 서비스 거부가 발생한다.
  • Open DNS Resolver 서버에 DNS Query의 Type을 "Any"로 요청한다.
  • Open Resolver 서버는 찾는 도메인이 자신이 관리하지 않을 경우 상위 DNS에 물어 응답을 받아 온다.
  • Open Resolver는 A, NS, CNAME 등 모든 Type의 응답정보를 모두 반환한다.
  • 위와 같은 요청을, 요청 주소를 희생자의 주소로 위조하여 다량의 서버에 보내면 희생자는 수 Gbps의 응답을 받게 된다.
    • 구체적으로 쿼리 예시를 들어주실분 찾습니다.

대응[edit | edit source]

  • DNS 서버 설정을 통해 내부 사용자의 주소만 재귀 쿼리(Recursive Query)를 허용한다.
  • 방화벽 설정을 통해 특정 byte 이상의 dns 응답을 차단한다.
  • 동일 출발지 IP에 대해 단위시간(초)당 요청 개수 제한 설정을(임계치 설정) 한다.