adguard home "possible DNS-rebind attack detected:" 처리방법

혹시 adguard home 또는 pi-hole 으로 운영하는 DNS를 이용시 OpenWrt (대부분의 라우터를 포함)의 syslog를 확인했을 때 아래와 같이 차단된 사이트에서 DNS-rebind attack 일지도 모르는 활동을 감지했다는 log로 도배가 된 적이 있나요? 물론 기본적인 설정에서 OpenWrt는 DNS-rebind attack에 대한 방어가 설정되어 있으므로 걱정할 것은 없지만 다른 로그를 볼 수 없을정도로 도배가 되고 왠지 기분이 좋지않고 신경이 쓰일것입니다.

Thu Jan 28 17:13:29 2021 daemon.warn dnsmasq[31263]: possible DNS-rebind attack detected: display.ad.daum.net
Thu Jan 28 17:14:32 2021 daemon.warn dnsmasq[31263]: possible DNS-rebind attack detected: track.tiara.daum.net
Thu Jan 28 17:14:32 2021 daemon.warn dnsmasq[31263]: possible DNS-rebind attack detected: stat.tiara.daum.net
Thu Jan 28 17:14:32 2021 daemon.warn dnsmasq[31263]: possible DNS-rebind attack detected: display.ad.daum.net
Thu Jan 28 17:14:32 2021 daemon.warn dnsmasq[31263]: possible DNS-rebind attack detected: webid.ad.daum.net
Thu Jan 28 17:14:37 2021 daemon.warn dnsmasq[31263]: possible DNS-rebind attack detected: keyword.ad.daum.net
Thu Jan 28 17:14:41 2021 daemon.warn dnsmasq[31263]: possible DNS-rebind attack detected: display.ad.daum.net
Thu Jan 28 17:14:42 2021 daemon.warn dnsmasq[31263]: possible DNS-rebind attack detected: webid.ad.daum.net
Thu Jan 28 17:14:42 2021 daemon.warn dnsmasq[31263]: possible DNS-rebind attack detected: stat.tiara.daum.net

해결방법

dns에게 쿼리를 보내면 성공여부와 관계없이 응답을 받습니다. 모든 응답에는 응답코드를 포함하며(전체 코드는 20개가 넘지만) 그 응답코드는 대부분 NOERROR, NXDOMAIN, SERVFAIL 그리고 REFUSED 중에 하나입니다. 간략히 설명하면 아래와 같습니다.

  • NOERROR : 모든것이 정상으로 쿼리에 문제가 없음
  • NXDOMAIN : 도메인이 존재하지 않음
  • SERVFAIL : 쿼리에 대한 답변을 할수 없음(방화벽 차단 등)
  • REFUSED : 정책적인 이유로 거부

adguard home도 dns 이므로 쿼리에 대해 응답을 하는데 차단된 domain의 경우 아래처럼 4가지 방법으로 응답하는 방법을 설정할 수 있습니다.

  1. REFUSED: REFUSED 코드로 응답
  2. NXDOMAIN: NXDOMAIN 코드로 응답
  3. Null IP: 제로 IP 주소 (A는 0.0.0.0; AAAA는 ::) 로 응답 (기본)
  4. 커스텀 IP: 직접 설정한 IP 주소로 응답

adguard home은 기본(defalut)으로 지정된 3번째 Null IP (0.0.0.0)으로 응답하기 때문에 OpenWrt에서 syslog를 확인해 보면 possible DNS-rebind attack detected를 뿝어 냅니다. (제 기억으로 예전에는 NXDOMAIN이 기본값 이었던 것 같은데 어느 순간 바뀐것 같습니다. 이유야 있겠지만 왜 바꿨는지는 모르겠음)

Null IP (0.0.0.0)로 변경된 이유 : https://github.com/AdguardTeam/AdGuardHome/issues/1914 참조)

이것을 adguard home DNS 설정에서 블로킹 모드를 NXDOMAIN 또는 REFUSED 로 변경하세요. 그러면 라우터 syslog에 보이는 possible DNS-rebind attack detected 에러 로그는 해결됩니다. 하지만 위의 링크에서 보는바와 같이 특정 브라우저에서 광고가 제거 되지 않거나 하는 문제가 있을 수 있다고 합니다.

adguard home dns setting

또는 사용자지정 ip(custom ip)로 설정해 IPv4 127.0.0.1, IPv6 ::1 하고 /etc/config/dhcp 에 option rebind_localhost '1' 을 추가하고 dnsmasq를 재시작 하면 됩니다.

adguard home dns setting
config dnsmasq

...
        option rebind_protection '1'
        option rebind_localhost '1'
...

/etc/init.d/dnsmasq restart

Comments

No comments yet. Why don’t you start the discussion?

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다

  ⁄  4  =  2