2020-11-27 09:22:47 +01:00
|
|
|
# shellcheck shell=bash
|
2019-01-24 11:11:08 +01:00
|
|
|
# run-shellcheck
|
2018-12-24 14:12:59 +01:00
|
|
|
test_audit() {
|
2021-06-02 13:47:19 +02:00
|
|
|
describe Running void to generate the conf file that will later be edited
|
|
|
|
# shellcheck disable=2154
|
2023-09-25 14:24:01 +02:00
|
|
|
"${CIS_CHECKS_DIR}/${script}.sh" || true
|
2021-06-02 13:47:19 +02:00
|
|
|
# shellcheck disable=2016
|
2023-09-25 14:24:01 +02:00
|
|
|
echo 'EXCLUDED="$EXCLUDED ^/home/secaudit/thisfileisignored.*|^/dev/.*"' >>"${CIS_CONF_DIR}/conf.d/${script}.cfg"
|
2022-06-24 17:45:47 +02:00
|
|
|
touch /home/secaudit/thisfileisignored
|
|
|
|
chmod 777 /home/secaudit/thisfileisignored
|
2020-12-04 14:08:01 +01:00
|
|
|
|
2021-06-02 13:47:19 +02:00
|
|
|
describe Running on blank host
|
|
|
|
register_test retvalshouldbe 0
|
|
|
|
register_test contain "No world writable files found"
|
|
|
|
# shellcheck disable=2154
|
2023-09-25 14:24:01 +02:00
|
|
|
run blank "${CIS_CHECKS_DIR}/${script}.sh" --audit-all
|
2018-12-24 14:12:59 +01:00
|
|
|
|
2021-06-02 13:47:19 +02:00
|
|
|
describe Tests purposely failing
|
|
|
|
local targetfile="/home/secaudit/worldwritable"
|
|
|
|
touch "$targetfile"
|
|
|
|
chmod 777 "$targetfile"
|
|
|
|
register_test retvalshouldbe 1
|
|
|
|
register_test contain "Some world writable files are present"
|
2023-09-25 14:24:01 +02:00
|
|
|
run noncompliant "${CIS_CHECKS_DIR}/${script}.sh" --audit-all
|
2018-12-24 14:12:59 +01:00
|
|
|
|
2022-07-04 14:29:25 +02:00
|
|
|
describe Tests failing with find ignore flag
|
2023-09-25 14:24:01 +02:00
|
|
|
echo 'FIND_IGNORE_NOSUCHFILE_ERR=true' >>"${CIS_CONF_DIR}/conf.d/${script}.cfg"
|
2022-07-04 14:29:25 +02:00
|
|
|
register_test retvalshouldbe 1
|
|
|
|
register_test contain "Some world writable files are present"
|
2023-09-25 14:24:01 +02:00
|
|
|
run noncompliant "${CIS_CHECKS_DIR}/${script}.sh" --audit-all
|
2022-07-04 14:29:25 +02:00
|
|
|
|
2021-06-02 13:47:19 +02:00
|
|
|
describe correcting situation
|
2023-09-25 14:24:01 +02:00
|
|
|
sed -i 's/audit/enabled/' "${CIS_CONF_DIR}/conf.d/${script}.cfg"
|
|
|
|
"${CIS_CHECKS_DIR}/${script}.sh" --apply || true
|
2021-06-02 13:47:19 +02:00
|
|
|
|
|
|
|
describe Checking resolved state
|
|
|
|
register_test retvalshouldbe 0
|
|
|
|
register_test contain "No world writable files found"
|
2023-09-25 14:24:01 +02:00
|
|
|
run resolved "${CIS_CHECKS_DIR}/${script}.sh" --audit-all
|
2018-12-24 14:12:59 +01:00
|
|
|
|
|
|
|
}
|