An XCCDF Group - A logical subset of the XCCDF Benchmark
$ mount -t xfs | awk '{print $3}'
$ sudo chmod +t DIR
/etc/audit/auditd.conf
$ sudo chmod 0640 /etc/audit/auditd.conf
/etc/audit/rules.d/*.rules
$ sudo chmod 0640 /etc/audit/rules.d/*.rules
/boot/System.map-*
$ sudo chmod 0600 /boot/System.map-*
sysfs
procfs
$ findmnt -n -l -k -it $(awk '/nodev/ { print $2 }' /proc/filesystems | paste -sd,)
$ sudo find MOUNTPOINT -xdev -nogroup 2>/dev/null
$ sudo find MOUNTPOINT -xdev -nouser 2>/dev/null
fs.protected_fifos
$ sudo sysctl -w fs.protected_fifos=2
/etc/sysctl.d
fs.protected_fifos = 2
fs.protected_hardlinks
$ sudo sysctl -w fs.protected_hardlinks=1
fs.protected_hardlinks = 1
fs.protected_regular
$ sudo sysctl -w fs.protected_regular=2
fs.protected_regular = 2
fs.protected_symlinks
$ sudo sysctl -w fs.protected_symlinks=1
fs.protected_symlinks = 1
passwd
shadow
group
gshadow
/etc/group-
$ sudo chgrp root /etc/group-
/etc/gshadow-
$ sudo chgrp root /etc/gshadow-
/etc/passwd-
$ sudo chgrp root /etc/passwd-
/etc/shadow-
$ sudo chgrp root /etc/shadow-
/etc/group
$ sudo chgrp root /etc/group
/etc/gshadow
$ sudo chgrp root /etc/gshadow
/etc/passwd
$ sudo chgrp root /etc/passwd
/etc/shadow
$ sudo chgrp root /etc/shadow
$ sudo chown root /etc/group-
$ sudo chown root /etc/gshadow-
$ sudo chown root /etc/passwd-
$ sudo chown root /etc/shadow-
$ sudo chown root /etc/group
$ sudo chown root /etc/gshadow
$ sudo chown root /etc/passwd
$ sudo chown root /etc/shadow
$ sudo chmod 0644 /etc/group-
$ sudo chmod 0000 /etc/gshadow-
$ sudo chmod 0644 /etc/passwd-
$ sudo chmod 0000 /etc/shadow-
$ sudo chmod 0644 /etc/group
$ sudo chmod 0000 /etc/gshadow
$ sudo chmod 0644 /etc/passwd
$ sudo chmod 0000 /etc/shadow
/var/log
$ sudo chgrp root /var/log
/var/log/messages
$ sudo chgrp root /var/log/messages
/var/log/syslog
$ sudo chgrp adm /var/log/syslog
$ sudo chown root /var/log
$ sudo chown root /var/log/messages
$ sudo chown syslog /var/log/syslog
$ sudo chmod 0755 /var/log
$ sudo chmod 0640 /var/log/messages
$ sudo chmod 0640 /var/log/syslog
/lib /lib64 /usr/lib /usr/lib64
/lib/modules
root
$ sudo chgrp root DIR
/bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin
$ sudo chown root DIR
$ sudo chmod go-w DIR
$ sudo chgrp root FILE
/bin /sbin /usr/bin /usr/libexec /usr/local/bin /usr/local/sbin /usr/sbin
$ sudo chown root FILE
$ sudo chmod go-w FILE
$ find /lib/modules/`uname -r`/kernel/fs -type f -name '*.ko'
/etc/modprobe.d
autofs
/misc/cd
/etc/fstab
$ sudo systemctl mask --now autofs.service
nousb
/etc/default/grub
kernel /vmlinuz-VERSION ro vga=ext root=/dev/VolGroup00/LogVol00 rhgb quiet nousb
cramfs
/etc/modprobe.d/cramfs.conf
install cramfs /bin/true
freevxfs
/etc/modprobe.d/freevxfs.conf
install freevxfs /bin/true
hfs
/etc/modprobe.d/hfs.conf
install hfs /bin/true
hfsplus
/etc/modprobe.d/hfsplus.conf
install hfsplus /bin/true
jffs2
/etc/modprobe.d/jffs2.conf
install jffs2 /bin/true
squashfs
/etc/modprobe.d/squashfs.conf
install squashfs /bin/true
udf
/etc/modprobe.d/udf.conf
install udf /bin/true
usb-storage
/etc/modprobe.d/usb-storage.conf
install usb-storage /bin/true
modprobe
insmod
vfat
/etc/modprobe.d/vfat.conf
install vfat /bin/true
vFAT
FAT12
FAT16
FAT32
noauto
/boot
nodev
/dev
noexec
nosuid
/dev/shm
grpquota
/home
usrquota
/opt
hidepid
/proc
/proc/[pid]
0: Everybody may access all /proc/[pid] directories. 1: Users may not access files and subdirectories inside any /proc/[pid] directories but their own. The /proc/[pid] directories themselves remain visible. 2: Same as for mode 1, but in addition the /proc/[pid] directories belonging to other users become invisible.
hidepid=2
/srv
/tmp
/var/log/audit
/var
/var/tmp
/tmp /var/tmp none rw,nodev,noexec,nosuid,bind 0 0
mount(8)
/etc/permissions.local
chkstat
kernel.core_pattern
$ sudo sysctl -w kernel.core_pattern=|/bin/false
kernel.core_pattern = |/bin/false
kernel.core_uses_pid
$ sudo sysctl -w kernel.core_uses_pid=0
kernel.core_uses_pid = 0
kernel.dmesg_restrict
$ sudo sysctl -w kernel.dmesg_restrict=1
kernel.dmesg_restrict = 1
kernel.kexec_load_disabled
$ sudo sysctl -w kernel.kexec_load_disabled=1
kernel.kexec_load_disabled = 1
kernel.modules_disabled
$ sudo sysctl -w kernel.modules_disabled=1
kernel.modules_disabled = 1
kernel.panic_on_oops
$ sudo sysctl -w kernel.panic_on_oops=1
kernel.panic_on_oops = 1
kernel.perf_cpu_time_max_percent
$ sudo sysctl -w kernel.perf_cpu_time_max_percent=1
kernel.perf_cpu_time_max_percent = 1
kernel.perf_event_max_sample_rate
$ sudo sysctl -w kernel.perf_event_max_sample_rate=1
kernel.perf_event_max_sample_rate = 1
kernel.perf_event_paranoid
$ sudo sysctl -w kernel.perf_event_paranoid=2
kernel.perf_event_paranoid = 2
kernel.pid_max
$ sudo sysctl -w kernel.pid_max=65536
kernel.pid_max = 65536
kernel.sysrq
$ sudo sysctl -w kernel.sysrq=0
kernel.sysrq = 0
kernel.unprivileged_bpf_disabled
$ sudo sysctl -w kernel.unprivileged_bpf_disabled=1
kernel.unprivileged_bpf_disabled = 1
kernel.yama.ptrace_scope
$ sudo sysctl -w kernel.yama.ptrace_scope=1
kernel.yama.ptrace_scope = 1
net.core.bpf_jit_harden
$ sudo sysctl -w net.core.bpf_jit_harden=2
net.core.bpf_jit_harden = 2
user.max_user_namespaces
$ sudo sysctl -w user.max_user_namespaces=0
user.max_user_namespaces = 0
vm.mmap_min_addr
$ sudo sysctl -w vm.mmap_min_addr=65536
vm.mmap_min_addr = 65536
/etc/security/limits.conf
/etc/security/limits.d/
limits.conf
sysctl
fs.suid_dumpable
systemd-coredump.socket
systemd-coredump@.service
ProcessSizeMax
[Coredump]
/etc/systemd/coredump.conf
Storage
none
* hard core 0
$ sudo sysctl -w fs.suid_dumpable=0
fs.suid_dumpable = 0
/etc/init.d/functions
077
022
umask
kernel.exec-shield
kernel.randomize_va_space
kernel.kptr_restrict
$ sudo sysctl -w kernel.kptr_restrict=
kernel.kptr_restrict =
$ sudo sysctl -w kernel.randomize_va_space=2
kernel.randomize_va_space = 2
kernel-PAE
$ sudo dnf install kernel-PAE
slub_debug
page_poison=1
# grub2-editenv - set "$(grub2-editenv - list | grep kernelopts) page_poison=1"
slub_debug=
# grub2-editenv - set "$(grub2-editenv - list | grep kernelopts) slub_debug="