The reconstructed evaluation script behind this rule's OVAL check(s) — every module a compound check combines, with this rule's own concrete values and DISA's SCC tool's real per-module mechanism curated from static teardown of SCC releases.
#!/bin/bash
# Reconstructed from oval:mil.disa.stig.sles12:def:232
# The SUSE operating system SSH daemon public host key files must have mode 0644 or less permissive.
# Per-module read mechanism curated from static teardown of DISA's SCC tool
# (SCAP Compliance Checker) -- see the SCC Automation Reference above.
#
# MANUAL REVIEW REQUIRED -- the module(s) below could not be reconstructed
# into working code from curated SCC reference data, and are excluded from
# the automated result:
# - file_object (file_test): no extractor for field "gexec"
# The openssh package is installed
# rpminfo_object (rpminfo_test)
test_1() {
rpm -q --quiet 'openssh' &>/dev/null
}
# The ssh daemon is running
# process58_object (process58_test)
test_2() {
ps -eo args | grep -P '^/usr/sbin/sshd\b' &>/dev/null
}
if ( test_1 && test_2 ); then
echo "PASS (automated portion only -- MANUAL REVIEW still required, see notes above)"
else
echo "FAIL (or see MANUAL REVIEW note above)"
fi Assessment Script Powered by AISandbox-executed
A standalone Shell script to assess this control automatically. Review before running it in your environment.
Syntax-checked and actually executed in an isolated sandbox (not the real system this checks) — confirmed to run without errors.
#!/bin/sh
# DISA STIG / SCAP compliance check for SUSE SSH daemon public host key files mode (oval:mil.disa.stig.sles12:def:232)
if [ ! -x "$(command -v rpm)" ]; then echo "FAIL"; exit 1; fi
rpm -qa | grep -q "^openssh-" || echo "FAIL"; exit ${PIPESTATUS[0]}
if [ ! -f "/usr/sbin/sshd" ]; then echo "FAIL"; exit 1; fi
pgrep -f "/usr/sbin/sshd" > /dev/null || echo "FAIL"; exit ${PIPESTATUS[0]}
for file in /etc/ssh/*.pub; do
[ -f "$file" ] || continue
[ -r "$file" ] || echo "FAIL"; exit 1
stat -c "%a %n" "$file" | awk '{if ($1 > 644) {print "FAIL"; exit 1}}'
done
echo "PASS"; exit 0