BIND DNS
TMA-BIND-7.3
Disable the dnssec-accept-expired Option
MediumLevel 1Automatedbind
Description
The dnssec-accept-expired option allows BIND to accept expired signatures during validation. The option should be disabled so that expired signatures will not be accepted. The audit fails when dnssec-accept-expired is set to yes (absent or no is compliant). 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).
How it is checked
Audit method: Shell command
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 ' ')
printf '%s\n' "$flat" | grep -Eq '[{; ]dnssec-accept-expired yes;' && echo 'dnssec-accept-expired yes' || echo compliant- Expected output
compliant
How it is fixed
Fix method: Guidance or infrastructure patch
Change the dnssec-accept-expired option to have a value of no, or remove the option from the configuration files.
Properties
- Operating systems
- Any
- Tags
- binddnsdnssec
- Reference
- CIS ISC BIND DNS Server 9.11 Benchmark v1.0.0 - 7.3 Disable the dnssec-accept-expired Option
Check this host
Run this on a machine you are allowed to audit. The scan is read-only.
shell
tmaegis scan --target bind