"개방형 DNS 확인자"는 인터넷상의 모든 사람에 대한 재귀 적 DNS 조회를 해결하고자하는 DNS 서버입니다. 단순한 인증 부족으로 악의적 인 타사가 보안되지 않은 장비를 사용하여 페이로드를 전파 할 수 있다는 점에서 개방형 SMTP 릴레이와 매우 유사합니다. 열린 SMTP 릴레이를 사용하면 문제는 스팸을 전달한다는 것입니다. 공개 DNS 리졸버를 사용하면 문제는 DNS 증폭 공격이라는 서비스 거부 공격을 허용한다는 것입니다.
이 공격의 작동 방식은 매우 간단합니다. 서버는 누구나 재귀 적 DNS 쿼리를 해결하므로 공격자는 서버에 재귀 적 DNS 쿼리를 전송하여 DDoS에 참여하게 할 수 있습니다. 원래 DNS 요청 패킷 IP 주소를 스푸핑 (가짜)함으로써이 추가 트래픽을 피해자의 컴퓨터 대신 자신의 컴퓨터로 보내 게됩니다. 물론 서버와 다른 공개 DNS에 최대한 많은 요청을 보냅니다. 그들이 찾을 수있는 결심 자. 이러한 방식으로 비교적 작은 파이프를 가진 사람은 파이프의 모든 대역폭을 사용하여 피해자에게 훨씬 더 많은 트래픽을 유도함으로써 서비스 거부 공격을 "증폭"할 수 있습니다.
ArsTechnica는 Spamhaus에 대한 최근의 DNS 증폭 DDoS 공격에 대해 적절한 기사를 작성 했으며 기본 사항 (및 증폭의 좋은 시각)을 빨리 읽을 가치가 있습니다.
이와 같이 시스템이 악용되지 않도록 보호하는 가장 간단한 방법은 서버가 로컬 서브넷에 대한 재귀 적 조회를 수행 할 주소를 제한하는 것입니다. (자세한 내용은 사용중인 DNS 서버에 따라 다릅니다).
예를 들어, BIND 9를 사용 중이고 외부 주소에서 DNS 재귀를 방지하려면 구성에서 다음 코드를 사용합니다.
options {
directory "/var/named/master";
allow-recursion { 127.0.0.1; 10.0.0.0/8; 192.168.0.0/16; 172.16.0.0/12; };
이 코드 줄은 내 BIND 서버에게 로컬 루프백 주소 (로컬 루프백 블록, 전체 / 8로 설정할 수 있어야 함) 및 3 개의 개인 IPv4 주소 공간에 대한 재귀 적 DNS 요청 만 처리하도록 지시합니다.
사용중인 Windows Server 2012의 경우 아래 옵션이 있습니다.
1. DNS 서버와 IIS 서버를 분리하십시오.
- 최소한 완벽한 세상에서는 IIS와 같은 상자에서 DNS를 실행해야 할 이유가 없습니다.
- NAT되지 않은 내부 상자에 DNS를 배치하여 외부 세계가 접근 할 수 없도록하고 IIS가 외부 세계가 도달 할 수있는 외부 상자에 상주하게하십시오. 이중 호밍 또는 방화벽 규칙을 사용하여 IIS 서버에서 DNS 서버에 대한 액세스를 선택적으로 허용 할 수 있습니다.
2. 내장 된 Windows 방화벽과 같은 방화벽으로 외부 DNS 요청을 차단합니다.
- 놀랍게도 Windows DNS에서는 재귀 DNS 요청이 적용되는 주소를 제한 할 수 없으므로 실제로 Microsoft에서 권장하는 방법입니다.
-
- DNS 규칙 (TCP 및 UDP)을 선택하고
Remote IP address
섹션으로 이동 하여 LAN에서 사용중인 서브넷과 Active Directory에 액세스해야하는 서버의 공개 IP 주소를 추가하십시오. BIND 예제와 마찬가지로 IPv4 개인 주소 공간은 127.0.0.0/8
10.0.0.0/8
192.168.0.0/16
및 172.16.0.0/12
입니다.
- 실제로 환경에 DNS 및 AD가 어떻게 구성되어 있는지 설명하지 않았으므로 이것이 마지막 옵션이므로, 이것이 환경에 어떤 영향을 미칠지 잘 모르겠습니다.
-
- DNS 관리자를 엽니 다.
- 콘솔 트리에서 해당 DNS 서버를 마우스 오른쪽 단추로 클릭 한 다음 속성을 클릭하십시오.
- 어디?
- DNS / 적용 가능한 DNS 서버
- 고급 탭을 클릭하십시오.
- 서버 옵션에서 재귀 사용 안 함 확인란을 선택한 다음 확인을 클릭합니다.
- 다중 포리스트 환경이 있고 조건 전달자를 사용하여 작동하므로 해당 확인란을 선택하지 않겠습니다. 고려해야 할 사항이있을 수 있습니다.