OpenParable
Skip to content
← Back to skills

Cis Bind9 V301 2 5

DevOps & Security
cis-bind9-v301-2-5

Cis Bind9 V301 2 5 is an Agent Skill for devops & security published in the CyberStrikeus/CyberStrike repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.

Set root Ownership of BIND Configuration Files (Automated)

View on GitHub ↗
QUICK START

How to use this skill

Bring this guide into your coding agent with a prompt tailored to the tool you use.

  1. Open your project in Codex.
  2. Copy and paste the prompt below.
  3. Review files and risks before approving any action.
Prompt to paste
Inspect the Agent Skill at https://github.com/CyberStrikeus/CyberStrike/blob/HEAD/.cyberstrike/skill/CIS_benchmarks/Server_Software/Bind/CIS_ISC_BIND_DNS_Server_9.9_Benchmark_v3.0.1/cis-bind9-v301-2-5/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/cis-bind9-v301-2-5, but wait for my approval before writing files or running scripts.

Copying this prompt does not install or run the skill. Review third-party files before use.

CIS 2.5 — Set root Ownership of BIND Configuration Files

Profile Applicability

  • Level 1 - Authoritative Name Server
  • Level 1 - Caching Only Name Server

Description

The configuration files in the ISC BIND directories should be owned by root. Of course, any files created at run time by BIND, such as pid files, log files and slave zone files will necessarily be owned by named.

Rationale

Restricting ownership of the configuration files provides defense in depth and will reduce the probability of unauthorized modifications to those important files. If there was a BIND vulnerability that allowed code execution as the named user, then the code would not be able modify the configuration files.

Impact

Not Applicable

Audit Procedure

Run the command below to ensure that all BIND configuration files are owned by root, except for those found in the run-time directories. Ensure that the BIND benchmark variables used below are set as described in the benchmark overview, as these variables identify the run-time directories. ($DYNDIR, $SLAVEDIR, $DATADIR, $RUNDIR, $LOGDIR, $TMPDIR) If a chroot'ed directory is not used, then $LOGDIR and $TMPDIR are not generally a subdirectory of $BIND_HOME, and the two directories may be omitted, however including them will not cause any errors or false positives.

# find $BIND_HOME -type f \! -user root | egrep -v \
\^$DYNDIR\|^\$SLAVEDIR\^$DATADIR\|^\$RUNDIR\|^\$LOGDIR\|^\$TMPDIR

There should be no files listed in the output from the find command.

Remediation

Perform the following:

  • Capture the output of the previous audit command to a file named nonroot-files.txt and review any files not owned by root to ensure the files are necessary and are not expected run-time files. Delete any unnecessary files, and ensure any run-time files are being created in the appropriate run-time directory.
# find $BIND_HOME -type f \! -user root | egrep -v \
\^$DYNDIR\|^\$SLAVEDIR\^$DATADIR\|^\$RUNDIR\|^\$LOGDIR\|^\$TMPDIR > \
$TMPDIR/nonroot-files.txt
  • The remaining non-run-time files should be changed to be owned by root, with a command like the following:
# cat $TMPDIR/nonroot-files.txt | xargs chown root
# rm $TMPDIR/nonroot-files.txt

Default Value

The default rpm has all configuration files owned by root.

References

Not Applicable

CIS Controls

Controls VersionControlIG 1IG 2IG 3
v614.4 - Protect Information with Access Control ListsYYY

MITRE ATT&CK Mappings

TacticTechnique
Defense EvasionT1222 - File and Directory Permissions Modification
PersistenceT1546 - Event Triggered Execution

Profile

  • Level 1 - Authoritative Name Server
  • Level 1 - Caching Only Name Server