TMAegis
bind 관련 규칙 더 보기

TMA-BIND-3.2

Restrict Recursive Queries

높음레벨 1자동bind

설명

A recursive DNS query is your typical DNS query from a client to a caching DNS server. It places the burden of finding the answer on the caching DNS server which will recursively query other DNS servers authoritative for the domains, until it gets the answer which is then returned to the client. The audit passes when the global options set "recursion no;" or an allow-recursion list that does not contain any. The audit parses the effective configuration printed by named-checkconf -p (all include files resolved) from /etc/named.conf (RHEL; chroot /var/named/chroot is detected) or /etc/bind/named.conf (Debian/Ubuntu).

점검 방법

감사 방식: 셸 명령

shell
if [ -f /var/named/chroot/etc/named.conf ]; then out=$(named-checkconf -t /var/named/chroot -p /etc/named.conf 2>/dev/null) || exit 1
else conf=/etc/named.conf; [ -f "$conf" ] || conf=/etc/bind/named.conf
  out=$(named-checkconf -p "$conf" 2>/dev/null) || exit 1; fi
flat=$(printf '%s\n' "$out" | tr '\t\n' '  ' | tr -s ' ')
opts=$(printf '%s\n' "$out" | awk '/^options[ \t]*\{/{f=1} f{print} f&&/^\};/{exit}' | tr '\t\n' '  ' | tr -s ' ')
if printf '%s\n' "$opts" | grep -Eq '[{; ]recursion no;'; then echo compliant; exit 0; fi
ar=$(printf '%s\n' "$opts" | grep -Eo 'allow-recursion \{[^}]*\}') || { echo 'recursion enabled without allow-recursion'; exit 1; }
printf '%s\n' "$ar" | grep -Eq '[{ ]"?any"?;' && { echo 'allow-recursion contains any'; exit 1; }
echo compliant
예상 출력
compliant

조치 방법

조치 방식: 가이드 또는 인프라 패치

Authoritative Name Server: For an authoritative name server, insert one of the following either into the global options or into every zone section. allow-recursion { localhost; }; recursion no; Caching Name Server: ; Define an ACL named trusted_clients which will identify the networks which are expected to use the DNS caching server, and will be allowed to send recursive DNS queries. acl trusted_clients { 10.19.4.0/28; . . . } ; Insert the following into the global options. allow-recursion { localhost; trusted_clients };

속성

운영 체제
모두
태그
binddnsaccess-control
참고 자료
CIS ISC BIND DNS Server 9.11 Benchmark v1.0.0 - 3.2 Restrict Recursive Queries

이 호스트 점검하기

감사 권한이 있는 시스템에서 실행하세요. 스캔은 읽기 전용입니다.

shell
tmaegis scan --target bind