TMAegis
More rules for bind

TMA-BIND-4.2

Include Cryptographic Key Files

MediumLevel 1Automatedbind

Description

Do not place keys directly in the BIND named.conf, but use separate configuration files for the keys and include them into the named.conf file, in order to protect the keys from unintentional disclosure. The audit requires the main named.conf (/etc/named.conf, /etc/bind/named.conf or the chroot copy) to contain no secret statements; keys belong in separate included key files.

How it is checked

Audit method: Shell command

shell
bad=''
for f in /etc/named.conf /etc/bind/named.conf /var/named/chroot/etc/named.conf; do [ -f "$f" ] || continue; grep -Eq '^[^#/]*secret[[:space:]]+"' "$f" && bad="$bad $f"; done
[ -z "$bad" ] && echo compliant || echo "secret keys embedded in:$bad"
Expected output
compliant

How it is fixed

Fix method: Guidance or infrastructure patch

Move each key definition statement from the named.conf file into its own key file. It is recommended to name both the key and the key file after the two hosts that will be sharing the secret key, in order to avoid confusion. Then include the key files with include statements in the named.conf. An example is shown below with the key definition statement moved to a separate key file, however it is also accepted for only the secret statement to be moved to another file. # grep -C 1 include /etc/named.conf // Include the key file used for the host1 and host2 TSIG comms include "/etc/private/host1-host2.cisecurity.org.key"

Properties

Operating systems
Any
Tags
binddnstsig
Reference
CIS ISC BIND DNS Server 9.11 Benchmark v1.0.0 - 4.2 Include Cryptographic Key Files

Check this host

Run this on a machine you are allowed to audit. The scan is read-only.

shell
tmaegis scan --target bind