VMware vSphere 6.7 Photon OS Security Technical Implementation Guide
Pick two releases to diff their requirements.
Open a previous version of this STIG.
Digest of Updates ✎ 5
Comparison against the immediately-prior release (V1R2). Rule matching uses the Group Vuln ID. Content-change detection compares the rule’s description, check, and fix text after stripping inline markup — cosmetic-only edits aren’t flagged.
Content changes 5
- V-239072 Medium fix The Photon operating system must be configured to offload audit logs to a syslog server.
- V-239084 Medium check The Photon operating system must be configured to audit the execution of privileged functions.
- V-239093 Medium check The Photon operating system must enforce password complexity by requiring that at least one uppercase character be used.
- V-239105 Medium check The Photon operating system must disable the loading of unnecessary kernel modules.
- V-239142 Medium check The Photon operating system must generate audit records when the sudo command is used.
- RMF Control
- AU-4
- Severity
- M
- CCI
- CCI-001851
- Version
- PHTN-67-000129
- Vuln IDs
-
- V-239072
- Rule IDs
-
- SV-239072r840145_rule
Checks: C-42283r675022_chk
At the command prompt, execute the following command: # grep -v "^#" /etc/vmware-syslog/stig-services-auditd.conf Expected result: input(type="imfile" File="/var/log/audit/audit.log" Tag="auditd" Severity="info" Facility="local0") If the file does not exist, this is a finding. If the output of the command does not match the expected result above, this is a finding.
Fix: F-42242r840144_fix
Open /etc/vmware-syslog/stig-services-auditd.conf with a text editor. Create the file if it does not exist. Set the contents of the file as follows: input(type="imfile" File="/var/log/audit/audit.log" Tag="auditd" Severity="info" Facility="local0")
- RMF Control
- AC-2
- Severity
- M
- CCI
- CCI-000018
- Version
- PHTN-67-000001
- Vuln IDs
-
- V-239073
- Rule IDs
-
- SV-239073r816595_rule
Checks: C-42284r816593_chk
At the command line, execute the following command: # auditctl -l | grep -E "(useradd|groupadd)" Expected result: -w /usr/sbin/useradd -p x -k useradd -w /usr/sbin/groupadd -p x -k groupadd If either "useradd" or "groupadd" are not listed with a permissions filter of at least "x", this is a finding. Note: This check depends on the auditd service to be in a running state for accurate results. Enabling the auditd service is done as part of a separate control.
Fix: F-42243r816594_fix
Open /etc/audit/rules.d/audit.STIG.rules with a text editor and add the following lines: -w /usr/sbin/useradd -p x -k useradd -w /usr/sbin/groupadd -p x -k groupadd At the command line, execute the following command: # /sbin/augenrules --load
- RMF Control
- AC-7
- Severity
- M
- CCI
- CCI-000044
- Version
- PHTN-67-000002
- Vuln IDs
-
- V-239074
- Rule IDs
-
- SV-239074r675030_rule
Checks: C-42285r675028_chk
At the command line, execute the following command: # grep pam_tally2 /etc/pam.d/system-auth|grep --color=always "deny=." Expected result: auth required pam_tally2.so file=/var/log/tallylog deny=3 onerr=fail even_deny_root unlock_time=86400 root_unlock_time=300 If the output does not match the expected result, this is a finding.
Fix: F-42244r675029_fix
Open /etc/pam.d/system-auth with a text editor. Add the following line after the last auth statement: auth required pam_tally2.so file=/var/log/tallylog deny=3 onerr=fail even_deny_root unlock_time=86400 root_unlock_time=300
- RMF Control
- AC-8
- Severity
- M
- CCI
- CCI-000048
- Version
- PHTN-67-000003
- Vuln IDs
-
- V-239075
- Rule IDs
-
- SV-239075r675033_rule
Checks: C-42286r675031_chk
At the command line, execute the following command: # sshd -T|&grep -i Banner Expected result: banner /etc/issue If the output does not match the expected result, this is a finding. Open /etc/issue with a text editor. If the file does not contain the Standard Mandatory DoD Notice and Consent Banner, this is a finding.
Fix: F-42245r675032_fix
At the command line, execute the following commands: # cp /etc/issue.DoD /etc/issue Open /etc/ssh/sshd_config with a text editor and ensure that the "Banner" line is uncommented and set to the following: Banner /etc/issue Open /etc/issue with a text editor. Ensure that the file contains the Standard Mandatory DoD Notice and Consent Banner: You are accessing a U.S. Government (USG) Information System (IS) that is provided for USG-authorized use only. By using this IS (which includes any device attached to this IS), you consent to the following conditions: -The USG routinely intercepts and monitors communications on this IS for purposes including, but not limited to, penetration testing, COMSEC monitoring, network operations and defense, personnel misconduct (PM), law enforcement (LE), and counterintelligence (CI) investigations. -At any time, the USG may inspect and seize data stored on this IS. -Communications using, or data stored on, this IS are not private, are subject to routine monitoring, interception, and search, and may be disclosed or used for any USG authorized purpose. -This IS includes security measures (e.g., authentication and access controls) to protect USG interests--not for your personal benefit or privacy. -Notwithstanding the above, using this IS does not constitute consent to PM, LE or CI investigative searching or monitoring of the content of privileged communications, or work product, related to personal representation or services by attorneys, psychotherapists, or clergy, and their assistants. Such communications and work product are private and confidential. See User Agreement for details. At the command line, execute the following command: # service sshd reload
- RMF Control
- AC-10
- Severity
- M
- CCI
- CCI-000054
- Version
- PHTN-67-000004
- Vuln IDs
-
- V-239076
- Rule IDs
-
- SV-239076r675036_rule
Checks: C-42287r675034_chk
At the command line, execute the following command: # grep "^[^#].*maxlogins.*" /etc/security/limits.conf Expected result: * hard maxlogins 10 If the output does not match the expected result, this is a finding. Note: The expected result may be repeated multiple times.
Fix: F-42246r675035_fix
At the command line, execute the following command: # echo '* hard maxlogins 10' >> /etc/security/limits.conf
- RMF Control
- AC-11
- Severity
- M
- CCI
- CCI-000057
- Version
- PHTN-67-000005
- Vuln IDs
-
- V-239077
- Rule IDs
-
- SV-239077r675039_rule
Checks: C-42288r675037_chk
At the command line, execute the following command: # cat /etc/profile.d/tmout.sh Expected result: TMOUT=900 readonly TMOUT export TMOUT mesg n 2>/dev/null If the file "tmout.sh" does not exist or the output does not look like the expected result, this is a finding.
Fix: F-42247r675038_fix
Open /etc/profile.d/tmout.sh with a text editor and set its content to the following: TMOUT=900 readonly TMOUT export TMOUT mesg n 2>/dev/null
- RMF Control
- AC-17
- Severity
- M
- CCI
- CCI-000067
- Version
- PHTN-67-000006
- Vuln IDs
-
- V-239078
- Rule IDs
-
- SV-239078r675042_rule
Checks: C-42289r675040_chk
At the command line, execute the following command: # sshd -T|&grep -i SyslogFacility Expected result: syslogfacility AUTHPRIV If there is no output or if the output does not match expected result, this is a finding.
Fix: F-42248r675041_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "SyslogFacility" line is uncommented and set to the following: SyslogFacility AUTHPRIV At the command line, execute the following command: # service sshd reload
- RMF Control
- AC-17
- Severity
- M
- CCI
- CCI-000067
- Version
- PHTN-67-000007
- Vuln IDs
-
- V-239079
- Rule IDs
-
- SV-239079r675045_rule
Checks: C-42290r675043_chk
At the command line, execute the following command: # grep "^authpriv" /etc/rsyslog.conf Expected result: authpriv.* /var/log/audit/sshinfo.log If the command does not return any output, this is a finding.
Fix: F-42249r675044_fix
Open /etc/rsyslog.conf with a text editor and locate the following line: $IncludeConfig /etc/vmware-syslog/syslog.conf Ensure that the following entry is put beneath the stated line and before the "# vmware services" line. authpriv.* /var/log/audit/sshinfo.log If the following line is at the end of the file, it must be removed or commented out: auth.* /var/log/auth.log At the command line, execute the following command: # systemctl restart syslog # service sshd reload
- RMF Control
- AC-17
- Severity
- M
- CCI
- CCI-000067
- Version
- PHTN-67-000008
- Vuln IDs
-
- V-239080
- Rule IDs
-
- SV-239080r675048_rule
Checks: C-42291r675046_chk
At the command line, execute the following command: # sshd -T|&grep -i LogLevel Expected result: LogLevel INFO If the output does not match the expected result, this is a finding.
Fix: F-42250r675047_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "LogLevel" line is uncommented and set to the following: LogLevel INFO At the command line, execute the following command: # service sshd reload
- RMF Control
- AC-17
- Severity
- H
- CCI
- CCI-000068
- Version
- PHTN-67-000009
- Vuln IDs
-
- V-239081
- Rule IDs
-
- SV-239081r816597_rule
Checks: C-42292r816596_chk
At the command line, execute the following command: # sshd -T|&grep -i FipsMode Expected result: fipsmode yes If the output does not match the expected result, this is a finding.
Fix: F-42251r675050_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "FipsMode" line is uncommented and set to the following: FipsMode yes At the command line, execute the following command: # service sshd reload
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000130
- Version
- PHTN-67-000010
- Vuln IDs
-
- V-239082
- Rule IDs
-
- SV-239082r675054_rule
Checks: C-42293r675052_chk
At the command line, execute the following command: # grep "^write_logs" /etc/audit/auditd.conf Expected result: write_logs = yes If there is no output, this is not a finding. If the output does not match the expected result, this is a finding.
Fix: F-42252r675053_fix
Open /etc/audit/auditd.conf with a text editor. Ensure that the "write_logs" line is uncommented and set to the following: write_logs = yes At the command line, execute the following command: # service auditd reload
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000131
- Version
- PHTN-67-000011
- Vuln IDs
-
- V-239083
- Rule IDs
-
- SV-239083r675057_rule
Checks: C-42294r675055_chk
At the command line, execute the following command: # grep "^log_format" /etc/audit/auditd.conf Expected result: log_format = RAW If there is no output, this is not a finding. If the output does not match the expected result, this is a finding.
Fix: F-42253r675056_fix
Open /etc/audit/auditd.conf with a text editor. Ensure that the "log_format" line is uncommented and set to the following: log_format = RAW At the command line, execute the following command: # service auditd reload
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000135
- Version
- PHTN-67-000012
- Vuln IDs
-
- V-239084
- Rule IDs
-
- SV-239084r821354_rule
Checks: C-42295r821353_chk
At the command line, execute the following command: # auditctl -l | grep execve Expected result: -a always,exit -F arch=b32 -S execve -C uid!=euid -F euid=0 execpriv -a always,exit -F arch=b64 -S execve -C uid!=euid -F euid=0 execpriv -a always,exit -F arch=b32 -S execve -C gid!=egid -F egid=0 execpriv -a always,exit -F arch=b64 -S execve -C gid!=egid -F egid=0 execpriv If the output does not match the expected result, this is a finding. Note: This check depends on the auditd service to be in a running state for accurate results. Enabling the auditd service is done as part of a separate control.
Fix: F-42254r816599_fix
Open /etc/audit/rules.d/audit.STIG.rules with a text editor and add the following lines: -a always,exit -F arch=b32 -S execve -C uid!=euid -F euid=0 -k execpriv -a always,exit -F arch=b64 -S execve -C uid!=euid -F euid=0 -k execpriv -a always,exit -F arch=b32 -S execve -C gid!=egid -F egid=0 -k execpriv -a always,exit -F arch=b64 -S execve -C gid!=egid -F egid=0 -k execpriv At the command line, execute the following command: # /sbin/augenrules --load
- RMF Control
- AU-5
- Severity
- M
- CCI
- CCI-000139
- Version
- PHTN-67-000013
- Vuln IDs
-
- V-239085
- Rule IDs
-
- SV-239085r675063_rule
Checks: C-42296r675061_chk
At the command line, execute the following command: # grep "^space_left_action" /etc/audit/auditd.conf Expected result: space_left_action = SYSLOG If the output does not match the expected result, this is a finding.
Fix: F-42255r675062_fix
Open /etc/audit/auditd.conf with a text editor. Ensure that the "space_left_action" line is uncommented and set to the following: space_left_action = SYSLOG At the command line, execute the following command: # service auditd reload
- RMF Control
- AU-5
- Severity
- M
- CCI
- CCI-000140
- Version
- PHTN-67-000014
- Vuln IDs
-
- V-239086
- Rule IDs
-
- SV-239086r675066_rule
Checks: C-42297r675064_chk
At the command line, execute the following commands: # grep -E "^disk_full_action|^disk_error_action|^admin_space_left_action" /etc/audit/auditd.conf If any of the above parameters are not set to SYSLOG or are missing, this is a finding.
Fix: F-42256r675065_fix
Open /etc/audit/auditd.conf with a text editor. Ensure that the following lines are present, not duplicated, and not commented: disk_full_action = SYSLOG disk_error_action = SYSLOG admin_space_left_action = SYSLOG At the command line, execute the following command: # service auditd reload
- RMF Control
- AU-9
- Severity
- M
- CCI
- CCI-000162
- Version
- PHTN-67-000015
- Vuln IDs
-
- V-239087
- Rule IDs
-
- SV-239087r675069_rule
Checks: C-42298r675067_chk
At the command line, execute the following command: # (audit_log_file=$(grep "^log_file" /etc/audit/auditd.conf|sed s/^[^\/]*//) && if [ -f "${audit_log_file}" ] ; then printf "Log(s) found in "${audit_log_file%/*}":\n"; stat -c "%n permissions are %a" ${audit_log_file%}*; else printf "audit log file(s) not found\n"; fi) If the permissions on any audit log file is more permissive than 0600, this is a finding.
Fix: F-42257r675068_fix
At the command line, execute the following command: # chmod 0600 <audit log file> Replace <audit log file> with the log files more permissive than 0600.
- RMF Control
- AU-9
- Severity
- M
- CCI
- CCI-000163
- Version
- PHTN-67-000016
- Vuln IDs
-
- V-239088
- Rule IDs
-
- SV-239088r675072_rule
Checks: C-42299r675070_chk
At the command line, execute the following command: # (audit_log_file=$(grep "^log_file" /etc/audit/auditd.conf|sed s/^[^\/]*//) && if [ -f "${audit_log_file}" ] ; then printf "Log(s) found in "${audit_log_file%/*}":\n"; stat -c "%n is owned by %U" ${audit_log_file%}*; else printf "audit log file(s) not found\n"; fi) If any audit log file is not owned by root, this is a finding.
Fix: F-42258r675071_fix
At the command line, execute the following command: # chown root:root <audit log file> Replace <audit log file> with the log files not owned by root.
- RMF Control
- AU-9
- Severity
- M
- CCI
- CCI-000164
- Version
- PHTN-67-000017
- Vuln IDs
-
- V-239089
- Rule IDs
-
- SV-239089r675075_rule
Checks: C-42300r675073_chk
At the command line, execute the following command: # (audit_log_file=$(grep "^log_file" /etc/audit/auditd.conf|sed s/^[^\/]*//) && if [ -f "${audit_log_file}" ] ; then printf "Log(s) found in "${audit_log_file%/*}":\n"; stat -c "%n is group owned by %G" ${audit_log_file%}*; else printf "audit log file(s) not found\n"; fi) If any audit log file is not group-owned by root, this is a finding.
Fix: F-42259r675074_fix
At the command line, execute the following command: # chown root:root <audit log file> Replace <audit log file> with the log files not group owned by root.
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000135
- Version
- PHTN-67-000018
- Vuln IDs
-
- V-239090
- Rule IDs
-
- SV-239090r675078_rule
Checks: C-42301r675076_chk
At the command line, execute the following command: # service auditd status | grep running If the service is not running, this is a finding.
Fix: F-42260r675077_fix
At the command line, execute the following command: # systemctl enable auditd.service # service auditd start
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000171
- Version
- PHTN-67-000019
- Vuln IDs
-
- V-239091
- Rule IDs
-
- SV-239091r675081_rule
Checks: C-42302r675079_chk
At the command line, execute the following command: # find /etc/audit/* -type f -exec stat -c "%n permissions are %a" {} $1\; If the permissions of any files are more permissive than 640, this is a finding.
Fix: F-42261r675080_fix
At the command line, execute the following command: # chmod 640 <file> Replace <file> with any file with incorrect permissions.
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- PHTN-67-000020
- Vuln IDs
-
- V-239092
- Rule IDs
-
- SV-239092r816603_rule
Checks: C-42303r816601_chk
At the command line, execute the following command: # auditctl -l | grep chmod Expected result: -a always,exit -F arch=b64 -S chmod,fchmod,chown,fchown,fchownat,fchmodat -F auid>=1000 -F auid!=-1 -F key=perm_mod -a always,exit -F arch=b64 -S chmod,fchmod,chown,fchown,lchown,setxattr,lsetxattr,fsetxattr,removexattr,lremovexattr,fremovexattr,fchownat,fchmodat -F key=perm_mod -a always,exit -F arch=b32 -S chmod,fchmod,fchown,chown,fchownat,fchmodat -F auid>=1000 -F auid!=-1 -F key=perm_mod -a always,exit -F arch=b32 -S chmod,lchown,fchmod,fchown,chown,setxattr,lsetxattr,fsetxattr,removexattr,lremovexattr,fremovexattr,fchownat,fchmodat -F key=perm_mod If the output does not match the expected result, this is a finding. Note: This check depends on the auditd service to be in a running state for accurate results. Enabling the auditd service is done as part of a separate control.
Fix: F-42262r816602_fix
Open /etc/audit/rules.d/audit.STIG.rules with a text editor and add the following lines: -a always,exit -F arch=b64 -S chmod,fchmod,chown,fchown,fchownat,fchmodat -F auid>=1000 -F auid!=4294967295 -k perm_mod -a always,exit -F arch=b64 -S chmod,fchmod,chown,fchown,lchown,setxattr,lsetxattr,fsetxattr,removexattr,lremovexattr,fremovexattr,fchownat,fchmodat -k perm_mod -a always,exit -F arch=b32 -S chmod,fchmod,fchown,chown,fchownat,fchmodat -F auid>=1000 -F auid!=4294967295 -k perm_mod -a always,exit -F arch=b32 -S chmod,lchown,fchmod,fchown,chown,setxattr,lsetxattr,fsetxattr,removexattr,lremovexattr,fremovexattr,fchownat,fchmodat -k perm_mod At the command line, execute the following command: # /sbin/augenrules --load
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000192
- Version
- PHTN-67-000021
- Vuln IDs
-
- V-239093
- Rule IDs
-
- SV-239093r816912_rule
Checks: C-42304r816911_chk
At the command line, execute the following command: # grep "^password requisite pam_cracklib.so" /etc/pam.d/system-password|grep --color=always "enforce_for_root" Expected result: password requisite pam_cracklib.so dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 minlen=8 minclass=4 difok=4 retry=3 maxsequence=0 enforce_for_root If the output does not match the expected result, this is a finding.
Fix: F-42263r816604_fix
Open /etc/applmgmt/appliance/system-password with a text editor. Comment out any existing "pam_cracklib.so" line and add the following: password requisite pam_cracklib.so dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 minlen=8 minclass=4 difok=4 retry=3 maxsequence=0 enforce_for_root Save and close.
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000193
- Version
- PHTN-67-000022
- Vuln IDs
-
- V-239094
- Rule IDs
-
- SV-239094r816607_rule
Checks: C-42305r675088_chk
At the command line, execute the following command: # grep pam_cracklib /etc/pam.d/system-password|grep --color=always "lcredit=.." Expected result: password requisite pam_cracklib.so dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 minlen=8 minclass=4 difok=4 retry=3 maxsequence=0 enforce_for_root If the output does not match the expected result, this is a finding.
Fix: F-42264r816606_fix
Open /etc/applmgmt/appliance/system-password with a text editor. Comment out any existing "pam_cracklib.so" line and add the following: password requisite pam_cracklib.so dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 minlen=8 minclass=4 difok=4 retry=3 maxsequence=0 enforce_for_root Save and close.
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000194
- Version
- PHTN-67-000023
- Vuln IDs
-
- V-239095
- Rule IDs
-
- SV-239095r816609_rule
Checks: C-42306r675091_chk
At the command line, execute the following command: # grep pam_cracklib /etc/pam.d/system-password|grep --color=always "dcredit=.." Expected result: password requisite pam_cracklib.so dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 minlen=8 minclass=4 difok=4 retry=3 maxsequence=0 enforce_for_root If the output does not match the expected result, this is a finding.
Fix: F-42265r816608_fix
Open /etc/applmgmt/appliance/system-password with a text editor. Comment out any existing "pam_cracklib.so" line and add the following: password requisite pam_cracklib.so dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 minlen=8 minclass=4 difok=4 retry=3 maxsequence=0 enforce_for_root Save and close.
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000195
- Version
- PHTN-67-000024
- Vuln IDs
-
- V-239096
- Rule IDs
-
- SV-239096r816611_rule
Checks: C-42307r675094_chk
At the command line, execute the following command: # grep pam_cracklib /etc/pam.d/system-password|grep --color=always "difok=." Expected result: password requisite pam_cracklib.so dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 minlen=8 minclass=4 difok=4 retry=3 maxsequence=0 enforce_for_root If the output does not match the expected result, this is a finding.
Fix: F-42266r816610_fix
Open /etc/applmgmt/appliance/system-password with a text editor. Comment out any existing "pam_cracklib.so" line and add the following: password requisite pam_cracklib.so dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 minlen=8 minclass=4 difok=4 retry=3 maxsequence=0 enforce_for_root Save and close.
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000196
- Version
- PHTN-67-000025
- Vuln IDs
-
- V-239097
- Rule IDs
-
- SV-239097r816613_rule
Checks: C-42308r675097_chk
At the command line, execute the following command: # grep password /etc/pam.d/system-password|grep --color=always "sha512" If the output does not include "sha512", this is a finding.
Fix: F-42267r816612_fix
Open /etc/applmgmt/appliance/system-password with a text editor. Add the following argument (sha512) to the password line: password required pam_unix.so sha512 shadow try_first_pass Save and close.
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000196
- Version
- PHTN-67-000026
- Vuln IDs
-
- V-239098
- Rule IDs
-
- SV-239098r675102_rule
Checks: C-42309r675100_chk
At the command line, execute the following command: # grep SHA512 /etc/login.defs|grep -v "#" Expected result: ENCRYPT_METHOD SHA512 If there is no output or if the output does match the expected result, this is a finding.
Fix: F-42268r675101_fix
Open /etc/login.defs with a text editor. Add or replace the ENCRYPT_METHOD line as follows: ENCRYPT_METHOD SHA512
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000198
- Version
- PHTN-67-000027
- Vuln IDs
-
- V-239099
- Rule IDs
-
- SV-239099r675105_rule
Checks: C-42310r675103_chk
At the command line, execute the following command: # grep "^PASS_MIN_DAYS" /etc/login.defs If PASS_MIN_DAYS is not set to 1, this is a finding.
Fix: F-42269r675104_fix
Open /etc/login.defs with a text editor. Modify the PASS_MIN_DAYS line to the following: PASS_MIN_DAYS 1
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000199
- Version
- PHTN-67-000028
- Vuln IDs
-
- V-239100
- Rule IDs
-
- SV-239100r675108_rule
Checks: C-42311r675106_chk
At the command line, execute the following command: # grep "^PASS_MAX_DAYS" /etc/login.defs If the value of PASS_MAX_DAYS is greater than 90, this is a finding.
Fix: F-42270r675107_fix
Open /etc/login.defs with a text editor. Modify the PASS_MAX_DAYS line to the following: PASS_MAX_DAYS 90
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000200
- Version
- PHTN-67-000029
- Vuln IDs
-
- V-239101
- Rule IDs
-
- SV-239101r816615_rule
Checks: C-42312r675109_chk
At the command line, execute the following command: # grep pam_pwhistory /etc/pam.d/system-password|grep --color=always "remember=." Expected result: password required pam_pwhistory.so enforce_for_root use_authtok remember=5 retry=3 If the output does not match the expected result, this is a finding.
Fix: F-42271r816614_fix
Open /etc/applmgmt/appliance/system-password with a text editor. Add the following line after the last auth statement: password required pam_pwhistory.so enforce_for_root use_authtok remember=5 retry=3 Save and close.
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000200
- Version
- PHTN-67-000030
- Vuln IDs
-
- V-239102
- Rule IDs
-
- SV-239102r675114_rule
Checks: C-42313r675112_chk
At the command line, execute the following command: # ls -al /etc/security/opasswd If "/etc/security/opasswd" does not exist, this is a finding.
Fix: F-42272r675113_fix
At the command line, execute the following commands: # touch /etc/security/opasswd # chown root:root /etc/security/opasswd # chmod 0600 /etc/security/opasswd
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000205
- Version
- PHTN-67-000031
- Vuln IDs
-
- V-239103
- Rule IDs
-
- SV-239103r816617_rule
Checks: C-42314r675115_chk
At the command line, execute the following command: # grep pam_cracklib /etc/pam.d/system-password|grep --color=always "minlen=.." Expected result: password requisite pam_cracklib.so dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 minlen=8 minclass=4 difok=4 retry=3 maxsequence=0 enforce_for_root If the output does not match the expected result, this is a finding.
Fix: F-42273r816616_fix
Open /etc/applmgmt/appliance/system-password with a text editor. Comment out any existing "pam_cracklib.so" line and add the following: password requisite pam_cracklib.so dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 minlen=8 minclass=4 difok=4 retry=3 maxsequence=0 enforce_for_root Save and close.
- RMF Control
- CM-7
- Severity
- M
- CCI
- CCI-000381
- Version
- PHTN-67-000032
- Vuln IDs
-
- V-239104
- Rule IDs
-
- SV-239104r675120_rule
Checks: C-42315r675118_chk
At the command line, execute the following command: # rpm -qa gpg-pubkey --qf "%{version}-%{release} %{summary}\n"|grep -v "66fd4949-4803fe57" If there is any output, an unsupported package has been installed and this is a finding.
Fix: F-42274r675119_fix
Confirm with VMware support that this package is not supported (for potential package additions after STIG publication). At the command line, execute the following command: # rpm -e <package-name-from-check>
- RMF Control
- CM-7
- Severity
- M
- CCI
- CCI-000382
- Version
- PHTN-67-000033
- Vuln IDs
-
- V-239105
- Rule IDs
-
- SV-239105r840147_rule
Checks: C-42316r840146_chk
At the command line, execute the following command: # modprobe --showconfig | grep "^install" | grep "/bin" Expected result: install sctp /bin/false install dccp /bin/false install dccp_ipv4 /bin/false install dccp_ipv6 /bin/false install ipx /bin/false install appletalk /bin/false install decnet /bin/false install rds /bin/false install tipc /bin/false install bluetooth /bin/false install usb_storage /bin/false install ieee1394 /bin/false install cramfs /bin/false install freevxfs /bin/false install jffs2 /bin/false install hfs /bin/false install hfsplus /bin/false install squashfs /bin/false install udf /bin/false The output may include other statements outside of the expected result. This is acceptable. If the output does not include at least every statement in the expected result, this is a finding.
Fix: F-42275r675122_fix
Open /etc/modprobe.d/modprobe.conf with a text editor and set the contents as follows: install sctp /bin/false install dccp /bin/false install dccp_ipv4 /bin/false install dccp_ipv6 /bin/false install ipx /bin/false install appletalk /bin/false install decnet /bin/false install rds /bin/false install tipc /bin/false install bluetooth /bin/false install usb-storage /bin/false install ieee1394 /bin/false install cramfs /bin/false install freevxfs /bin/false install jffs2 /bin/false install hfs /bin/false install hfsplus /bin/false install squashfs /bin/false install udf /bin/false
- RMF Control
- IA-2
- Severity
- M
- CCI
- CCI-000764
- Version
- PHTN-67-000034
- Vuln IDs
-
- V-239106
- Rule IDs
-
- SV-239106r675126_rule
Checks: C-42317r675124_chk
At the command line, execute the following command: # awk -F ":" 'list[$3]++{print $1, $3}' /etc/passwd If any lines are returned, this is a finding.
Fix: F-42276r675125_fix
Open /etc/passwd with a text editor. Configure each user account that has a duplicate UID with a unique UID.
- RMF Control
- IA-2
- Severity
- M
- CCI
- CCI-000770
- Version
- PHTN-67-000035
- Vuln IDs
-
- V-239107
- Rule IDs
-
- SV-239107r675129_rule
Checks: C-42318r675127_chk
At the command line, execute the following command: # sshd -T|&grep -i PermitRootLogin Expected result: permitrootlogin no If the output does not match the expected result, this is a finding.
Fix: F-42277r675128_fix
Open /etc/ssh/sshd_config with a text editor and ensure that the "PermitRootLogin" line is uncommented and set to the following: PermitRootLogin no At the command line, execute the following command: # service sshd reload
- RMF Control
- IA-4
- Severity
- M
- CCI
- CCI-000795
- Version
- PHTN-67-000036
- Vuln IDs
-
- V-239108
- Rule IDs
-
- SV-239108r675132_rule
Checks: C-42319r675130_chk
At the command line, execute the following command: # grep INACTIVE /etc/default/useradd Expected result: INACTIVE=0 If the output does not match the expected result, this is a finding.
Fix: F-42278r675131_fix
Open /etc/default/useradd with a text editor. Remove any existing "INACTIVE" line and add the following line: INACTIVE=0
- RMF Control
- SC-5
- Severity
- M
- CCI
- CCI-001095
- Version
- PHTN-67-000037
- Vuln IDs
-
- V-239109
- Rule IDs
-
- SV-239109r816622_rule
Checks: C-42320r816620_chk
At the command line, execute the following command: # /sbin/sysctl -a --pattern tcp_syncookies Expected result: net.ipv4.tcp_syncookies = 1 If the output does not match the expected result, this is a finding.
Fix: F-42279r816621_fix
Open /etc/sysctl.conf with a text editor. Add or update the following line: net.ipv4.tcp_syncookies=1 Run the following command to load the new setting: # /sbin/sysctl --load
- RMF Control
- SC-10
- Severity
- M
- CCI
- CCI-001133
- Version
- PHTN-67-000038
- Vuln IDs
-
- V-239110
- Rule IDs
-
- SV-239110r675138_rule
Checks: C-42321r675136_chk
At the command line, execute the following command: # sshd -T|&grep -i ClientAliveInterval Expected result: ClientAliveInterval 900 If the output does not match the expected result, this is a finding.
Fix: F-42280r675137_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "ClientAliveInterval" line is uncommented and set to the following: ClientAliveInterval 900 At the command line, execute the following command: # service sshd reload
- RMF Control
- SC-10
- Severity
- M
- CCI
- CCI-001133
- Version
- PHTN-67-000039
- Vuln IDs
-
- V-239111
- Rule IDs
-
- SV-239111r675141_rule
Checks: C-42322r675139_chk
At the command line, execute the following command: # sshd -T|&grep -i ClientAliveCountMax Expected result: ClientAliveCountMax 0 If the output does not match the expected result, this is a finding.
Fix: F-42281r675140_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "ClientAliveCountMax" line is uncommented and set to the following: ClientAliveCountMax 0 At the command line, execute the following command: # service sshd reload
- RMF Control
- SI-11
- Severity
- M
- CCI
- CCI-001312
- Version
- PHTN-67-000040
- Vuln IDs
-
- V-239112
- Rule IDs
-
- SV-239112r816625_rule
Checks: C-42323r816623_chk
At the command line, execute the following command: # cat /etc/vmware-syslog/syslog.conf The output should be similar to the following (*.* or AO approved logging events): *.* @<syslog server>:port;RSYSLOG_syslogProtocol23Format If no line is returned or if the line is commented or no valid syslog server is specified, this is a finding. OR Navigate to https://<hostname>:5480 to access the Virtual Appliance Management Interface (VAMI). Authenticate and navigate to "Syslog Configuration". If no site-specific syslog server is configured, this is a finding.
Fix: F-42282r816624_fix
Open /etc/vmware-syslog/syslog.conf with a text editor. Remove any existing content and create a new remote server configuration line. For UDP (*.* or AO approved logging events): *.* @<syslog server>:port;RSYSLOG_syslogProtocol23Format For TCP (*.* or AO approved logging events): *.* @@<syslog server>:port;RSYSLOG_syslogProtocol23Format OR Navigate to https://<hostname>:5480 to access the VAMI. Authenticate and navigate to "Syslog Configuration". Click "Edit" in the top right. Configure a remote syslog server and click "OK".
- RMF Control
- SI-11
- Severity
- M
- CCI
- CCI-001314
- Version
- PHTN-67-000041
- Vuln IDs
-
- V-239113
- Rule IDs
-
- SV-239113r675147_rule
Checks: C-42324r675145_chk
At the command line, execute the following command: # stat -c "%n is owned by %U and group owned by %G" /var/log If the /var/log is not owned by root, this is a finding.
Fix: F-42283r675146_fix
At the command line, execute the following command: # chown root:root /var/log
- RMF Control
- SI-11
- Severity
- M
- CCI
- CCI-001314
- Version
- PHTN-67-000042
- Vuln IDs
-
- V-239114
- Rule IDs
-
- SV-239114r675150_rule
Checks: C-42325r675148_chk
At the command line, execute the following command: # stat -c "%n is owned by %U and group owned by %G" /var/log/vmware/messages If /var/log/vmware/messages is not owned by root or not group owned by root, this is a finding.
Fix: F-42284r675149_fix
At the command line, execute the following command: # chown root:root /var/log/vmware/messages
- RMF Control
- SI-11
- Severity
- M
- CCI
- CCI-001314
- Version
- PHTN-67-000043
- Vuln IDs
-
- V-239115
- Rule IDs
-
- SV-239115r675153_rule
Checks: C-42326r675151_chk
At the command line, execute the following command: # stat -c "%n permissions are %a" /var/log/vmware/messages If the permissions on the file are more permissive than 0640, this is a finding.
Fix: F-42285r675152_fix
At the command line, execute the following command: # chmod 0640 /var/log/vmware/messages
- RMF Control
- AC-2
- Severity
- M
- CCI
- CCI-001403
- Version
- PHTN-67-000045
- Vuln IDs
-
- V-239116
- Rule IDs
-
- SV-239116r816628_rule
Checks: C-42327r816626_chk
At the command line, execute the following command: # auditctl -l | grep -E "(/etc/passwd|/etc/shadow|/etc/group|/etc/gshadow)" Expected result: -w /etc/passwd -p wa -k passwd -w /etc/shadow -p wa -k shadow -w /etc/group -p wa -k group -w /etc/gshadow -p wa -k gshadow If the output does not match the expected result, this is a finding. Note: This check depends on the auditd service to be in a running state for accurate results. Enabling the auditd service is done as part of a separate control.
Fix: F-42286r816627_fix
Open /etc/audit/rules.d/audit.STIG.rules with a text editor and add the following lines: -w /etc/passwd -p wa -k passwd -w /etc/shadow -p wa -k shadow -w /etc/group -p wa -k group -w /etc/gshadow -p wa -k gshadow At the command line, execute the following command: # /sbin/augenrules --load
- RMF Control
- AC-2
- Severity
- M
- CCI
- CCI-001404
- Version
- PHTN-67-000046
- Vuln IDs
-
- V-239117
- Rule IDs
-
- SV-239117r816631_rule
Checks: C-42328r816629_chk
At the command line, execute the following command: # auditctl -l | grep "^-w /usr/bin/passwd" Expected result: -w /usr/bin/passwd -p x -k passwd If the output does not match the expected result, this is a finding. Note: This check depends on the auditd service to be in a running state for accurate results. Enabling the auditd service is done as part of a separate control.
Fix: F-42287r816630_fix
Open /etc/audit/rules.d/audit.STIG.rules with a text editor and add the following lines: -w /usr/bin/passwd -p x -k passwd At the command line, execute the following command: # /sbin/augenrules --load
- RMF Control
- AC-2
- Severity
- M
- CCI
- CCI-001405
- Version
- PHTN-67-000047
- Vuln IDs
-
- V-239118
- Rule IDs
-
- SV-239118r816634_rule
Checks: C-42329r816632_chk
At the command line, execute the following command: # auditctl -l | grep -E "(userdel|groupdel)" Expected result: -w /usr/sbin/userdel -p x -k userdel -w /usr/sbin/groupdel -p x -k groupdel If the output does not match the expected result, this is a finding. Note: This check depends on the auditd service to be in a running state for accurate results. Enabling the auditd service is done as part of a separate control.
Fix: F-42288r816633_fix
Open /etc/audit/rules.d/audit.STIG.rules with a text editor and add the following lines: -w /usr/sbin/userdel -p x -k userdel -w /usr/sbin/groupdel -p x -k groupdel At the command line, execute the following command: # /sbin/augenrules --load
- RMF Control
- AU-14
- Severity
- M
- CCI
- CCI-001464
- Version
- PHTN-67-000048
- Vuln IDs
-
- V-239119
- Rule IDs
-
- SV-239119r675165_rule
Checks: C-42330r675163_chk
At the command line, execute the following command: # grep "audit=1" /proc/cmdline If no results are returned, this is a finding.
Fix: F-42289r675164_fix
Open /boot/grub2/grub.cfg with a text editor and locate the boot command line arguments. An example follows: linux "/"$photon_linux root=$rootpartition net.ifnames=0 $photon_cmdline coredump_filter=0x37 consoleblank=0 Add "audit=1" to the end of the line so it reads as follows: linux "/"$photon_linux root=$rootpartition net.ifnames=0 $photon_cmdline coredump_filter=0x37 consoleblank=0 audit=1 Note: Do not copy/paste in this example argument line. This may change in future releases. Find the similar line and append "audit=1" to it. Reboot the system for the change to take effect.
- RMF Control
- AU-9
- Severity
- M
- CCI
- CCI-001493
- Version
- PHTN-67-000049
- Vuln IDs
-
- V-239120
- Rule IDs
-
- SV-239120r675168_rule
Checks: C-42331r675166_chk
At the command line, execute the following command: # stat -c "%n is owned by %U and group owned by %G" /etc/audit/auditd.conf If auditd.conf is not owned by root and group owned by root, this is a finding.
Fix: F-42290r675167_fix
At the command line, execute the following command: # chown root:root /etc/audit/auditd.conf
- RMF Control
- AU-9
- Severity
- M
- CCI
- CCI-001493
- Version
- PHTN-67-000050
- Vuln IDs
-
- V-239121
- Rule IDs
-
- SV-239121r675171_rule
Checks: C-42332r675169_chk
At the command line, execute the following command: # stat -c "%n is owned by %U and group owned by %G" /usr/sbin/auditctl /usr/sbin/auditd /usr/sbin/aureport /usr/sbin/ausearch /usr/sbin/autrace If any file is not owned by root and group owned by root, this is a finding.
Fix: F-42291r675170_fix
At the command line, execute the following command for each file returned: # chown root:root <file>
- RMF Control
- AU-9
- Severity
- M
- CCI
- CCI-001494
- Version
- PHTN-67-000051
- Vuln IDs
-
- V-239122
- Rule IDs
-
- SV-239122r675174_rule
Checks: C-42333r675172_chk
At the command line, execute the following command: # stat -c "%n permissions are %a" /usr/sbin/auditctl /usr/sbin/auditd /usr/sbin/aureport /usr/sbin/ausearch /usr/sbin/autrace If any file is more permissive than 750, this is a finding.
Fix: F-42292r675173_fix
At the command line, execute the following command for each file returned: # chmod 750 <file>
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-001619
- Version
- PHTN-67-000052
- Vuln IDs
-
- V-239123
- Rule IDs
-
- SV-239123r816636_rule
Checks: C-42334r675175_chk
At the command line, execute the following command: # grep pam_cracklib /etc/pam.d/system-password|grep --color=always "ocredit=.." Expected result: password requisite pam_cracklib.so dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 minlen=8 minclass=4 difok=4 retry=3 maxsequence=0 enforce_for_root If the output does not match the expected result, this is a finding.
Fix: F-42293r816635_fix
Open /etc/applmgmt/appliance/system-password with a text editor. Comment out any existing "pam_cracklib.so" line and add the following: password requisite pam_cracklib.so dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 minlen=8 minclass=4 difok=4 retry=3 maxsequence=0 enforce_for_root Save and close.
- RMF Control
- AU-9
- Severity
- M
- CCI
- CCI-001496
- Version
- PHTN-67-000053
- Vuln IDs
-
- V-239124
- Rule IDs
-
- SV-239124r675180_rule
Checks: C-42335r675178_chk
Use the verification capability of rpm to check the MD5 hashes of the audit files on disk versus the expected ones from the installation package. At the command line, execute the following command: # rpm -V audit | grep "^..5" | grep -v "^...........c" If there is output, this is a finding.
Fix: F-42294r675179_fix
If the audit system binaries have been altered, the system must be taken offline and the ISSM must be notified immediately. Reinstalling the audit tools is not supported. The appliance should be restored from a backup or a snapshot or redeployed once the root cause is remediated.
- RMF Control
- AC-12
- Severity
- M
- CCI
- CCI-002361
- Version
- PHTN-67-000054
- Vuln IDs
-
- V-239125
- Rule IDs
-
- SV-239125r675183_rule
Checks: C-42336r675181_chk
At the command line, execute the following command: # grep TMOUT /etc/bash.bashrc Expected result: TMOUT=900 readonly TMOUT export TMOUT If the file does not exist or the output does not match the expected result, this is a finding.
Fix: F-42295r675182_fix
Open /etc/bash.bashrc with a text editor and add the following to the end: TMOUT=900 readonly TMOUT export TMOUT
- RMF Control
- AC-17
- Severity
- M
- CCI
- CCI-002314
- Version
- PHTN-67-000055
- Vuln IDs
-
- V-239126
- Rule IDs
-
- SV-239126r675186_rule
Checks: C-42337r675184_chk
At the command line, execute the following command: # sshd -T|&grep -i ListenAddress If the ListenAddress is not configured to the VCSA management IP, this is a finding.
Fix: F-42296r675185_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "ListenAddress" line is uncommented and set to a valid local IP: Example: ListenAddress 169.254.1.2 Replace "169.254.1.2" with the management address of the VCSA. At the command line, execute the following command: # service sshd reload
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- PHTN-67-000056
- Vuln IDs
-
- V-239127
- Rule IDs
-
- SV-239127r816639_rule
Checks: C-42338r816637_chk
At the command line, execute the following command to obtain a list of setuid files: # find / -xdev -perm -4000 -type f -o -perm -2000 -type f Execute the following command for each setuid file found in the first command: # grep <setuid_path> /etc/audit/audit.rules Replace <setuid_path> with each path found in the first command. If each <setuid_path> does not have a corresponding line in the audit rules, this is a finding. A typical corresponding line will look like the following: -a always,exit -F path=<setuid_path> -F perm=x -F auid>=1000 -F auid!=-1 -k privileged Note: This check depends on the auditd service to be in a running state for accurate results. Enabling the auditd service is done as part of a separate control.
Fix: F-42297r816638_fix
At the command line, execute the following command to obtain a list of setuid files: # find / -xdev -perm -4000 -type f -o -perm -2000 -type f Open /etc/audit/rules.d/audit.STIG.rules with a text editor and add the following line: Replace <setuid_path> with each path found in the first command. -a always,exit -F path=<setuid_path> -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged At the command line, execute the following command: # /sbin/augenrules --load
- RMF Control
- AU-4
- Severity
- M
- CCI
- CCI-001849
- Version
- PHTN-67-000057
- Vuln IDs
-
- V-239128
- Rule IDs
-
- SV-239128r675192_rule
Checks: C-42339r675190_chk
At the command line, execute the following command: # grep "^num_logs" /etc/audit/auditd.conf Expected result: num_logs = 5 If the output of the command does not match the expected result, this is a finding.
Fix: F-42298r675191_fix
Open /etc/audit/auditd.conf with a text editor. Add or change the "num_logs" line as follows: num_logs = 5 At the command line, execute the following command: # service auditd reload
- RMF Control
- AU-4
- Severity
- M
- CCI
- CCI-001849
- Version
- PHTN-67-000058
- Vuln IDs
-
- V-239129
- Rule IDs
-
- SV-239129r675195_rule
Checks: C-42340r675193_chk
At the command line, execute the following command: # grep "^max_log_file_action" /etc/audit/auditd.conf Expected result: max_log_file_action = IGNORE If the output of the command does not match the expected result, this is a finding.
Fix: F-42299r675194_fix
Open /etc/audit/auditd.conf with a text editor. Add or change the "max_log_file_action" line as follows: max_log_file_action = IGNORE At the command line, execute the following command: # service auditd reload
- RMF Control
- AU-4
- Severity
- M
- CCI
- CCI-001849
- Version
- PHTN-67-000059
- Vuln IDs
-
- V-239130
- Rule IDs
-
- SV-239130r675198_rule
Checks: C-42341r675196_chk
At the command line, execute the following command: # cat /etc/cron.daily/audit-rotate Expected result: #!/bin/bash service auditd rotate If the output of the command does not match the expected result, this is a finding.
Fix: F-42300r675197_fix
If /etc/cron.daily/audit-rotate does not exist, run the following commands: # touch /etc/cron.daily/audit-rotate # chown root:root /etc/cron.daily/audit-rotate # chmod 0700 /etc/cron.daily/audit-rotate Open /etc/cron.daily/audit-rotate with a text editor. Set its contents as follows: #!/bin/bash service auditd rotate
- RMF Control
- AU-5
- Severity
- M
- CCI
- CCI-001855
- Version
- PHTN-67-000060
- Vuln IDs
-
- V-239131
- Rule IDs
-
- SV-239131r675201_rule
Checks: C-42342r675199_chk
At the command line, execute the following command: # grep "^space_left " /etc/audit/auditd.conf Expected result: space_left = 75 If the output does not match the expected result, this is a finding.
Fix: F-42301r675200_fix
Open /etc/audit/auditd.conf with a text editor. Ensure that the "space_left" line is uncommented and set to the following: space_left = 75 At the command line, execute the following command: # service auditd reload
- RMF Control
- AU-8
- Severity
- M
- CCI
- CCI-001891
- Version
- PHTN-67-000061
- Vuln IDs
-
- V-239132
- Rule IDs
-
- SV-239132r675204_rule
Checks: C-42343r675202_chk
At the command line, execute the following command: # grep -E '^\s*(server|peer|multicastclient)' /etc/ntp.conf Confirm the servers and peers or multicastclient (as applicable) are local or an authoritative U.S. DoD source. If no lines are returned or a non-local/non-authoritative time server is used, this is a finding. OR Navigate to https://<hostname>:5480 to access the Virtual Appliance Management Interface (VAMI). Authenticate and navigate to "Time". If no appropriate time server is specified, this is a finding.
Fix: F-42302r675203_fix
Open /etc/ntp.conf with a text editor and set its contents to the following: tinker panic 0 restrict default kod nomodify notrap nopeer restrict 127.0.0.1 restrict -6 ::1 driftfile /var/lib/ntp/drift/ntp.drift server <site-specific-time-source-IP> At the command line, execute the following commands: # chkconfig ntpd on # systemctl start ntp OR Navigate to https://<hostname>:5480 to access the VAMI. Authenticate and navigate to "Time". Click "Edit" in the top right and configure at least one appropriate NTP server. Click "OK".
- RMF Control
- CM-5
- Severity
- M
- CCI
- CCI-001749
- Version
- PHTN-67-000062
- Vuln IDs
-
- V-239133
- Rule IDs
-
- SV-239133r675207_rule
Checks: C-42344r675205_chk
At the command line, execute the following command: # grep -s nosignature /usr/lib/rpm/rpmrc /etc/rpmrc ~root/.rpmrc If the command returns any output, this is a finding.
Fix: F-42303r675206_fix
Open the file containing "nosignature" with a text editor and remove the option.
- RMF Control
- CM-5
- Severity
- M
- CCI
- CCI-001749
- Version
- PHTN-67-000063
- Vuln IDs
-
- V-239134
- Rule IDs
-
- SV-239134r675210_rule
Checks: C-42345r675208_chk
At the command line, execute the following command: # grep "^gpgcheck" /etc/tdnf/tdnf.conf If "gpgcheck" is not set to "1", this is a finding.
Fix: F-42304r675209_fix
Open /etc/tdnf/tdnf.conf with a text editor. Remove any existing gpgcheck setting and add the following line: gpgcheck=1
- RMF Control
- CM-5
- Severity
- M
- CCI
- CCI-001749
- Version
- PHTN-67-000064
- Vuln IDs
-
- V-239135
- Rule IDs
-
- SV-239135r675213_rule
Checks: C-42346r675211_chk
At the command line, execute the following command: # grep gpgcheck /etc/yum.repos.d/* If "gpgcheck" is not set to "1" in any returned file, this is a finding.
Fix: F-42305r675212_fix
Open the file where gpgcheck is not set to "1" with a text editor. Remove any existing gpgcheck setting and add the following line at the end of the file: gpgcheck=1
- RMF Control
- IA-11
- Severity
- M
- CCI
- CCI-002038
- Version
- PHTN-67-000065
- Vuln IDs
-
- V-239136
- Rule IDs
-
- SV-239136r675216_rule
Checks: C-42347r675214_chk
At the command line, execute the following commands: # grep -ihs nopasswd /etc/sudoers /etc/sudoers.d/*|grep -v "^#"|grep -v "^%"|awk '{print $1}' # awk -F: '($2 != "x" && $2 != "!") {print $1}' /etc/shadow If any account listed in the first output is also listed in the second output, this is a finding.
Fix: F-42306r675215_fix
Check the configuration of the "/etc/sudoers" and "/etc/sudoers.d/*" files with the following command: # visudo OR # visudo -f /etc/sudoers.d/<file name> Remove any occurrences of "NOPASSWD" tags associated with user accounts with a password hash.
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-002007
- Version
- PHTN-67-000066
- Vuln IDs
-
- V-239137
- Rule IDs
-
- SV-239137r675219_rule
Checks: C-42348r675217_chk
At the command line, execute the following command: # /opt/likewise/bin/lwregshell list_values "HKEY_THIS_MACHINE\Services\lsass\Parameters\Providers\ActiveDirectory"|grep "CacheEntryExpiry" If the value returned is not 14400 or less, this is a finding.
Fix: F-42307r675218_fix
At the command line, execute the following command: # /opt/likewise/bin/lwregshell set_value "[HKEY_THIS_MACHINE\Services\lsass\Parameters\Providers\ActiveDirectory]" CacheEntryExpiry 14400
- RMF Control
- SC-8
- Severity
- H
- CCI
- CCI-002421
- Version
- PHTN-67-000067
- Vuln IDs
-
- V-239138
- Rule IDs
-
- SV-239138r816640_rule
Checks: C-42349r675220_chk
At the command line, execute the following command: # sshd -T|&grep -i Ciphers Expected result: ciphers aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr If the output does not match the expected result, this is a finding.
Fix: F-42308r675221_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "Ciphers" line is uncommented and set to the following: Ciphers aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr At the command line, execute the following command: # service sshd reload
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000197
- Version
- PHTN-67-000068
- Vuln IDs
-
- V-239139
- Rule IDs
-
- SV-239139r675225_rule
Checks: C-42350r675223_chk
At the command line, execute the following command: # rpm -qa|grep openssh If there is no output, this is a finding.
Fix: F-42309r675224_fix
Installing openssh manually is not supported by VMware. Revert to a previous backup or redeploy the VCSA.
- RMF Control
- SI-16
- Severity
- M
- CCI
- CCI-002824
- Version
- PHTN-67-000069
- Vuln IDs
-
- V-239140
- Rule IDs
-
- SV-239140r675228_rule
Checks: C-42351r675226_chk
At the command line, execute the following command: # cat /proc/sys/kernel/randomize_va_space If the value of "randomize_va_space" is not "2", this is a finding.
Fix: F-42310r675227_fix
Open /etc/sysctl.d/50-security-hardening.conf with a text editor. Ensure that the "randomize_va_space" is uncommented and set to the following: kernel.randomize_va_space=2 At the command line, execute the following command: # sysctl --system
- RMF Control
- SI-2
- Severity
- M
- CCI
- CCI-002617
- Version
- PHTN-67-000070
- Vuln IDs
-
- V-239141
- Rule IDs
-
- SV-239141r675231_rule
Checks: C-42352r675229_chk
At the command line, execute the following command: # grep -i "^clean_requirements_on_remove" /etc/tdnf/tdnf.conf Expected result: clean_requirements_on_remove=true If the output does not match the expected result, this is a finding.
Fix: F-42311r675230_fix
Open /etc/tdnf/tdnf.conf with a text editor. Remove any existing "clean_requirements_on_remove" line and ensure the following line is present: clean_requirements_on_remove=true
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- PHTN-67-000071
- Vuln IDs
-
- V-239142
- Rule IDs
-
- SV-239142r821356_rule
Checks: C-42353r821355_chk
At the command line, execute the following command: # auditctl -l | grep sudo Expected result: -a always,exit -F path=/usr/bin/sudo -F perm=x -F auid>=1000 -F auid!=1 -k privileged OR -a always,exit -S all -F path=/usr/bin/sudo -F perm=x -F auid>=1000 -F auid!=-1 -F key=privileged If the output does not match the expected result, this is a finding. Note: This check depends on the auditd service to be in a running state for accurate results. Enabling the auditd service is done as part of a separate control.
Fix: F-42312r816642_fix
Open /etc/audit/rules.d/audit.STIG.rules with a text editor and add the following lines: -a always,exit -F path=/usr/bin/sudo -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged At the command line, execute the following command: # /sbin/augenrules --load
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- PHTN-67-000072
- Vuln IDs
-
- V-239143
- Rule IDs
-
- SV-239143r816646_rule
Checks: C-42354r816644_chk
At the command line, execute the following command: # auditctl -l | grep -E "faillog|lastlog|tallylog" Expected result: -w /var/log/faillog -p wa -w /var/log/lastlog -p wa -w /var/log/tallylog -p wa If the output does not match the expected result, this is a finding. Note: This check depends on the auditd service to be in a running state for accurate results. Enabling the auditd service is done as part of a separate control.
Fix: F-42313r816645_fix
Open /etc/audit/rules.d/audit.STIG.rules with a text editor and add the following lines: -w /var/log/faillog -p wa -w /var/log/lastlog -p wa -w /var/log/tallylog -p wa At the command line, execute the following command: # /sbin/augenrules --load
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- PHTN-67-000073
- Vuln IDs
-
- V-239144
- Rule IDs
-
- SV-239144r816649_rule
Checks: C-42355r816647_chk
At the command line, execute the following command: # auditctl -l | grep "/sbin/insmod" Expected result: -w /sbin/insmod -p x If the output does not match the expected result, this is a finding. Note: This check depends on the auditd service to be in a running state for accurate results. Enabling the auditd service is done as part of a separate control.
Fix: F-42314r816648_fix
Open /etc/audit/rules.d/audit.STIG.rules with a text editor and add the following lines: -w /sbin/insmod -p x At the command line, execute the following command: # /sbin/augenrules --load
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- PHTN-67-000074
- Vuln IDs
-
- V-239145
- Rule IDs
-
- SV-239145r816652_rule
Checks: C-42356r816650_chk
At the command line, execute the following command: # auditctl -l | grep -E /etc/security/opasswd If any of these are not listed with a permissions filter of at least "w", this is a finding. Note: This check depends on the auditd service to be in a running state for accurate results. Enabling the auditd service is done as part of a separate control.
Fix: F-42315r816651_fix
Open /etc/audit/rules.d/audit.STIG.rules with a text editor and add the following lines: -w /etc/security/opasswd -p wa -k opasswd At the command line, execute the following command: # /sbin/augenrules --load
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000075
- Vuln IDs
-
- V-239146
- Rule IDs
-
- SV-239146r816654_rule
Checks: C-42357r675244_chk
At the command line, execute the following command: # grep pam_cracklib /etc/pam.d/system-password If the output does not return at least "password requisite pam_cracklib.so", this is a finding.
Fix: F-42316r816653_fix
Open /etc/applmgmt/appliance/system-password with a text editor. Comment out any existing "pam_cracklib.so" line and add the following: password requisite pam_cracklib.so dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 minlen=8 minclass=4 difok=4 retry=3 maxsequence=0 enforce_for_root Save and close.
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000076
- Vuln IDs
-
- V-239147
- Rule IDs
-
- SV-239147r675249_rule
Checks: C-42358r675247_chk
At the command line, execute the following command: # grep FAIL_DELAY /etc/login.defs Expected result: FAIL_DELAY 4 If the output does not match the expected result, this is a finding.
Fix: F-42317r675248_fix
Open /etc/login.defs with a text editor. Add the following line after the last auth statement: FAIL_DELAY 4
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000077
- Vuln IDs
-
- V-239148
- Rule IDs
-
- SV-239148r675252_rule
Checks: C-42359r675250_chk
At the command line, execute the following command: # grep pam_faildelay /etc/pam.d/system-auth|grep --color=always "delay=" Expected result: auth optional pam_faildelay.so delay=4000000 If the output does not match the expected result, this is a finding.
Fix: F-42318r675251_fix
Open /etc/pam.d/system-auth with a text editor. Remove any existing "pam_faildelay" line and add the following line at the end of the file: auth optional pam_faildelay.so delay=4000000
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000078
- Vuln IDs
-
- V-239149
- Rule IDs
-
- SV-239149r675255_rule
Checks: C-42360r675253_chk
At the command line, execute the following command: # grep -E "freq|flush" /etc/audit/auditd.conf Expected result: flush = INCREMENTAL_ASYNC freq = 50 If the output does not match the expected result, this is a finding.
Fix: F-42319r675254_fix
Open /etc/audit/auditd.conf with a text editor. Ensure that the line below is present and any existing "flush" and "freq" settings are removed. flush = INCREMENTAL_ASYNC freq = 50
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000079
- Vuln IDs
-
- V-239150
- Rule IDs
-
- SV-239150r675258_rule
Checks: C-42361r675256_chk
At the command line, execute the following command: # echo $PATH Expected result: /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/java/jre-vmware/bin:/opt/vmware/bin If the output does not match the expected result, this is a finding.
Fix: F-42320r675257_fix
At the command line, execute the following command: # export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/java/jre-vmware/bin:/opt/vmware/bin
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000080
- Vuln IDs
-
- V-239151
- Rule IDs
-
- SV-239151r675261_rule
Checks: C-42362r675259_chk
At the command line, execute the following command: # grep -i "^create_home" /etc/login.defs If there is no output or the output does not equal "CREATE_HOME yes", this is a finding.
Fix: F-42321r675260_fix
Open /etc/login.defs with a text editor. Ensure that the following is present and any existing CREATE_HOME line is removed: CREATE_HOME yes
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000081
- Vuln IDs
-
- V-239152
- Rule IDs
-
- SV-239152r675264_rule
Checks: C-42363r675262_chk
At the command line, execute the following command: # systemctl status debug-shell.service|grep -E --color=always disabled If the debug-shell service is not disabled, this is a finding.
Fix: F-42322r675263_fix
At the command line, execute the following commands: # systemctl stop debug-shell.service # systemctl disable debug-shell.service Reboot for changes to take effect.
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000082
- Vuln IDs
-
- V-239153
- Rule IDs
-
- SV-239153r675267_rule
Checks: C-42364r675265_chk
At the command line, execute the following command: # cat /etc/profile.d/umask.sh Expected result: # By default, the umask should be set. if [ "$(id -gn)" = "$(id -un)" -a $EUID -gt 99 ] ; then umask 002 else umask 027 fi If the output does not match the expected result, this is a finding.
Fix: F-42323r675266_fix
Open /etc/profile.d/umask.sh with a text editor. Set the contents as follows: # By default, the umask should be set. if [ "$(id -gn)" = "$(id -un)" -a $EUID -gt 99 ] ; then umask 002 else umask 027 fi
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000083
- Vuln IDs
-
- V-239154
- Rule IDs
-
- SV-239154r675270_rule
Checks: C-42365r675268_chk
At the command line, execute the following command: # sshd -T|&grep -i GSSAPIAuthentication Expected result: GSSAPIAuthentication no If the output does not match the expected result, this is a finding.
Fix: F-42324r675269_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "GSSAPIAuthentication" line is uncommented and set to the following: GSSAPIAuthentication no At the command line, execute the following command: # service sshd reload
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000084
- Vuln IDs
-
- V-239155
- Rule IDs
-
- SV-239155r675273_rule
Checks: C-42366r675271_chk
At the command line, execute the following command: sshd -T|&grep -i PermitUserEnvironment Expected result: PermitUserEnvironment no If the output does not match the expected result, this is a finding.
Fix: F-42325r675272_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "PermitUserEnvironment" line is uncommented and set to the following: PermitUserEnvironment no At the command line, execute the following command: # service sshd reload
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000085
- Vuln IDs
-
- V-239156
- Rule IDs
-
- SV-239156r675276_rule
Checks: C-42367r675274_chk
At the command line, execute the following command: # sshd -T|&grep -i X11Forwarding Expected result: X11Forwarding no If the output does not match the expected result, this is a finding.
Fix: F-42326r675275_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "X11Forwarding" line is uncommented and set to the following: X11Forwarding no At the command line, execute the following command: # service sshd reload
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000086
- Vuln IDs
-
- V-239157
- Rule IDs
-
- SV-239157r675279_rule
Checks: C-42368r675277_chk
At the command line, execute the following command: # sshd -T|&grep -i StrictModes Expected result: StrictModes yes If the output does not match the expected result, this is a finding.
Fix: F-42327r675278_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "StrictModes" line is uncommented and set to the following: StrictModes yes At the command line, execute the following command: # service sshd reload
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000087
- Vuln IDs
-
- V-239158
- Rule IDs
-
- SV-239158r675282_rule
Checks: C-42369r675280_chk
At the command line, execute the following command: # sshd -T|&grep -i KerberosAuthentication Expected result: KerberosAuthentication no If the output does not match the expected result, this is a finding.
Fix: F-42328r675281_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "KerberosAuthentication" line is uncommented and set to the following: KerberosAuthentication no At the command line, execute the following command: # service sshd reload
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000088
- Vuln IDs
-
- V-239159
- Rule IDs
-
- SV-239159r675285_rule
Checks: C-42370r675283_chk
At the command line, execute the following command: # sshd -T|&grep -i UsePrivilegeSeparation Expected result: UsePrivilegeSeparation yes If the output does not match the expected result, this is a finding.
Fix: F-42329r675284_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "UsePrivilegeSeparation" line is uncommented and set to the following: UsePrivilegeSeparation yes At the command line, execute the following command: # service sshd reload
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000089
- Vuln IDs
-
- V-239160
- Rule IDs
-
- SV-239160r675288_rule
Checks: C-42371r675286_chk
At the command line, execute the following command: # sshd -T|&grep -i PermitEmptyPasswords Expected result: PermitEmptyPasswords no If the output does not match the expected result, this is a finding.
Fix: F-42330r675287_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "PermitEmptyPasswords" line is uncommented and set to the following: PermitEmptyPasswords no At the command line, execute the following command: # service sshd reload
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000090
- Vuln IDs
-
- V-239161
- Rule IDs
-
- SV-239161r675291_rule
Checks: C-42372r675289_chk
At the command line, execute the following command: # sshd -T|&grep -i Compression Expected result: Compression no If the output does not match the expected result, this is a finding.
Fix: F-42331r675290_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "Compression" line is uncommented and set to the following: Compression no At the command line, execute the following command: # service sshd reload
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000091
- Vuln IDs
-
- V-239162
- Rule IDs
-
- SV-239162r675294_rule
Checks: C-42373r675292_chk
At the command line, execute the following command: # sshd -T|&grep -i PrintLastLog Expected result: PrintLastLog yes If the output does not match the expected result, this is a finding.
Fix: F-42332r675293_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "PrintLastLog" line is uncommented and set to the following: PrintLastLog yes At the command line, execute the following command: # service sshd reload
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000092
- Vuln IDs
-
- V-239163
- Rule IDs
-
- SV-239163r675297_rule
Checks: C-42374r675295_chk
At the command line, execute the following command: # sshd -T|&grep -i IgnoreRhosts Expected result: IgnoreRhosts yes If the output does not match the expected result, this is a finding.
Fix: F-42333r675296_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "IgnoreRhosts" line is uncommented and set to the following: IgnoreRhosts yes At the command line, execute the following command: # service sshd reload
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000093
- Vuln IDs
-
- V-239164
- Rule IDs
-
- SV-239164r675300_rule
Checks: C-42375r675298_chk
At the command line, execute the following command: # sshd -T|&grep -i IgnoreUserKnownHosts Expected result: IgnoreUserKnownHosts yes If the output does not match the expected result, this is a finding.
Fix: F-42334r675299_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "IgnoreUserKnownHosts" line is uncommented and set to the following: IgnoreUserKnownHosts yes At the command line, execute the following command: # service sshd reload
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000094
- Vuln IDs
-
- V-239165
- Rule IDs
-
- SV-239165r675303_rule
Checks: C-42376r675301_chk
At the command line, execute the following command: # sshd -T|&grep -i MaxAuthTries Expected result: MaxAuthTries 2 If the output does not match the expected result, this is a finding.
Fix: F-42335r675302_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "MaxAuthTries" line is uncommented and set to the following: MaxAuthTries 2 At the command line, execute the following command: # service sshd reload
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000095
- Vuln IDs
-
- V-239166
- Rule IDs
-
- SV-239166r675306_rule
Checks: C-42377r675304_chk
At the command line, execute the following command: # systemctl status ctrl-alt-del.target Expected result: ctrl-alt-del.target Loaded: masked (/dev/null; bad) Active: inactive (dead) If the output does not match the expected result, this is a finding.
Fix: F-42336r675305_fix
At the command line, execute the following command: # systemctl mask ctrl-alt-del.target
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000096
- Vuln IDs
-
- V-239167
- Rule IDs
-
- SV-239167r675309_rule
Checks: C-42378r675307_chk
At the command line, execute the following command: # stat -c "%n permissions are %a and owned by %U:%G" /etc/skel/.[^.]* Expected result: /etc/skel/.bash_logout permissions are 750 and owned by root:root /etc/skel/.bash_profile permissions are 644 and owned by root:root /etc/skel/.bashrc permissions are 750 and owned by root:root If the output does not match the expected result, this is a finding.
Fix: F-42337r675308_fix
At the command line, execute the following commands: # chmod 750 /etc/skel/.bash_logout # chmod 644 /etc/skel/.bash_profile # chmod 750 /etc/skel/.bashrc # chown root:root /etc/skel/.bash_logout # chown root:root /etc/skel/.bash_profile # chown root:root /etc/skel/.bashrc
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000097
- Vuln IDs
-
- V-239168
- Rule IDs
-
- SV-239168r675312_rule
Checks: C-42379r675310_chk
At the command line, execute the following command: # stat -c "%n permissions are %a and owned by %U:%G" /root Expected result: /root permissions are 700 and owned by root:root If the output does not match the expected result, this is a finding.
Fix: F-42338r675311_fix
At the command line, execute the following commands: # chmod 700 /root # chown root:root /root
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000098
- Vuln IDs
-
- V-239169
- Rule IDs
-
- SV-239169r675315_rule
Checks: C-42380r675313_chk
At the command line, execute the following command: # find /etc/bash.bashrc /etc/profile /etc/profile.d/ -xdev -type f -a '(' -perm -002 -o -not -user root -o -not -group root ')' -exec ls -ld {} \; If any files are returned, this is a finding.
Fix: F-42339r675314_fix
At the command line, execute the following commands for each returned file: # chmod o-w <file> # chown root:root <file>
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000099
- Vuln IDs
-
- V-239170
- Rule IDs
-
- SV-239170r675318_rule
Checks: C-42381r675316_chk
At the command line, execute the following command: # find /etc/rc.d/* -xdev -type f -a '(' -perm -002 -o -not -user root -o -not -group root ')' -exec ls -ld {} \; If any files are returned, this is a finding.
Fix: F-42340r675317_fix
At the command line, execute the following commands for each returned file: # chmod o-w <file> # chown root:root <file>
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000100
- Vuln IDs
-
- V-239171
- Rule IDs
-
- SV-239171r675321_rule
Checks: C-42382r675319_chk
At the command line, execute the following command: # find / -fstype ext4 -nouser -o -nogroup -exec ls -ld {} \; If any files are returned, this is a finding.
Fix: F-42341r675320_fix
At the command line, execute the following command for each returned file: # chown root:root <file>
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000101
- Vuln IDs
-
- V-239172
- Rule IDs
-
- SV-239172r675324_rule
Checks: C-42383r675322_chk
At the command line, execute the following command: # stat -c "%n permissions are %a and owned by %U:%G" /etc/cron.allow Expected result: /etc/cron.allow permissions are 600 and owned by root:root If the output does not match the expected result, this is a finding.
Fix: F-42342r675323_fix
At the command line, execute the following commands: # chmod 600 /etc/cron.allow # chown root:root /etc/cron.allow
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000102
- Vuln IDs
-
- V-239173
- Rule IDs
-
- SV-239173r675327_rule
Checks: C-42384r675325_chk
At the command line, execute the following command: # find /etc/cron.d/ /etc/cron.daily/ /etc/cron.hourly/ /etc/cron.monthly/ /etc/cron.weekly/ -xdev -type f -a '(' -perm -002 -o -not -user root -o -not -group root ')' -exec ls -ld {} \; If any files are returned, this is a finding.
Fix: F-42343r675326_fix
At the command line, execute the following commands for each returned file: # chmod o-w <file> # chown root:root <file>
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000103
- Vuln IDs
-
- V-239174
- Rule IDs
-
- SV-239174r675330_rule
Checks: C-42385r675328_chk
At the command line, execute the following command: # stat -c "%n permissions are %a and owned by %U:%G" /etc/cron.d /etc/cron.daily /etc/cron.hourly /etc/cron.monthly /etc/cron.weekly Expected result: /etc/cron.d permissions are 755 and owned by root:root /etc/cron.daily permissions are 755 and owned by root:root /etc/cron.hourly permissions are 755 and owned by root:root /etc/cron.monthly permissions are 755 and owned by root:root /etc/cron.weekly permissions are 755 and owned by root:root If the output does not match the expected result, this is a finding.
Fix: F-42344r675329_fix
At the command line, execute the following commands for each returned file: # chmod 755 <path> # chown root:root <path>
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000104
- Vuln IDs
-
- V-239175
- Rule IDs
-
- SV-239175r816656_rule
Checks: C-42386r675331_chk
At the command line, execute the following command: # /sbin/sysctl -a --pattern "net.ipv[4|6].conf.(all|default|eth.*).accept_source_route" Expected result: net.ipv4.conf.all.accept_source_route = 0 net.ipv4.conf.default.accept_source_route = 0 net.ipv4.conf.eth0.accept_source_route = 0 net.ipv6.conf.all.accept_source_route = 0 net.ipv6.conf.default.accept_source_route = 0 net.ipv6.conf.eth0.accept_source_route = 0 If the output does not match the expected result, this is a finding. Note: The number of "ethx" lines returned is dependent on the number of interfaces. Every "ethx" entry must be set to "0".
Fix: F-42345r816655_fix
Open /etc/sysctl.conf with a text editor. Add or update the following lines: net.ipv4.conf.all.accept_source_route = 0 net.ipv4.conf.default.accept_source_route = 0 net.ipv4.conf.eth0.accept_source_route = 0 net.ipv6.conf.all.accept_source_route = 0 net.ipv6.conf.default.accept_source_route = 0 net.ipv6.conf.eth0.accept_source_route = 0 Run the following command to load the new setting: # /sbin/sysctl --load
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000105
- Vuln IDs
-
- V-239176
- Rule IDs
-
- SV-239176r816658_rule
Checks: C-42387r675334_chk
At the command line, execute the following command: # /sbin/sysctl -a --pattern ignore_broadcasts Expected result: net.ipv4.icmp_echo_ignore_broadcasts = 1 If the output does not match the expected result, this is a finding.
Fix: F-42346r816657_fix
Open /etc/sysctl.conf with a text editor. Add or update the following line: net.ipv4.icmp_echo_ignore_broadcasts=1 Run the following command to load the new setting: # /sbin/sysctl --load
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000106
- Vuln IDs
-
- V-239177
- Rule IDs
-
- SV-239177r816660_rule
Checks: C-42388r675337_chk
At the command line, execute the following command: # /sbin/sysctl -a --pattern "net.ipv4.conf.(all|default|eth.*).accept_redirects" Expected result: net.ipv4.conf.all.accept_redirects = 0 net.ipv4.conf.default.accept_redirects = 0 net.ipv4.conf.eth0.accept_redirects = 0 If the output does not match the expected result, this is a finding. Note: The number of "ethx" lines returned is dependent on the number of interfaces. Every "ethx" entry must be set to "0".
Fix: F-42347r816659_fix
Open /etc/sysctl.conf with a text editor. Add or update the following lines: net.ipv4.conf.all.accept_redirects = 0 net.ipv4.conf.default.accept_redirects = 0 net.ipv4.conf.eth0.accept_redirects = 0 Run the following command to load the new setting: # /sbin/sysctl --load
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000107
- Vuln IDs
-
- V-239178
- Rule IDs
-
- SV-239178r816662_rule
Checks: C-42389r675340_chk
At the command line, execute the following command: # /sbin/sysctl -a --pattern "net.ipv4.conf.(all|default|eth.*).secure_redirects" Expected result: net.ipv4.conf.all.secure_redirects = 0 net.ipv4.conf.default.secure_redirects = 0 net.ipv4.conf.eth0.secure_redirects = 0 If the output does not match the expected result, this is a finding. Note: The number of "ethx" lines returned is dependent on the number of interfaces. Every "ethx" entry must be set to "0".
Fix: F-42348r816661_fix
Open /etc/sysctl.conf with a text editor. Add or update the following lines: net.ipv4.conf.all.secure_redirects = 0 net.ipv4.conf.default.secure_redirects = 0 net.ipv4.conf.eth0.secure_redirects = 0 Run the following command to load the new setting: # /sbin/sysctl --load
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000108
- Vuln IDs
-
- V-239179
- Rule IDs
-
- SV-239179r816664_rule
Checks: C-42390r675343_chk
At the command line, execute the following command: # /sbin/sysctl -a --pattern "net.ipv4.conf.(all|default|eth.*).send_redirects" Expected result: net.ipv4.conf.all.send_redirects = 0 net.ipv4.conf.default.send_redirects = 0 net.ipv4.conf.eth0.send_redirects = 0 If the output does not match the expected result, this is a finding. Note: The number of "ethx" lines returned is dependent on the number of interfaces. Every "ethx" entry must be set to "0".
Fix: F-42349r816663_fix
Open /etc/sysctl.conf with a text editor. Add or update the following lines: net.ipv4.conf.all.send_redirects = 0 net.ipv4.conf.default.send_redirects = 0 net.ipv4.conf.eth0.send_redirects = 0 Run the following command to load the new setting: # /sbin/sysctl --load
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000109
- Vuln IDs
-
- V-239180
- Rule IDs
-
- SV-239180r816666_rule
Checks: C-42391r675346_chk
At the command line, execute the following command: # /sbin/sysctl -a --pattern "net.ipv4.conf.(all|default|eth.*).log_martians" Expected result: net.ipv4.conf.all.log_martians = 1 net.ipv4.conf.default.log_martians = 1 net.ipv4.conf.eth0.log_martians = 1 If the output does not match the expected result, this is a finding. Note: The number of "ethx" lines returned is dependent on the number of interfaces. Every "ethx" entry must be set to "1".
Fix: F-42350r816665_fix
Open /etc/sysctl.conf with a text editor. Add or update the following lines: net.ipv4.conf.all.log_martians = 1 net.ipv4.conf.default.log_martians = 1 net.ipv4.conf.eth0.log_martians = 1 Run the following command to load the new setting: # /sbin/sysctl --load
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000110
- Vuln IDs
-
- V-239181
- Rule IDs
-
- SV-239181r816668_rule
Checks: C-42392r675349_chk
At the command line, execute the following command: # /sbin/sysctl -a --pattern "net.ipv4.conf.(all|default|eth.*)\.rp_filter" Expected result: net.ipv4.conf.all.rp_filter = 1 net.ipv4.conf.default.rp_filter = 1 net.ipv4.conf.eth0.rp_filter = 1 If the output does not match the expected result, this is a finding. Note: The number of "ethx" lines returned is dependent on the number of interfaces. Every "ethx" entry must be set to "1".
Fix: F-42351r816667_fix
Open /etc/sysctl.conf with a text editor. Add or update the following lines: net.ipv4.conf.all.rp_filter = 1 net.ipv4.conf.default.rp_filter = 1 net.ipv4.conf.eth0.rp_filter = 1 Run the following command to load the new setting: # /sbin/sysctl --load
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000111
- Vuln IDs
-
- V-239182
- Rule IDs
-
- SV-239182r816670_rule
Checks: C-42393r675352_chk
At the command line, execute the following command: # /sbin/sysctl -a --pattern "net.ipv[4|6].conf.(all|default|eth.*).mc_forwarding" Expected result: net.ipv4.conf.all.mc_forwarding = 0 net.ipv4.conf.default.mc_forwarding = 0 net.ipv4.conf.eth0.mc_forwarding = 0 net.ipv6.conf.all.mc_forwarding = 0 net.ipv6.conf.default.mc_forwarding = 0 net.ipv6.conf.eth0.mc_forwarding = 0 If the output does not match the expected result, this is a finding. Note: The number of "ethx" lines returned is dependent on the number of interfaces. Every "ethx" entry must be set to "0".
Fix: F-42352r816669_fix
Open /etc/sysctl.conf with a text editor. Add or update the following lines: net.ipv4.conf.all.mc_forwarding = 0 net.ipv4.conf.default.mc_forwarding = 0 net.ipv4.conf.eth0.mc_forwarding = 0 net.ipv6.conf.all.mc_forwarding = 0 net.ipv6.conf.default.mc_forwarding = 0 net.ipv6.conf.eth0.mc_forwarding = 0 Run the following command to load the new setting: # /sbin/sysctl --load
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000112
- Vuln IDs
-
- V-239183
- Rule IDs
-
- SV-239183r816672_rule
Checks: C-42394r675355_chk
At the command line, execute the following command: # /sbin/sysctl -a --pattern "net.ipv4.ip_forward$" Expected result: net.ipv4.ip_forward = 0 If the system is intended to operate as a router, this is N/A. If the output does not match the expected result, this is a finding.
Fix: F-42353r816671_fix
Open /etc/sysctl.conf with a text editor. Add or update the following line: net.ipv4.ip_forward = 0 Run the following command to load the new setting: # /sbin/sysctl --load
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000113
- Vuln IDs
-
- V-239184
- Rule IDs
-
- SV-239184r816674_rule
Checks: C-42395r675358_chk
At the command line, execute the following command: # /sbin/sysctl -a --pattern "net.ipv4.tcp_timestamps$" Expected result: net.ipv4.tcp_timestamps = 1 If the output does not match the expected result, this is a finding.
Fix: F-42354r816673_fix
Open /etc/sysctl.conf with a text editor. Add or update the following line: net.ipv4.tcp_timestamps = 1 Run the following command to load the new setting: # /sbin/sysctl --load
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000114
- Vuln IDs
-
- V-239185
- Rule IDs
-
- SV-239185r675363_rule
Checks: C-42396r675361_chk
At the command line, execute the following command: # systemctl is-enabled xinetd.service Expected result: disabled If the output does not match the expected result, this is a finding.
Fix: F-42355r675362_fix
At the command line, execute the following commands: # service xinetd stop # systemctl disable xinetd.service
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000115
- Vuln IDs
-
- V-239186
- Rule IDs
-
- SV-239186r675366_rule
Checks: C-42397r675364_chk
At the command line, execute the following command: # stat -c "%n permissions are %a and owned by %U:%G" /etc/ssh/*key.pub Expected result: /etc/ssh/ssh_host_dsa_key.pub permissions are 644 and owned by root:root /etc/ssh/ssh_host_ecdsa_key.pub permissions are 644 and owned by root:root /etc/ssh/ssh_host_ed25519_key.pub permissions are 644 and owned by root:root /etc/ssh/ssh_host_rsa_key.pub permissions are 644 and owned by root:root If the output does not match the expected result, this is a finding.
Fix: F-42356r675365_fix
At the command line, execute the following commands for each returned file: # chmod 644 <file> # chown root:root <file>
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000116
- Vuln IDs
-
- V-239187
- Rule IDs
-
- SV-239187r675369_rule
Checks: C-42398r675367_chk
At the command line, execute the following command: # stat -c "%n permissions are %a and owned by %U:%G" /etc/ssh/*key Expected result: /etc/ssh/ssh_host_dsa_key permissions are 600 and owned by root:root /etc/ssh/ssh_host_ecdsa_key permissions are 600 and owned by root:root /etc/ssh/ssh_host_ed25519_key permissions are 600 and owned by root:root /etc/ssh/ssh_host_rsa_key permissions are 600 and owned by root:root If the output does not match the expected result, this is a finding.
Fix: F-42357r675368_fix
At the command line, execute the following commands for each returned file: # chmod 600 <file> # chown root:root <file>
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000117
- Vuln IDs
-
- V-239188
- Rule IDs
-
- SV-239188r816676_rule
Checks: C-42399r675370_chk
At the command line, execute the following command: # grep pam_cracklib /etc/pam.d/system-password|grep --color=always "enforce_for_root" Expected result: password requisite pam_cracklib.so dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 minlen=8 minclass=4 difok=4 retry=3 maxsequence=0 enforce_for_root If the output does not match the expected result, this is a finding.
Fix: F-42358r816675_fix
Open /etc/applmgmt/appliance/system-password with a text editor. Comment out any existing "pam_cracklib.so" line and add the following: password requisite pam_cracklib.so dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 minlen=8 minclass=4 difok=4 retry=3 maxsequence=0 enforce_for_root Save and close.
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000118
- Vuln IDs
-
- V-239189
- Rule IDs
-
- SV-239189r675375_rule
Checks: C-42400r675373_chk
At the command line, execute the following command: # find /boot/*.cfg -xdev -type f -a '(' -not -perm 600 -o -not -user root -o -not -group root ')' -exec ls -ld {} \; If any files are returned, this is a finding.
Fix: F-42359r675374_fix
At the command line, execute the following commands for each returned file: # chmod 600 <file> # chown root:root <file>
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000119
- Vuln IDs
-
- V-239190
- Rule IDs
-
- SV-239190r675378_rule
Checks: C-42401r675376_chk
At the command line, execute the following command: # stat -c "%n permissions are %a and owned by %U:%G" /etc/ssh/sshd_config Expected result: /etc/ssh/sshd_config permissions are 600 and owned by root:root If the output does not match the expected result, this is a finding.
Fix: F-42360r675377_fix
At the command line, execute the following commands: # chmod 600 /etc/ssh/sshd_config # chown root:root /etc/ssh/sshd_config
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000120
- Vuln IDs
-
- V-239191
- Rule IDs
-
- SV-239191r675381_rule
Checks: C-42402r675379_chk
At the command line, execute the following command: # find /etc/sysctl.conf /etc/sysctl.d/* -xdev -type f -a '(' -not -perm 600 -o -not -user root -o -not -group root ')' -exec ls -ld {} \; If any files are returned, this is a finding.
Fix: F-42361r675380_fix
At the command line, execute the following commands for each returned file: # chmod 600 <file> # chown root:root <file>
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000122
- Vuln IDs
-
- V-239193
- Rule IDs
-
- SV-239193r675387_rule
Checks: C-42404r675385_chk
At the command line, execute the following command: # grep UMASK /etc/login.defs Expected result: UMASK 077 If the output does not match the expected result, this a finding.
Fix: F-42363r675386_fix
Open /etc/login.defs with a text editor. Ensure that the "UMASK" line is uncommented and set to the following: UMASK 077
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- PHTN-67-000123
- Vuln IDs
-
- V-239194
- Rule IDs
-
- SV-239194r675390_rule
Checks: C-42405r675388_chk
At the command line, execute the following command: # sshd -T|&grep -i HostbasedAuthentication Expected result: hostbasedauthentication no If the output does not match the expected result, this is a finding.
Fix: F-42364r675389_fix
Open /etc/ssh/sshd_config with a text editor. Ensure that the "HostbasedAuthentication" line is uncommented and set to the following: HostbasedAuthentication no At the command line, execute the following command: # service sshd reload
- RMF Control
- AC-3
- Severity
- M
- CCI
- CCI-000213
- Version
- PHTN-67-000124
- Vuln IDs
-
- V-239195
- Rule IDs
-
- SV-239195r675393_rule
Checks: C-42406r675391_chk
At the command line, execute the following command: # grep -i ^password_pbkdf2 /boot/grub2/grub.cfg If there is no output, this is a finding. If the output does not begin with "password_pbkdf2 root", this is a finding.
Fix: F-42365r675392_fix
At the command line, execute the following command: # grub2-mkpasswd-pbkdf2 Enter a secure password and ensure this password is stored for break-glass situations. The vCenter root account cannot be recovered without knowing this separate password. Copy the resulting encrypted string. An example string follows: grub.pbkdf2.sha512.10000.983A13DF3C51BB2B5130F0B86DDBF0DEA1AAF766BD1F16B7840F79CE3E35494C4B99F505C99C150071E563DF1D7FE1F45456D5960C4C79DAB6C49298B02A5558.5B2C49E12D43CC5A876F6738462DE4EFC24939D4BE486CDB72CFBCD87FDE93FBAFCB817E01B90F23E53C2502C3230502BC3113BE4F80B0AFC0EE956E735F7F86 Open /boot/grub2/grub.cfg with a text editor. Find the line that begins with "set rootpartition". Below this line, paste the following on its own line: set superusers="root" Below this, paste the following, substituting your own encrypted string from the steps above: password_pbkdf2 root <YOUR-LONG-STRING-FROM-ABOVE> The VCSA ships with one "menuentry" block by default. Copy that entire block and paste it right below that block. Example: menuentry "Photon" { linux "/"$photon_linux root=$rootpartition net.ifnames=0 $photon_cmdline coredump_filter=0x37 consoleblank=0 if [ "$photon_initrd" ]; then initrd "/"$photon_initrd fi } menuentry "Photon" { linux "/"$photon_linux root=$rootpartition net.ifnames=0 $photon_cmdline coredump_filter=0x37 consoleblank=0 if [ "$photon_initrd" ]; then initrd "/"$photon_initrd fi } Modify the first menuentry block to add the "--unrestricted" option as follows: menuentry "Photon" --unrestricted { Modify the second menuentry block to add the allowed user as follows: menuentry "Recover Photon" --users root { This concludes the fix. To verify, following is an example grub.cfg snippet: ... set rootpartition=PARTUUID=326e5b0f-42fb-471a-8209-18964c4a2ed3 set superusers="root" password_pbkdf2 root grub.pbkdf2.sha512.10000.983A13DF3C51BB2B5130F0B86DDBF0DEA1AAF766BD1F16B7840F79CE3E35494C4B99F505C99C150071E563DF1D7FE1F45456D5960C4C79DAB6C49298B02A5558.5B2C49E12D43CC5A876F6738462DE4EFC24939D4BE486CDB72CFBCD87FDE93FBAFCB817E01B90F23E53C2502C3230502BC3113BE4F80B0AFC0EE956E735F7F86 menuentry "Photon" --unrestricted { linux "/"$photon_linux root=$rootpartition net.ifnames=0 $photon_cmdline coredump_filter=0x37 consoleblank=0 if [ "$photon_initrd" ]; then initrd "/"$photon_initrd fi } menuentry "Recover Photon" --users root { linux "/"$photon_linux root=$rootpartition net.ifnames=0 $photon_cmdline coredump_filter=0x37 consoleblank=0 if [ "$photon_initrd" ]; then initrd "/"$photon_initrd fi }
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- PHTN-67-000044
- Vuln IDs
-
- V-251878
- Rule IDs
-
- SV-251878r816564_rule
Checks: C-55336r816562_chk
At the command line, execute the following command: # auditctl -l | grep -E "(usermod|groupmod)" Expected result: -w /usr/sbin/usermod -p x -k usermod -w /usr/sbin/groupmod -p x -k groupmod If the output does not match the expected result, this is a finding. Note: This check depends on the auditd service to be in a running state for accurate results. Enabling the auditd service is done as part of a separate control.
Fix: F-55288r816563_fix
Open /etc/audit/rules.d/audit.STIG.rules with a text editor and add the following lines: -w /usr/sbin/usermod -p x -k usermod -w /usr/sbin/groupmod -p x -k groupmod At the command line, execute the following command: # /sbin/augenrules --load