TMA-ROCKY8-7.1.9
Ensure access to /etc/shells is configured
MediumLevel 1Automatedlinux
Description
/etc/shells is a text file which contains the full pathnames of valid login shells. This file is consulted by chsh and available to be queried by other programs.
How it is checked
Audit method: Shell command
shell
alt0() { s=$(stat -Lc '%a %u %g' /etc/shells 2>&1) || { echo "step1: $s"; return 1; }; set -- $s; m=$((8#$1)); [ $((m & ~0644)) -eq 0 ] && [ "$2" = 0 ] && [ "$3" = 0 ] || { echo "step1: /etc/shells is mode $1 uid $2 gid $3, want 644 or stricter, uid 0, gid 0"; return 1; }; }; if alt0; then echo compliant; fi- Expected output
compliant
How it is fixed
Fix method: Guidance or infrastructure patch
Run the following commands to remove excess permissions, set owner, and set group on /etc/shells: # chmod u-x,go-wx /etc/shells # chown root:root /etc/shells
Properties
- Operating systems
- rocky-8
- Tags
- cis-convertedlinux
- Reference
- CIS Rocky Linux 8 Benchmark v3.0.0 - 7.1.9
Check this host
Run this on a machine you are allowed to audit. The scan is read-only.
shell
tmaegis scan --target linux