Nutanix AOS 5.20.x OS Security Technical Implementation Guide
Pick two releases to diff their requirements.
Open a previous version of this STIG.
Digest of Updates +1
Comparison against the immediately-prior release (V1R1). 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.
Added rules 1
- V-264424 High Nutanix AOS must be running an operating system release that is currently supported by the vendor.
- RMF Control
- AC-10
- Severity
- M
- CCI
- CCI-000054
- Version
- NUTX-OS-000010
- Vuln IDs
-
- V-254120
- Rule IDs
-
- SV-254120r958398_rule
Checks: C-57605r846446_chk
Verify Nutanix AOS limits the number of concurrent sessions to "10" or less for all accounts and/or account types by issuing the following command: $ sudo grep "maxlogins" /etc/security/limits.conf If the line * hard maxlogins 10, is missing or set to a number more than 10, this is a finding.
Fix: F-57556r846447_fix
Modify the file /etc/security/limits.conf and add the line * hard maxlogins 10 or set the number to less than or equal to 10.
- RMF Control
- AC-11
- Severity
- M
- CCI
- CCI-000057
- Version
- NUTX-OS-000020
- Vuln IDs
-
- V-254121
- Rule IDs
-
- SV-254121r958402_rule
Checks: C-57606r846449_chk
Confirm Nutanix AOS is configured for autologout after 15 minutes of idle time. $ sudo grep -i tmout /etc/profile.d/* /etc/profile.d/os-security.sh:readonly TMOUT=900 If "TMOUT" is not set to "900" or less in a script located in the /etc/profile.d/ directory to enforce session termination after inactivity, this is a finding.
Fix: F-57557r846450_fix
Configure Nutanix AOS for autologout of idle sessions by running the following commands. $ sudo salt-call state.sls security/CVM/shellCVM
- RMF Control
- MA-4
- Severity
- M
- CCI
- CCI-000879
- Version
- NUTX-OS-000050
- Vuln IDs
-
- V-254122
- Rule IDs
-
- SV-254122r958636_rule
Checks: C-57607r846452_chk
Confirm Nutanix AOS is configured to auto disconnect remote session to prevent session hijacking. $ sudo grep -i clientalive /etc/ssh/sshd_config ClientAliveInterval 600 ClientAliveCountMax 0 If ClientAliveInterval is not "600" and ClientAliveCountMax is not "0", this is a finding.
Fix: F-57558r846453_fix
Configure SSH to terminate remote sessions to prevent session hijacking by running the following command. $ sudo salt-call state.sls security/CVM/sshdCVM The SSH service will need to be restarted for the changes to take effect: $ sudo systemctl restart sshd
- RMF Control
- AC-17
- Severity
- M
- CCI
- CCI-000067
- Version
- NUTX-OS-000060
- Vuln IDs
-
- V-254123
- Rule IDs
-
- SV-254123r958406_rule
Checks: C-57608r846455_chk
Confirm Nutanix AOS monitors remote access methods. $ sudo grep -i loglevel /etc/ssh/sshd_config If the LogLevel is not set to "VERBOSE", this is a finding.
Fix: F-57559r846456_fix
Configure SSH to verbosely log connection attempts and failed logon attempts to the operating system by running the following command. $ sudo salt-call state.sls security/CVM/sshdCVM The SSH service will need to be restarted for the changes to take effect: $ sudo systemctl restart sshd
- RMF Control
- AC-17
- Severity
- M
- CCI
- CCI-002314
- Version
- NUTX-OS-000070
- Vuln IDs
-
- V-254124
- Rule IDs
-
- SV-254124r958672_rule
Checks: C-57609r846458_chk
Confirm Nutanix AOS prohibits or restricts the use of remote access methods, using the iptables firewall service. $ sudo service iptables status iptables.service - IPv4 firewall with iptables Loaded: loaded (/usr/lib/systemd/system/iptables.service; enabled; vendor preset: disabled) Active: active (exited) since Mon 2021-08-02 15:02:12 CDT; 2 weeks 6 days ago Main PID: 1250 (code=exited, status=0/SUCCESS) CGroup: /system.slice/iptables.service If IPv6 is in use: $ sudo service ip6tables status ip6tables.service - IPv6 firewall with ip6tables Loaded: loaded (/usr/lib/systemd/system/ip6tables.service; enabled; vendor preset: disabled) Active: active (exited) since Mon 2021-08-02 15:02:12 CDT; 2 weeks 6 days ago Main PID: 1313 (code=exited, status=0/SUCCESS) CGroup: /system.slice/ip6tables.service If no iptables services are "Loaded" and "Active", this is a finding.
Fix: F-57560r846459_fix
Configure the system to restrict the use of remote access methods by running the following command. $ sudo salt-call state.sls security/CVM/iptables/init
- RMF Control
- AC-17
- Severity
- H
- CCI
- CCI-000068
- Version
- NUTX-OS-000080
- Vuln IDs
-
- V-254125
- Rule IDs
-
- SV-254125r958408_rule
Checks: C-57610r846461_chk
Inspect the "Ciphers" configuration with the following command: $ sudo grep -i ciphers /etc/ssh/sshd_config Ciphers aes256-ctr If any ciphers other than "aes256-ctr" are listed, the "Ciphers" keyword is missing, or the returned line is commented out, this is a finding.
Fix: F-57561r846462_fix
Configure SSH to use only DoD approved ciphers by running the following command. $ sudo salt-call state.sls security/CVM/sshdCVM The SSH service will need to be restarted for the changes to take effect: $ sudo systemctl restart sshd
- RMF Control
- AC-2
- Severity
- L
- CCI
- CCI-000016
- Version
- NUTX-OS-000100
- Vuln IDs
-
- V-254126
- Rule IDs
-
- SV-254126r958364_rule
Checks: C-57611r846464_chk
Nutanix AOS does not natively support temporary user accounts, named or otherwise. However, if temporary accounts are created, they must be configured to automatically terminate these types of accounts after a DoD-defined time period of 72 hours. Verify that temporary accounts have been provisioned with an expiration date of 72 hours. For every existing temporary account, run the following command to obtain its account expiration information. $ sudo chage -l system_account_name Verify each of these accounts has an expiration date set within 72 hours. If any temporary accounts have no expiration date set or do not expire within 72 hours, this is a finding.
Fix: F-57562r846465_fix
Configure any temporary account(s) that have been created with an expiration date exceeding the DoD-defined time period of 72 hours by running the following command: sudo chage -E `date -d "+3 days" +%Y-%m-%d` system_account_name
- RMF Control
- AC-2
- Severity
- M
- CCI
- CCI-000018
- Version
- NUTX-OS-000110
- Vuln IDs
-
- V-254127
- Rule IDs
-
- SV-254127r958368_rule
Checks: C-57612r846467_chk
Verify Nutanix AOS is configured to audit all account creations. Run the following command to verify account creation and modification is audited. $ sudo auditctl -l | grep "audit_account_changes" If the command does not return the following output, this is a finding. -w /etc/group -p wa -k audit_account_changes -w /etc/passwd -p wa -k audit_account_changes -w /etc/gshadow -p wa -k audit_account_changes -w /etc/shadow -p wa -k audit_account_changes -w /etc/security/opasswd -p wa -k audit_account_changes
Fix: F-57563r846468_fix
Run the salt stack call to set the audit configuration to audit all account creation and modification. $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AC-3
- Severity
- L
- CCI
- CCI-000213
- Version
- NUTX-OS-000160
- Vuln IDs
-
- V-254128
- Rule IDs
-
- SV-254128r958472_rule
Checks: C-57613r846470_chk
Confirm Nutanix AOS is configured to enforce approved authorizations for logical access to information and system resources. $ sudo grep -i password /boot/grub/grub.conf password [superusers-account] [password-hash] If the root password entry does not begin with "password", this is a finding. $ sudo grep -i execstart /usr/lib/systemd/system/rescue.service | grep -i sulogin ExecStart=-/bin/sh -c "/usr/sbin/sulogin; /usr/bin/systemctl --fail --no-block default" If "ExecStart" does not have "/usr/sbin/sulogin" as an option, this is a finding.
Fix: F-57564r846471_fix
Configure the system to encrypt the boot password for root. 1. Use the following command as root to generate a grub sha512 password hash: python -c 'import crypt; print crypt.crypt("password", crypt.mksalt(crypt.METHOD_SHA512))' Replacing "password" with the password string desired for grub. 2. Edit the /boot/grub/grub.conf file as root and add the following line above the title line: 'password --encrypted [password-hash]', replacing [password-hash] with the hash result of the python command output.
- RMF Control
- AC-3
- Severity
- M
- CCI
- CCI-002165
- Version
- NUTX-OS-000170
- Vuln IDs
-
- V-254129
- Rule IDs
-
- SV-254129r958702_rule
Checks: C-57614r846473_chk
Confirm Nutanix AOS enforces discretionary access control on symlinks and hardlinks. $ sudo sysctl fs.protected_symlinks fs.protected_symlinks = 1 If "fs.protected_symlinks" is not set to "1" or is missing, this is a finding. Check the status of the fs.protected_hardlinks kernel parameter. $ sudo sysctl fs.protected_hardlinks fs.protected_hardlinks = 1 If "fs.protected_hardlinks" is not set to "1" or is missing, this is a finding.
Fix: F-57565r846474_fix
Configure Nutanix AOS to allow operating system admins to pass information to other operating system admins or users adding or modifying the following line(s) in the system configuration file /etc/syscrl.d/ fs.protected_symlinks = 1 fs.protected_hardlinks = 1 Load settings from all system configuration files with the following command: $ sudo sysctl --system
- RMF Control
- AC-6
- Severity
- M
- CCI
- CCI-002234
- Version
- NUTX-OS-000210
- Vuln IDs
-
- V-254130
- Rule IDs
-
- SV-254130r958732_rule
Checks: C-57615r846476_chk
Confirm Nutanix AOS is configured to audit the misuse of privileged commands. $ sudo grep -iw execve /etc/audit/audit.rules -a always,exit -F arch=b32 -S execve -C uid!=euid -F euid=0 -k setuid -a always,exit -F arch=b64 -S execve -C uid!=euid -F euid=0 -k setuid -a always,exit -F arch=b32 -S execve -C gid!=egid -F egid=0 -k setgid -a always,exit -F arch=b64 -S execve -C gid!=egid -F egid=0 -k setgid If both the "b32" and "b64" audit rules for "SUID" files are not defined, this is a finding. If both the "b32" and "b64" audit rules for "SGID" files are not defined, this is a finding.
Fix: F-57566r846477_fix
Configure Nutanix AOS to audit the misuse of privileged commands by running the following command. $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AC-7
- Severity
- M
- CCI
- CCI-000044
- Version
- NUTX-OS-000220
- Vuln IDs
-
- V-254131
- Rule IDs
-
- SV-254131r958388_rule
Checks: C-57616r846479_chk
Confirm that Nutanix AOS locks an account for a minimum of 15 minutes after three unsuccessful logon attempts within a period of 15 minutes with the following command: $ sudo grep pam_faillock.so /etc/pam.d/password-auth auth required pam_faillock.so preauth silent audit deny=3 even_deny_root unlock_time=900 root_unlock_time=900 fail_interval=900 auth [default=die] pam_faillock.so authfail audit deny=3 even_deny_root unlock_time=900 root_unlock_time=900 fail_interval=900 If the "deny" parameter is set to "0" or a value greater than "3" on both "auth" lines with the "pam_faillock.so" module, or is missing from these lines, this is a finding. If the "even_deny_root" parameter is not set on both "auth" lines with the "pam_faillock.so" module, or is missing from these lines, this is a finding. If the "fail_interval" parameter is set to "0" or is set to a value less than "900" on both "auth" lines with the "pam_faillock.so" module, or is missing from these lines, this is a finding. If the "unlock_time" parameter is not set to "0", "never", or is set to a value less than "900" on both "auth" lines with the "pam_faillock.so" module, or is missing from these lines, this is a finding. Note: The maximum configurable value for "unlock_time" is "604800". If any line referencing the "pam_faillock.so" module is commented out, this is a finding. $ sudo grep pam_faillock.so /etc/pam.d/system-auth auth required pam_faillock.so preauth silent audit deny=3 even_deny_root fail_interval=900 unlock_time=900 auth [default=die] pam_faillock.so authfail audit deny=3 even_deny_root fail_interval=900 unlock_time=900 account required pam_faillock.so If the "deny" parameter is set to "0" or a value greater than "3" on both "auth" lines with the "pam_faillock.so" module, or is missing from these lines, this is a finding. If the "even_deny_root" parameter is not set on both "auth" lines with the "pam_faillock.so" module, or is missing from these lines, this is a finding. If the "fail_interval" parameter is set to "0" or is set to a value less than "900" on both "auth" lines with the "pam_faillock.so" module, or is missing from these lines, this is a finding. If the "unlock_time" parameter is not set to "0", "never", or is set to a value less than "900" on both "auth" lines with the "pam_faillock.so" module or is missing from these lines, this is a finding. Note: The maximum configurable value for "unlock_time" is "604800". If any line referencing the "pam_faillock.so" module is commented out, this is a finding.
Fix: F-57567r846480_fix
Configure the pam.d modules to comply with the locking an account for a minimum of 15 minutes after three unsuccessful logon attempts within a period of 15 minutes with the following command: 1. Enable high-strength passwords: $ ncli cluster edit-cvm-security-params enable-high-strength-password=true 2. After enabling the high-strength passwords, the system will process the salt stack to enable the DoD versions of the pam.d files. Recheck the Check Text for compliance. To run the salt command manually to enable the pam.d auth files, run the following command (high-strength passwords must be set to true): $ sudo salt-call state.sls security/CVM/pamCVM
- RMF Control
- AC-8
- Severity
- L
- CCI
- CCI-000048
- Version
- NUTX-OS-000240
- Vuln IDs
-
- V-254132
- Rule IDs
-
- SV-254132r958390_rule
Checks: C-57617r846482_chk
Verify that the Standard Mandatory DoD Notice and Consent Banner is configured. Verify that SSH is configured to display the Standard Mandatory DoD Notice Consent Banner: $ sudo grep -i banner /etc/ssh/sshd_config banner /etc/issue If "banner" is not set or is commented out, this is a finding.
Fix: F-57568r846483_fix
Configure the Standard Mandatory DoD Notice and Consent Banner. $ ncli cluster edit-cvm-security-params enable-banner=true'
- RMF Control
- AC-8
- Severity
- M
- CCI
- CCI-001384
- Version
- NUTX-OS-000260
- Vuln IDs
-
- V-254133
- Rule IDs
-
- SV-254133r958586_rule
Checks: C-57618r846485_chk
Confirm Nutanix AOS is configured to use the Standard Mandatory DoD Notice and Consent Banner. $ sudo more /etc/issue The command should return the following text: "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." If the operating system does not display a graphical logon banner or the banner does not match the Standard Mandatory DoD Notice and Consent Banner, this is a finding. If the text in the "/etc/issue" file does not match the Standard Mandatory DoD Notice and Consent Banner, this is a finding.
Fix: F-57569r846486_fix
Configure the Standard Mandatory DoD Notice and Consent Banner by running the following command. $ ncli cluster edit-cvm-security-params enable-banner=true
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000169
- Version
- NUTX-OS-000270
- Vuln IDs
-
- V-254134
- Rule IDs
-
- SV-254134r958442_rule
Checks: C-57619r846488_chk
Confirm Nutanix AOS is configured to generate audit records on all successful and unsuccessful attempts to access, modify, or delete privileges, security objects, security levels, or categories of information (e.g., classification levels). $ sudo grep -w "postdrop" /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/postdrop -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w "postqueue" /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/postqueue -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w "semanage" /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/semanage -F perm=x -F auid>=1000 -F auid!=4294967295 -k secobjects $ sudo grep -w "setfiles" /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/setfiles -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged-priv_change $ sudo grep -w "userhelper" /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/userhelper -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged-passwd $ sudo grep -w "setsebool" /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/setsebool -F perm=x -F auid>=1000 -F auid!=4294967295 -k secobjects $ sudo grep -w "unix_chkpwd" /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/unix_chkpwd -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w faillock /etc/audit/audit.rules -w /var/run/faillock/ -p wa -k logins $ sudo grep -w lastlog /etc/audit/audit.rules -w /var/log/lastlog -p wa -k logins If the command(s) does not return the appropriate response line, as indicated above, or if the line(s) is commented out, this is a finding.
Fix: F-57570r846489_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000169
- Version
- NUTX-OS-000280
- Vuln IDs
-
- V-254135
- Rule IDs
-
- SV-254135r958442_rule
Checks: C-57620r846491_chk
Confirm Nutanix AOS auditing is configured to generate audit records for all access actions, such as successful and unsuccessful logon attempts, privileged activities or other system-level access, starting and ending time for user access to the system, concurrent logons from different workstations, successful and unsuccessful accesses to objects, all program initiations, and all direct access to the information system. $ sudo yum list installed audit Installed Packages audit.x86_64 $ sudo grep -w chcon /etc/audit/audit.rules -a always,exit -F path=/usr/bin/chcon -F perm=x -F auid>=1000 -F auid!=4294967295 -k secobjects $ sudo grep ssh-agent /etc/audit/audit.rules -a always,exit -F path=/usr/bin/ssh-agent -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w /usr/bin/mount /etc/audit/audit.rules -a always,exit -F path=/usr/bin/mount -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w /usr/bin/umount /etc/audit/audit.rules -a always,exit -F path=/usr/bin/umount -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep ssh-keysign /etc/audit/audit.rules -a always,exit -F path=/usr/libexec/openssh/ssh-keysign -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w pam_timestamp_check /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/pam_timestamp_check -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w crontab /etc/audit/audit.rules -a always,exit -F path=/usr/bin/crontab -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w chsh /etc/audit/audit.rules -a always,exit -F path=/usr/bin/chsh -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged If the command(s) does not return the appropriate response line, as indicated above, or if the line(s) is commented out, this is a finding.
Fix: F-57571r846492_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVMI18:J21N18I18:J22I18:J22N18I18:J22I18:J23N18I18:J22I18:J24N18I18:J22I18:J25N18II18:J22
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000169
- Version
- NUTX-OS-000290
- Vuln IDs
-
- V-254136
- Rule IDs
-
- SV-254136r958442_rule
Checks: C-57621r846494_chk
Confirm Nutanix AOS auditing is configured to generate audit records for all access actions, such as successful and unsuccessful logon attempts, privileged activities or other system-level access, starting and ending time for user access to the system, concurrent logons from different workstations, successful and unsuccessful accesses to objects, all program initiations, and all direct access to the information system. $ sudo grep -w lremovexattr /etc/audit/audit.rules -a always,exit -F arch=b64 -S lremovexattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S lremovexattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S lremovexattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S lremovexattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w removexattr /etc/audit/audit.rules -a always,exit -F arch=b64 -S removexattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S removexattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S removexattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S removexattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w lsetxattr /etc/audit/audit.rules -a always,exit -F arch=b64 -S lsetxattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S lsetxattr-F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S lsetxattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S lsetxattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w fsetxattr /etc/audit/audit.rules -a always,exit -F arch=b64 -S fsetxattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S fsetxattr-F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fsetxattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fsetxattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w fremovexattr /etc/audit/audit.rules -a always,exit -F arch=b64 -S fremovexattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S fremovexattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fremovexattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fremovexattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w setxattr /etc/audit/audit.rules -a always,exit -F arch=b64 -S setxattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S setxattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S setxattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S setxattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete If the command(s) does not return the appropriate response line, as indicated above, or if the line(s) is commented out, this is a finding.
Fix: F-57572r846495_fix
Configure the audit rules by running the following command. $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000169
- Version
- NUTX-OS-000300
- Vuln IDs
-
- V-254137
- Rule IDs
-
- SV-254137r958442_rule
Checks: C-57622r846497_chk
Confirm Nutanix AOS auditing is configured to generate audit records for all access actions, such as successful and unsuccessful logon attempts, privileged activities or other system-level access, starting and ending time for user access to the system, concurrent logons from different workstations, successful and unsuccessful accesses to objects, all program initiations, and all direct access to the information system. $ sudo grep -w "init_module" /etc/audit/audit.rules -a always,exit -F arch=b64 -S init_module -k audit_network_modifications_modules -a always,exit -F arch=b32 -S init_module -k audit_network_modifications_modules -a always,exit -F arch=b64 -S init_module -S delete_module -k modules -a always,exit -F arch=b32 -S init_module -S delete_module -k modules $ sudo grep -w "finit_module" /etc/audit/audit.rules -a always,exit -F arch=b32 -S finit_module -k module-change -a always,exit -F arch=b64 -S finit_module -k module-change $ sudo grep -w "delete_module" /etc/audit/audit.rules -a always,exit -F arch=b64 -S delete_module -k audit_network_modifications_modules -a always,exit -F arch=b32 -S delete_module -k audit_network_modifications_modules -a always,exit -F arch=b64 -S delete_module -k modules -a always,exit -F arch=b32 -S delete_module -k modules If the command(s) does not return the appropriate response line, as indicated above, or if the line(s) is commented out, this is a finding.
Fix: F-57573r846498_fix
Configure the audit rules by running the following command. $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000169
- Version
- NUTX-OS-000310
- Vuln IDs
-
- V-254138
- Rule IDs
-
- SV-254138r958442_rule
Checks: C-57623r846500_chk
Confirm Nutanix AOS auditing is configured to generate audit records for all access actions, such as successful and unsuccessful logon attempts, privileged activities or other system-level access, starting and ending time for user access to the system, concurrent logons from different workstations, successful and unsuccessful accesses to objects, all program initiations, and all direct access to the information system. $ sudo grep -w "\-S mount" /etc/audit/audit.rules -a always,exit -F arch=b64 -S mount -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S mount -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S mount -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S mount -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w "rename" /etc/audit/audit.rules -a always,exit -F arch=b64 -S rename -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S rename -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S rename -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S rename -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w "renameat" /etc/audit/audit.rules -a always,exit -F arch=b64 -S renameat -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S renameat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S renameat -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S renameat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w "rmdir" /etc/audit/audit.rules -a always,exit -F arch=b64 -S rmdir -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S rmdir -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S rmdir -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S rmdir -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w "unlink" /etc/audit/audit.rules -a always,exit -F arch=b64 -S unlink -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S unlink -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S unlink -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S unlink -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w "unlinkat" /etc/audit/audit.rules -a always,exit -F arch=b64 -S unlinkat -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S unlinkat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S unlinkat -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S unlinkat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w chown /etc/audit/audit.rules -a always,exit -F arch=b64 -S chown -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S chown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S chown -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S chown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w chmod /etc/audit/audit.rules -a always,exit -F arch=b64 -S chmod -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S chmod -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S chmod -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S chmod -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w lchown /etc/audit/audit.rules -a always,exit -F arch=b64 -S lchown -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S lchown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S lchown -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S lchown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w fchownat /etc/audit/audit.rules -a always,exit -F arch=b64 -S fchownat -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S fchownat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fchownat -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fchownat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w fchown /etc/audit/audit.rules -a always,exit -F arch=b64 -S fchown -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S fchown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fchown -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fchown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w fchmodat /etc/audit/audit.rules -a always,exit -F arch=b64 -S fchmodat -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S fchmodat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fchmodat -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fchmodat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w fchmod /etc/audit/audit.rules -a always,exit -F arch=b64 -S fchmod -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S fchmod -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fchmod -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fchmod -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete If the command(s) does not return the appropriate response line, as indicated above, or if the line(s) is commented out, this is a finding.
Fix: F-57574r846501_fix
Configure the audit rules by running the following command. $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000169
- Version
- NUTX-OS-000320
- Vuln IDs
-
- V-254139
- Rule IDs
-
- SV-254139r958442_rule
Checks: C-57624r846503_chk
Confirm Nutanix AOS auditing is configured to generate audit records for all access actions, such as successful and unsuccessful logon attempts, privileged activities or other system-level access, starting and ending time for user access to the system, concurrent logons from different workstations, successful and unsuccessful accesses to objects, all program initiations, and all direct access to the information system. $ sudo grep -iw truncate /etc/audit/audit.rules -a always,exit -F arch=b64 -S truncate -F exit=-EACCES -F auid=0 -k access -a always,exit -F arch=b64 -S truncate -F exit=-EPERM -F auid=0 -k access -a always,exit -F arch=b64 -S truncate -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b64 -S truncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b32 -S truncate -F exit=-EACCES -F auid=0 -k access -a always,exit -F arch=b32 -S truncate -F exit=-EPERM -F auid=0 -k access -a always,exit -F arch=b32 -S truncate -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b32 -S truncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access $ sudo grep -iw openat /etc/audit/audit.rules -a always,exit -F arch=b64 -S openat -F exit=-EACCES -F auid=0 -k access -a always,exit -F arch=b64 -S openat-F exit=-EPERM -F auid=0 -k access -a always,exit -F arch=b64 -S openat -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b64 -S openat -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b32 -S openat -F exit=-EACCES -F auid=0 -k access -a always,exit -F arch=b32 -S openat -F exit=-EPERM -F auid=0 -k access -a always,exit -F arch=b32 -S openat -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b32 -S openat -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access $ sudo grep -iw open /etc/audit/audit.rules -a always,exit -F arch=b64 -S open -F exit=-EACCES -F auid=0 -k access -a always,exit -F arch=b64 -S open-F exit=-EPERM -F auid=0 -k access -a always,exit -F arch=b64 -S open -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b64 -S open -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b32 -S open -F exit=-EACCES -F auid=0 -k access -a always,exit -F arch=b32 -S open -F exit=-EPERM -F auid=0 -k access -a always,exit -F arch=b32 -S open -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b32 -S open -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access $ sudo grep -iw open_by_handle_at /etc/audit/audit.rules -a always,exit -F arch=b64 -S open_by_handle_at -F exit=-EACCES -F auid=0 -k access -a always,exit -F arch=b64 -S open_by_handle_at-F exit=-EPERM -F auid=0 -k access -a always,exit -F arch=b64 -S open_by_handle_at -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b64 -S open_by_handle_at -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b32 -S open_by_handle_at -F exit=-EACCES -F auid=0 -k access -a always,exit -F arch=b32 -S open_by_handle_at -F exit=-EPERM -F auid=0 -k access -a always,exit -F arch=b32 -S open_by_handle_at -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b32 -S open_by_handle_at -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access $ sudo grep -iw ftruncate /etc/audit/audit.rules -a always,exit -F arch=b64 -S ftruncate -F exit=-EACCES -F auid=0 -k access -a always,exit -F arch=b64 -S ftruncate -F exit=-EPERM -F auid=0 -k access -a always,exit -F arch=b64 -S ftruncate -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b64 -S ftruncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b32 -S ftruncate -F exit=-EACCES -F auid=0 -k access -a always,exit -F arch=b32 -S ftruncate -F exit=-EPERM -F auid=0 -k access -a always,exit -F arch=b32 -S ftruncate -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b32 -S ftruncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access $ sudo grep -iw creat /etc/audit/audit.rules -a always,exit -F arch=b64 -S creat -F exit=-EACCES -F auid=0 -k access -a always,exit -F arch=b64 -S creat -F exit=-EPERM -F auid=0 -k access -a always,exit -F arch=b64 -S creat -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b64 -S creat -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b32 -S creat -F exit=-EACCES -F auid=0 -k access -a always,exit -F arch=b32 -S creat -F exit=-EPERM -F auid=0 -k access -a always,exit -F arch=b32 -S creat -F auid>=1000 -F auid!=4294967295 -k access -a always,exit -F arch=b32 -S creat -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access If the command(s) does not return the appropriate response line, as indicated above, or if the line(s) is commented out, this is a finding.
Fix: F-57575r846504_fix
Configure the audit rules by running the following command. $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000169
- Version
- NUTX-OS-000330
- Vuln IDs
-
- V-254140
- Rule IDs
-
- SV-254140r958442_rule
Checks: C-57625r846506_chk
Confirm Nutanix AOS auditing is configured to generate audit records for all account creations, modifications, disabling, and terminations. $ sudo grep /etc/shadow /etc/audit/audit.rules -w /etc/shadow -p wa -k audit_account_changes $ sudo grep /etc/security/opasswd /etc/audit/audit.rules -w /etc/security/opasswd -p wa -k audit_account_changes $ sudo grep /etc/passwd /etc/audit/audit.rules -w /etc/passwd -p wa -k audit_account_changes $ sudo grep /etc/gshadow /etc/audit/audit.rules -w /etc/gshadow -p wa -k audit_account_changes $ sudo grep /etc/group /etc/audit/audit.rules -w /etc/group -p wa -k audit_account_changes $ sudo grep /etc/sudoers /etc/audit/audit.rules -w /etc/sudoers -p wa -k actions $ sudo grep /etc/sudoers.d/ /etc/audit/audit.rules -w /etc/sudoers.d/ -p wa -k actions $ sudo grep -w /usr/bin/su /etc/audit/audit.rules -a always,exit -F path=/usr/bin/su -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w sudo /etc/audit/audit.rules -a always,exit -F path=/usr/bin/sudo -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w gpasswd /etc/audit/audit.rules -a always,exit -F path=/usr/bin/gpasswd -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w passwd /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/userhelper -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged-passwd $ sudo grep -w chage /etc/audit/audit.rules -a always,exit -F path=/usr/bin/chage -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w newgrp /etc/audit/audit.rules -a always,exit -F path=/usr/bin/newgrp -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged If the command(s) does not return the appropriate response line, as indicated above, or if the line(s) is commented out, this is a finding.
Fix: F-57576r846507_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000171
- Version
- NUTX-OS-000350
- Vuln IDs
-
- V-254141
- Rule IDs
-
- SV-254141r958444_rule
Checks: C-57626r846509_chk
Confirm Nutanix AOS must allow only the Information System Security Manager (ISSM) (or individuals or roles appointed by the ISSM) to select which auditable events are to be audited. Note: Nutanix AOS audit facility is locked down so that only root has access to browse below the /etc/audit/ directory. $ sudo su - # ls -al /etc/audit/rules.d/*.rules -rw-r----- 1 root root 1280 Feb 16 17:09 audit.rules $ sudo su - sudo stat -c "%a %n" /etc/audit/auditd.conf 640 /etc/audit/auditd.conf If the files in the "/etc/audit/rules.d/" directory or the "/etc/audit/auditd.conf" file have a mode more permissive than "0640", this is a finding.
Fix: F-57577r846510_fix
Configure the files in directory "/etc/audit/rules.d/" and the "/etc/audit/auditd.conf" file to have a mode of "0640" with the following commands: $ sudo su - # chmod 0640 /etc/audit/rules.d/audit.rules # chmod 0640 /etc/audit/rules.d/[customrulesfile].rules # chmod 0640 /etc/audit/auditd.conf
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000360
- Vuln IDs
-
- V-254142
- Rule IDs
-
- SV-254142r958446_rule
Checks: C-57627r846512_chk
Confirm Nutanix AOS generates audit records on all successful/unsuccessful attempts to access privileges occur. $ sudo grep -iw chown /etc/audit/audit.rules -a always,exit -F arch=b64 -S chown -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S chown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S chown -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S chown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding. $ sudo grep -iw fchown /etc/audit/audit.rules -a always,exit -F arch=b64 -S fchown -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b64 -S fchown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S fchown -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S fchown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. -a exit,never -F arch=b64 -S openat -S open -S fchown -F success=0 -F uid=1000 -F exit=-13. -a exit,never -F arch=b64 -S fchown -F success=0 -F uid=0 -F exit=-13. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding. $ sudo grep -iw lchown /etc/audit/audit.rules -a always,exit -F arch=b64 -S lchown -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b64 -S lchown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S lchown -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S lchown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding. $ sudo grep -iw fchownat /etc/audit/audit.rules -a always,exit -F arch=b64 -S fchownat -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b64 -S fchownat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S fchownat -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S fchownat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding.
Fix: F-57578r846513_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000370
- Vuln IDs
-
- V-254143
- Rule IDs
-
- SV-254143r958446_rule
Checks: C-57628r858400_chk
Confirm Nutanix AOS generates audit records on all successful/unsuccessful attempts to access privileges occur. $ sudo grep -iw creat /etc/audit/audit.rules -a always,exit -F arch=b64 -S creat -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S creat -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S creat -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S creat -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S creat -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S creat -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S creat -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S creat -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding.
Fix: F-57579r846516_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000380
- Vuln IDs
-
- V-254144
- Rule IDs
-
- SV-254144r958446_rule
Checks: C-57629r846518_chk
Confirm Nutanix AOS generates audit records on all successful/unsuccessful attempts to access privileges occur. $ sudo grep -iw open /etc/audit/audit.rules -a always,exit -F arch=b64 -S open -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S open -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S open -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S open -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S open -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S open -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S open -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S open -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding. $ sudo grep -iw openat /etc/audit/audit.rules -a always,exit -F arch=b64 -S openat -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S openat -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S openat -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S openat -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S openat -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S openat -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S openat -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S openat -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding. $ sudo grep -iw open_by_handle_at /etc/audit/audit.rules -a always,exit -F arch=b64 -S open_by_handle_at -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S open_by_handle_at -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S open_by_handle_at -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S open_by_handle_at -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S open_by_handle_at -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S open_by_handle_at -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S open_by_handle_at -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S open_by_handle_at -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding.
Fix: F-57580r846519_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000390
- Vuln IDs
-
- V-254145
- Rule IDs
-
- SV-254145r958446_rule
Checks: C-57630r846521_chk
Confirm Nutanix AOS generates audit records on all successful/unsuccessful attempts to access privileges occur. $ sudo grep -iw truncate /etc/audit/audit.rules -a always,exit -F arch=b64 -S truncate -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S truncate -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S truncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S truncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S truncate -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S truncate -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S truncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S truncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding. $ sudo grep -iw ftruncate /etc/audit/audit.rules -a always,exit -F arch=b64 -S ftruncate -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S ftruncate -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S ftruncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S ftruncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S ftruncate -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S ftruncate -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S ftruncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S ftruncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding.
Fix: F-57581r846522_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000400
- Vuln IDs
-
- V-254146
- Rule IDs
-
- SV-254146r991570_rule
Checks: C-57631r846524_chk
Confirm Nutanix AOS generates audit records on all successful/unsuccessful attempts to access categories of information occur. $ sudo grep -iw creat /etc/audit/audit.rules -a always,exit -F arch=b64 -S creat -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S creat -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S creat -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S creat -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S creat -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S creat -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S creat -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S creat -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. $ sudo grep -iw open /etc/audit/audit.rules -a always,exit -F arch=b64 -S open -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S open -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S open -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S open -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S open -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S open -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S open -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S open -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding. $ sudo grep -iw openat /etc/audit/audit.rules -a always,exit -F arch=b64 -S openat -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S openat -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S openat -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S openat -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S openat -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S openat -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S openat -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S openat -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding. $ sudo grep -iw open_by_handle_at /etc/audit/audit.rules -a always,exit -F arch=b64 -S open_by_handle_at -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S open_by_handle_at -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S open_by_handle_at -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S open_by_handle_at -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S open_by_handle_at -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S open_by_handle_at -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S open_by_handle_at -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S open_by_handle_at -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. $ sudo grep -iw truncate /etc/audit/audit.rules -a always,exit -F arch=b64 -S truncate -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S truncate -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S truncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S truncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S truncate -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S truncate -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S truncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S truncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding. $ sudo grep -iw ftruncate /etc/audit/audit.rules -a always,exit -F arch=b64 -S ftruncate -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S ftruncate -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S ftruncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S ftruncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S ftruncate -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S ftruncate -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S ftruncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S ftruncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding.
Fix: F-57582r846525_fix
Configure the audit rules by running the following command. $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000410
- Vuln IDs
-
- V-254147
- Rule IDs
-
- SV-254147r991570_rule
Checks: C-57632r846527_chk
Confirm Nutanix AOS generates audit records on all successful/unsuccessful attempts to access categories of information occur. $ sudo grep -iw chown /etc/audit/audit.rules -a always,exit -F arch=b64 -S chown -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S chown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S chown -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S chown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. $ sudo grep -iw fchown /etc/audit/audit.rules -a always,exit -F arch=b64 -S fchown -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b64 -S fchown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S fchown -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S fchown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. -a exit,never -F arch=b64 -S openat -S open -S fchown -F success=0 -F uid=1000 -F exit=-13. -a exit,never -F arch=b64 -S fchown -F success=0 -F uid=0 -F exit=-13. $ sudo grep -iw lchown /etc/audit/audit.rules -a always,exit -F arch=b64 -S lchown -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b64 -S lchown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S lchown -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S lchown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. $ sudo grep -iw fchownat /etc/audit/audit.rules -a always,exit -F arch=b64 -S fchownat -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b64 -S fchownat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S fchownat -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S fchownat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding.
Fix: F-57583r846528_fix
Configure the audit rules by running the following command. $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000420
- Vuln IDs
-
- V-254148
- Rule IDs
-
- SV-254148r991570_rule
Checks: C-57633r846530_chk
Confirm Nutanix AOS generates audit records on all successful/unsuccessful attempts to access categories of information occur. $ sudo grep -w chmod /etc/audit/audit.rules -a always,exit -F arch=b64 -S chmod -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S chmod -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S chmod -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S chmod -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w fchmod /etc/audit/audit.rules -a always,exit -F arch=b64 -S fchmod -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S fchmod -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fchmod -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fchmod -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w fchmodat /etc/audit/audit.rules -a always,exit -F arch=b64 -S fchmodat -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S fchmodat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fchmodat -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fchmodat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding.
Fix: F-57584r846531_fix
Configure the audit rules by running the following command. $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000430
- Vuln IDs
-
- V-254149
- Rule IDs
-
- SV-254149r991570_rule
Checks: C-57634r846533_chk
Confirm Nutanix AOS generates audit records on all successful/unsuccessful attempts to access categories of information occur. $ sudo grep -w setxattr /etc/audit/audit.rules -a always,exit -F arch=b64 -S setxattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S setxattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S setxattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S setxattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w fsetxattr /etc/audit/audit.rules -a always,exit -F arch=b64 -S fsetxattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S fsetxattr-F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fsetxattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fsetxattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w lsetxattr /etc/audit/audit.rules -a always,exit -F arch=b64 -S lsetxattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S lsetxattr-F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S lsetxattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S lsetxattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w removexattr /etc/audit/audit.rules -a always,exit -F arch=b64 -S removexattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S removexattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S removexattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S removexattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w fremovexattr /etc/audit/audit.rules -a always,exit -F arch=b64 -S fremovexattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S fremovexattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fremovexattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S fremovexattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -w lremovexattr /etc/audit/audit.rules -a always,exit -F arch=b64 -S lremovexattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S lremovexattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S lremovexattr -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S lremovexattr -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding.
Fix: F-57585r846534_fix
Configure the audit rules by running the following command. $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000440
- Vuln IDs
-
- V-254150
- Rule IDs
-
- SV-254150r991571_rule
Checks: C-57635r846536_chk
Confirm Nutanix AOS generates audit records on all successful/unsuccessful attempts to access categories of information occur. $ sudo grep -iw creat /etc/audit/audit.rules -a always,exit -F arch=b64 -S creat -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S creat -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S creat -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S creat -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S creat -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S creat -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S creat -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S creat -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. $ sudo grep -iw open /etc/audit/audit.rules -a always,exit -F arch=b64 -S open -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S open -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S open -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S open -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S open -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S open -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S open -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S open -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding. $ sudo grep -iw openat /etc/audit/audit.rules -a always,exit -F arch=b64 -S openat -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S openat -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S openat -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S openat -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S openat -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S openat -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S openat -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S openat -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding. $ sudo grep -iw open_by_handle_at /etc/audit/audit.rules -a always,exit -F arch=b64 -S open_by_handle_at -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S open_by_handle_at -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S open_by_handle_at -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S open_by_handle_at -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S open_by_handle_at -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S open_by_handle_at -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S open_by_handle_at -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S open_by_handle_at -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. $ sudo grep -iw truncate /etc/audit/audit.rules -a always,exit -F arch=b64 -S truncate -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S truncate -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S truncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S truncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S truncate -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S truncate -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S truncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S truncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding. $ sudo grep -iw ftruncate /etc/audit/audit.rules -a always,exit -F arch=b64 -S ftruncate -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b64 -S ftruncate -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b64 -S ftruncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b64 -S ftruncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S ftruncate -F exit=-EACCES -F auid=0 -k access. -a always,exit -F arch=b32 -S ftruncate -F exit=-EPERM -F auid=0 -k access. -a always,exit -F arch=b32 -S ftruncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access. -a always,exit -F arch=b32 -S ftruncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding.
Fix: F-57586r846537_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000450
- Vuln IDs
-
- V-254151
- Rule IDs
-
- SV-254151r991572_rule
Checks: C-57636r846539_chk
Confirm Nutanix AOS generates audit records when successful/unsuccessful attempts to modify privileged objects occur. $ sudo grep /etc/sudoers /etc/audit/audit.rules -w /etc/sudoers -p wa -k actions $ sudo grep /etc/sudoers.d/ /etc/audit/audit.rules -w /etc/sudoers.d/ -p wa -k actions $ sudo grep -w /usr/bin/su /etc/audit/audit.rules -a always,exit -F path=/usr/bin/su -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w sudo /etc/audit/audit.rules -a always,exit -F path=/usr/bin/sudo -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w newgrp /etc/audit/audit.rules -a always,exit -F path=/usr/bin/newgrp -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -i /usr/bin/chsh /etc/audit/audit.rules -a always,exit -F path=/usr/bin/chsh -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged If the privileged activities access listed do not return any output, this is a finding.
Fix: F-57587r846540_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000460
- Vuln IDs
-
- V-254152
- Rule IDs
-
- SV-254152r991573_rule
Checks: C-57637r846542_chk
Confirm Nutanix AOS generates audit records for successful/unsuccessful attempts to modify security objects occur. $ sudo grep -i /usr/sbin/semanage /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/semanage -F perm=x -F auid>=1000 -F auid!=4294967295 -k secobjects $ sudo grep -i /usr/sbin/setsebool /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/setsebool -F perm=x -F auid>=1000 -F auid!=4294967295 -k secobjects $ sudo grep -i /usr/bin/chcon /etc/audit/audit.rules -a always,exit -F path=/usr/bin/chcon -F perm=x -F auid>=1000 -F auid!=4294967295 -k secobjects $ sudo grep -iw /usr/sbin/setfiles /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/setfiles -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged-priv_change If the commands does not return any output, this is a finding.
Fix: F-57588r846543_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000470
- Vuln IDs
-
- V-254153
- Rule IDs
-
- SV-254153r991574_rule
Checks: C-57638r846545_chk
Confirm Nutanix AOS generates audit records for successful/unsuccessful attempts to modify categories of information. $ sudo grep -i /usr/sbin/semanage /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/semanage -F perm=x -F auid>=1000 -F auid!=4294967295 -k secobjects $ sudo grep -i /usr/sbin/setsebool /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/setsebool -F perm=x -F auid>=1000 -F auid!=4294967295 -k secobjects $ sudo grep -i /usr/bin/chcon /etc/audit/audit.rules -a always,exit -F path=/usr/bin/chcon -F perm=x -F auid>=1000 -F auid!=4294967295 -k secobjects $ sudo grep -iw /usr/sbin/setfiles /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/setfiles -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged-priv_change If the commands does not return any output, this is a finding.
Fix: F-57589r846546_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000480
- Vuln IDs
-
- V-254154
- Rule IDs
-
- SV-254154r991575_rule
Checks: C-57639r846548_chk
Confirm Nutanix AOS generates audit records when successful/unsuccessful attempts to delete security objects occur. $ sudo grep -iw rename /etc/audit/audit.rules -a exit,never -F arch=b64 -S rename -F success=1 -F uid=1000 -F exit=0 -a exit,never -F arch=b64 -S rename -F success=0 -F uid=1000 -F exit=-2 -a always,exit -F arch=b64 -S rename -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S rename -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S rename -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S rename -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -iw renameat /etc/audit/audit.rules -a always,exit -F arch=b64 -S renameat -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S renameat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S renameat -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S renameat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete $ sudo grep -iw rmdir /etc/audit/audit.rules -a always,exit -F arch=b64 -S rmdir -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S rmdir -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S rmdir -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S rmdir -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete grep -iw unlink /etc/audit/audit.rules -a exit,never -F arch=b64 -S unlink -F success=1 -F uid=1000 -F exit=0 -a exit,never -F arch=b64 -S unlink -F success=0 -F uid=1000 -F exit=-2 -a always,exit -F arch=b64 -S unlink -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S unlink -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S unlink -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S unlink -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete grep -iw unlinkat /etc/audit/audit.rules -a always,exit -F arch=b64 -S unlinkat -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S unlinkat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S unlinkat -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b32 -S unlinkat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete If both the "b32" and "b64" audit rules are not defined for the syscalls listed, this is a finding.
Fix: F-57590r846549_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000510
- Vuln IDs
-
- V-254155
- Rule IDs
-
- SV-254155r991578_rule
Checks: C-57640r846551_chk
Confirm Nutanix AOS generates audit records when concurrent logons to the same account occur. $ sudo grep -i /var/run/faillock /etc/audit/audit.rules -w /var/run/faillock -p wa -k logins $ sudo grep -i /var/log/lastlog /etc/audit/audit.rules -w /var/log/lastlog -p wa -k logins If the commands listed do not return any output, this is a finding.
Fix: F-57591r846552_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000520
- Vuln IDs
-
- V-254156
- Rule IDs
-
- SV-254156r991579_rule
Checks: C-57641r846554_chk
Confirm Nutanix AOS generates audit records for privileged activities or other system-level access. $ sudo grep /etc/shadow /etc/audit/audit.rules -w /etc/shadow -p wa -k audit_account_changes $ sudo grep /etc/security/opasswd /etc/audit/audit.rules -w /etc/security/opasswd -p wa -k audit_account_changes $ sudo grep /etc/passwd /etc/audit/audit.rules -w /etc/passwd -p wa -k audit_account_changes $ sudo grep /etc/gshadow /etc/audit/audit.rules -w /etc/gshadow -p wa -k audit_account_changes $ sudo grep /etc/group /etc/audit/audit.rules -w /etc/group -p wa -k audit_account_changes $ sudo grep /etc/sudoers /etc/audit/audit.rules -w /etc/sudoers -p wa -k actions $ sudo grep /etc/sudoers.d/ /etc/audit/audit.rules -w /etc/sudoers.d/ -p wa -k actions $ sudo grep -w /usr/bin/su /etc/audit/audit.rules -a always,exit -F path=/usr/bin/su -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w sudo /etc/audit/audit.rules -a always,exit -F path=/usr/bin/sudo -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w gpasswd /etc/audit/audit.rules -a always,exit -F path=/usr/bin/gpasswd -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w passwd /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/userhelper -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged-passwd If the privileged activities access listed do not return any output, this is a finding.
Fix: F-57592r846555_fix
Configure the audit rules by running the following command. $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000530
- Vuln IDs
-
- V-254157
- Rule IDs
-
- SV-254157r991579_rule
Checks: C-57642r846557_chk
Confirm Nutanix AOS generates audit records for privileged activities or other system-level access. $ sudo grep -w chage /etc/audit/audit.rules -a always,exit -F path=/usr/bin/chage -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w newgrp /etc/audit/audit.rules -a always,exit -F path=/usr/bin/newgrp -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -i /usr/bin/chsh /etc/audit/audit.rules -a always,exit -F path=/usr/bin/chsh -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w "userhelper" /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/userhelper -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged-passwd $ sudo grep -w "unix_chkpwd" /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/unix_chkpwd -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged $ sudo grep -w faillock /etc/audit/audit.rules -w /var/run/faillock/ -p wa -k logins $ sudo grep -w lastlog /etc/audit/audit.rules -w /var/log/lastlog -p wa -k logins $ sudo grep -iw "/usr/sbin/pam_timestamp_check" /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/pam_timestamp_check -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged If the privileged activities access listed do not return any output, this is a finding.
Fix: F-57593r846558_fix
Configure the audit rules by running the following command. $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000169
- Version
- NUTX-OS-000540
- Vuln IDs
-
- V-254158
- Rule IDs
-
- SV-254158r958442_rule
Checks: C-57643r846560_chk
Confirm Nutanix AOS generates audit records for all kernel module load, unload, restart actions, and initiations. $ sudo grep -iw create_module /etc/audit/audit.rules -a always,exit -F arch=b32 -S create_module -k module-change -a always,exit -F arch=b64 -S create_module -k module-change $ sudo grep -iw init_module /etc/audit/audit.rules -a always,exit -F arch=b64 -S init_module -S delete_module -k modules -a always,exit -F arch=b32 -S init_module -S delete_module -k modules $ sudo grep -iw finit_module /etc/audit/audit.rules -a always,exit -F arch=b32 -S finit_module -k module-change -a always,exit -F arch=b64 -S finit_module -k module-change $ sudo grep -iw delete_module /etc/audit/audit.rules -a always,exit -F arch=b64 -S init_module -S delete_module -k modules -a always,exit -F arch=b32 -S init_module -S delete_module -k modules If both the "b32" and "b64" audit rules are not defined for the module(s) listed syscall, this is a finding. $ sudo grep -iw kmod /etc/audit/audit.rules -w /usr/bin/kmod -p x -F auid!=unset -k module-change If the command does not return any output, this is a finding. $ sudo cat /boot/grub/grub.conf | grep audit kernel /boot/vmlinuz-3.10.0-1160.24.1.el7.nutanix.20210425.cvm.x86_64 ro root=UUID=71a1fe8c-812f-4403-80ed-894f554b061c rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 rhgb crashkernel=auto KEYBOARDTYPE=pc KEYTABLE=us audit=1 audit_backlog_limit=8192 nousb fips=1 nomodeset biosdevname=0 net.ifnames=0 scsi_mod.use_blk_mq=y panic=30 console=ttyS0,115200n8 console=tty0 clocksource=tsc kvm_nopvspin=1 xen_nopvspin=1 hv_netvsc.ring_size=512 mds=off mitigations=off If the command(s) does not return the appropriate response line, as indicated above, or if the line(s) is commented out, this is a finding.
Fix: F-57594r846561_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000560
- Vuln IDs
-
- V-254159
- Rule IDs
-
- SV-254159r991582_rule
Checks: C-57644r846563_chk
Confirm Nutanix AOS generates audit records when concurrent logons to the same account occur. $ sudo grep -i /var/run/faillock /etc/audit/audit.rules -w /var/run/faillock -p wa -k logins $ sudo grep -i /var/log/lastlog /etc/audit/audit.rules -w /var/log/lastlog -p wa -k logins If the commands listed do not return any output, this is a finding.
Fix: F-57595r846564_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000570
- Vuln IDs
-
- V-254160
- Rule IDs
-
- SV-254160r991583_rule
Checks: C-57645r846566_chk
Confirm Nutanix AOS generates audit records on all successful/unsuccessful attempts to access privileges occur. $ sudo grep -iw chown /etc/audit/audit.rules -a always,exit -F arch=b64 -S chown -F auid=0 -k audit_time_perm_mod_export_delete -a always,exit -F arch=b64 -S chown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S chown -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S chown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding. $ sudo grep -iw fchown /etc/audit/audit.rules -a always,exit -F arch=b64 -S fchown -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b64 -S fchown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S fchown -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S fchown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. -a exit,never -F arch=b64 -S openat -S open -S fchown -F success=0 -F uid=1000 -F exit=-13. -a exit,never -F arch=b64 -S fchown -F success=0 -F uid=0 -F exit=-13. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding. $ sudo grep -iw lchown /etc/audit/audit.rules -a always,exit -F arch=b64 -S lchown -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b64 -S lchown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S lchown -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S lchown -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding. $ sudo grep -iw fchownat /etc/audit/audit.rules -a always,exit -F arch=b64 -S fchownat -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b64 -S fchownat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S fchownat -F auid=0 -k audit_time_perm_mod_export_delete. -a always,exit -F arch=b32 -S fchownat -F auid>=1000 -F auid!=4294967295 -k audit_time_perm_mod_export_delete. If the output does not contain all of the above rules, this is a finding. If both the "b32" and "b64" audit rules are not defined for the listed syscall(s), this is a finding.
Fix: F-57596r846567_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000580
- Vuln IDs
-
- V-254161
- Rule IDs
-
- SV-254161r991581_rule
Checks: C-57646r846569_chk
Confirm Nutanix AOS is configured with the ausearch tool. The ausearch tool is a feature of the audit rpm. $ sudo yum list installed audit Installed Packages audit.x86_64 If Installed Packages does not list the audit.x86_64 or No matching Packages to list is returned, this is a finding.
Fix: F-57597r846570_fix
Configure the system to generate audit records for all direct access to the information system by installing the audit package. $ sudo yum install audit
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- NUTX-OS-000590
- Vuln IDs
-
- V-254162
- Rule IDs
-
- SV-254162r991585_rule
Checks: C-57647r846572_chk
Confirm Nutanix AOS generates audit records for all account creation, modification, disabling, and termination. $ sudo grep /etc/passwd /etc/audit/audit.rules -w /etc/passwd -p wa -k audit_account_changes If the command does not return a line, or the line is commented out, this is a finding.
Fix: F-57598r846573_fix
Configure Nutanix AOS to generate audit records for all account creations, modifications, disabling, and terminations by running the following command. $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-14
- Severity
- M
- CCI
- CCI-001464
- Version
- NUTX-OS-000610
- Vuln IDs
-
- V-254163
- Rule IDs
-
- SV-254163r991555_rule
Checks: C-57648r846575_chk
Determine if auditing is active by issuing the following command: $ sudo systemctl is-active auditd.service active If the "auditd" status is not active, this is a finding.
Fix: F-57599r846576_fix
Configure the audit service to be active and start automatically with the system at startup. The Audit service is protected and restricted to allow access or modifications only from the root account. $ sudo su - # systemctl start auditd.service
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000130
- Version
- NUTX-OS-000620
- Vuln IDs
-
- V-254164
- Rule IDs
-
- SV-254164r958412_rule
Checks: C-57649r846578_chk
Verify Nutanix AOS generates audit records when successful/unsuccessful attempts to use the following commands occur. Check that the following system call is being audited by performing the following command to check the file system rules in "/etc/audit/audit.rules": $ sudo auditctl -l | grep -iw /usr/bin/su /etc/audit/audit.rules If the output is not -a always,exit -F path=/usr/bin/su -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged, this is a finding. $ sudo auditctl -l | grep -iw /usr/bin/sudo /etc/audit/audit.rules If the output is not -a always,exit -F path=/usr/bin/sudo -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged, this is a finding. $ sudo grep -i "/etc/sudoers" /etc/audit/audit.rules If the output is not -w /etc/sudoers -p wa -k actions, this is a finding. $ sudo grep -i "/etc/sudoers.d/" /etc/audit/audit.rules If the output is not -w /etc/sudoers.d/ -p wa -k actions, this is a finding. $ sudo grep -i /usr/bin/newgrp /etc/audit/audit.rules If the output is not -a always,exit -F path=/usr/bin/newgrp -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged, this is a finding. $ sudo grep -i /usr/bin/chsh /etc/audit/audit.rules If the output is not -a always,exit -F path=/usr/bin/chsh -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged, this is a finding.
Fix: F-57600r846579_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000131
- Version
- NUTX-OS-000630
- Vuln IDs
-
- V-254165
- Rule IDs
-
- SV-254165r958414_rule
Checks: C-57650r846581_chk
Verify the operating system produces audit records containing information to establish when (date and time) the events occurred. Determine if auditing is active by issuing the following command: $ sudo systemctl is-active auditd.service active If the "auditd" status is not active, this is a finding.
Fix: F-57601r846582_fix
Enable the auditd service to run automatically. $ sudo systemctl enable auditd
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000132
- Version
- NUTX-OS-000640
- Vuln IDs
-
- V-254166
- Rule IDs
-
- SV-254166r958416_rule
Checks: C-57651r846584_chk
Verify the operating system produces audit records containing information to establish when (date and time) the events occurred. Determine if auditing is active by issuing the following command: $ sudo systemctl is-active auditd.service active If the "auditd" status is not active, this is a finding.
Fix: F-57602r846585_fix
Enable the auditd service to run automatically. $ sudo systemctl enable auditd
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000133
- Version
- NUTX-OS-000650
- Vuln IDs
-
- V-254167
- Rule IDs
-
- SV-254167r958418_rule
Checks: C-57652r846587_chk
Verify the operating system produces audit records containing information to establish when (date and time) the events occurred. Determine if auditing is active by issuing the following command: $ sudo systemctl is-active auditd.service active If the "auditd" status is not active, this is a finding.
Fix: F-57603r846588_fix
Enable the auditd service to run automatically. $ sudo systemctl enable auditd
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000134
- Version
- NUTX-OS-000660
- Vuln IDs
-
- V-254168
- Rule IDs
-
- SV-254168r958420_rule
Checks: C-57653r846590_chk
Verify the operating system produces audit records containing information to establish when (date and time) the events occurred. Determine if auditing is active by issuing the following command: $ sudo systemctl is-active auditd.service active If the "auditd" status is not active, this is a finding.
Fix: F-57604r846591_fix
Enable the auditd service to run automatically. $ sudo systemctl enable auditd
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-001487
- Version
- NUTX-OS-000670
- Vuln IDs
-
- V-254169
- Rule IDs
-
- SV-254169r991556_rule
Checks: C-57654r846593_chk
Confirm Nutanix AOS produces audit records containing information to establish when (date and time) the events occurred. Determine if auditing is active by issuing the following command: $ sudo systemctl is-active auditd.service active If the "auditd" status is not active, this is a finding.
Fix: F-57605r846594_fix
Configure the audit service to be active and start automatically with the system at startup. The Audit service is protected and restricted to allow access or modifications only from the root account. $ sudo su - # systemctl start auditd.service
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000135
- Version
- NUTX-OS-000680
- Vuln IDs
-
- V-254170
- Rule IDs
-
- SV-254170r958422_rule
Checks: C-57655r846596_chk
Verify Nutanix AOS generates audit records when successful/unsuccessful attempts to use the following commands occur. Check that the following system call is being audited by performing the following command to check the file system rules in "/etc/audit/audit.rules": $ sudo grep -i /usr/bin/passwd /etc/audit/audit.rules If the output is not -a always,exit -F path=/usr/bin/passwd -F auid>=1000 -F auid!=4294967295 -k privileged, this is a finding. $ sudo grep -iw /usr/sbin/unix_chkpwd /etc/audit/audit.rules If the output is not -a always,exit -F path=/usr/sbin/unix_chkpwd -F auid>=1000 -F auid!=4294967295 -k privileged, this is a finding. $ sudo grep -i /usr/bin/gpasswd /etc/audit/audit.rules If the output is not -a always,exit -F path=/usr/bin/gpasswd -F auid>=1000 -F auid!=4294967295 -k privileged, this is a finding.
Fix: F-57606r846597_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000135
- Version
- NUTX-OS-000690
- Vuln IDs
-
- V-254171
- Rule IDs
-
- SV-254171r958422_rule
Checks: C-57656r846599_chk
Verify Nutanix AOS generates audit records when successful/unsuccessful attempts to use the following commands occur. Check that the following system call is being audited by performing the following command to check the file system rules in "/etc/audit/audit.rules": $ sudo grep -i /usr/bin/chage /etc/audit/audit.rules If the output is not -a always,exit -F path=/usr/bin/chage -F auid>=1000 -F auid!=4294967295 -k privileged, this is a finding.
Fix: F-57607r846600_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000135
- Version
- NUTX-OS-000700
- Vuln IDs
-
- V-254172
- Rule IDs
-
- SV-254172r958422_rule
Checks: C-57657r846602_chk
Verify Nutanix AOS generates audit records when successful/unsuccessful attempts to use the following commands occur. Check that the following system call is being audited by performing the following command to check the file system rules in "/etc/audit/audit.rules": $ sudo grep -i /usr/sbin/userhelper /etc/audit/audit.rules If the output is not -a always,exit -F path=/usr/sbin/userhelper -F auid>=1000 -F auid!=4294967295 -k privileged-passwd, this is a finding.
Fix: F-57608r846603_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000135
- Version
- NUTX-OS-000710
- Vuln IDs
-
- V-254173
- Rule IDs
-
- SV-254173r958422_rule
Checks: C-57658r846605_chk
Verify Nutanix AOS generates audit records when successful/unsuccessful attempts to use the following commands occur. Check that the following system call is being audited by performing the following command to check the file system rules in "/etc/audit/audit.rules": $ sudo grep -iw "mount" /etc/audit/audit.rules If the output is not -a always,exit -F path=/usr/bin/mount -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged, this is a finding. $ sudo grep -iw "/usr/bin/umount" /etc/audit/audit.rules If the output is not -a always,exit -F path=/usr/bin/umount -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged, this is a finding.
Fix: F-57609r846606_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000135
- Version
- NUTX-OS-000720
- Vuln IDs
-
- V-254174
- Rule IDs
-
- SV-254174r958422_rule
Checks: C-57659r846608_chk
Verify Nutanix AOS generates audit records when successful/unsuccessful attempts to use the following commands occur. Check that the following system call is being audited by performing the following command to check the file system rules in "/etc/audit/audit.rules": $ sudo grep -iw /usr/sbin/postdrop /etc/audit/audit.rules If the output is not clear-a always,exit -F path=/usr/sbin/postdrop -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged, this is a finding. $ sudo grep -iw /usr/sbin/postqueue /etc/audit/audit.rules If the output in not, -a always,exit -F path=/usr/sbin/postqueue -F auid>=1000 -F auid!=4294967295 -k privileged, this is a finding.
Fix: F-57610r846609_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000135
- Version
- NUTX-OS-000730
- Vuln IDs
-
- V-254175
- Rule IDs
-
- SV-254175r958422_rule
Checks: C-57660r846611_chk
Verify Nutanix AOS generates audit records when successful/unsuccessful attempts to use the following commands occur. Check that the following system call is being audited by performing the following command to check the file system rules in "/etc/audit/audit.rules": $ sudo grep -iw /usr/libexec/openssh/ssh-keysign /etc/audit/audit.rules If the output is not -a always,exit -F path=/usr/libexec/openssh/ssh-keysign -F auid>=1000 -F auid!=4294967295 -k privileged, this is a finding.
Fix: F-57611r846612_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000135
- Version
- NUTX-OS-000740
- Vuln IDs
-
- V-254176
- Rule IDs
-
- SV-254176r958422_rule
Checks: C-57661r846614_chk
Verify Nutanix AOS generates audit records when successful/unsuccessful attempts to use the following commands occur. Check that the following system call is being audited by performing the following command to check the file system rules in "/etc/audit/audit.rules": $ sudo grep -iw /usr/bin/crontab /etc/audit/audit.rules If the output is not -a always,exit -F path=/usr/bin/crontab -F auid>=1000 -F auid!=4294967295 -k privileged, this is a finding.
Fix: F-57612r846615_fix
Configure the audit rules by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000135
- Version
- NUTX-OS-000750
- Vuln IDs
-
- V-254177
- Rule IDs
-
- SV-254177r958422_rule
Checks: C-57662r846617_chk
Verify Nutanix AOS produces audit records containing information to establish when (date and time) the events occurred. Determine if auditing is active by issuing the following command: $ sudo systemctl is-active auditd.service active If the "auditd" status is not active, this is a finding.
Fix: F-57613r846618_fix
Enable the auditd service to run automatically. $ sudo systemctl enable auditd
- RMF Control
- AU-4
- Severity
- M
- CCI
- CCI-001849
- Version
- NUTX-OS-000760
- Vuln IDs
-
- V-254178
- Rule IDs
-
- SV-254178r958752_rule
Checks: C-57663r846620_chk
Confirm Nutanix AOS preconfigures storage for one week's worth of audit records, when audit records are not immediately sent to a central audit record facility. $ sudo cat /boot/grub/grub.conf | grep audit_backlog_limit audit_backlog_limit=8192 If the "audit_backlog_limit" entry does not equal "8192", is missing, or the line is commented out, this is a finding.
Fix: F-57614r846621_fix
As root, modify the /boot/grub/grub.conf file to include the following line: audit_backlog_limit=8192
- RMF Control
- AU-4
- Severity
- M
- CCI
- CCI-001851
- Version
- NUTX-OS-000770
- Vuln IDs
-
- V-254179
- Rule IDs
-
- SV-254179r958754_rule
Checks: C-57664r846623_chk
Confirm Nutanix AOS is configured to offload the audit records to a site-specific syslog server. $ sudo grep @ /etc/rsyslog.d/rsyslog-nutanix.conf local0.*; @remote-log-host:514 If there are no lines in the "/etc/rsyslog.d/rsyslog-nutanix.conf" files that contain the "@" or "@@" symbol(s), and the lines with the correct symbol(s) to send output to another system do not cover all "rsyslog" output, ask the System Administrator to indicate how the audit logs are offloaded to a different system or media. If the lines are commented out or there is no evidence that the audit logs are being sent to another system, this is a finding.
Fix: F-57615r846624_fix
Configure AOS to offload audit records to site specific syslog server by running the following command. ncli rsyslog-config add-server name=[alias_of_central_host] ip-address=[IP_of_central_host] port=[port_of_central_host] network-protocol=tcp|udp|relp relp-enabled=yes|no; ncli rsyslog-config add-module module-name=syslog_module level=info server-name=[alias_of_central_host]
- RMF Control
- AU-5
- Severity
- M
- CCI
- CCI-000140
- Version
- NUTX-OS-000780
- Vuln IDs
-
- V-254180
- Rule IDs
-
- SV-254180r958426_rule
Checks: C-57665r846626_chk
Confirm the audit configuration regarding how auditing processing failures are handled in Nutanix AOS. $ sudo auditctl -s | grep -i "fail" If the output is not failure 1, this is a finding.
Fix: F-57616r846627_fix
Configure the audit alert setting by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-6
- Severity
- M
- CCI
- CCI-000154
- Version
- NUTX-OS-000790
- Vuln IDs
-
- V-254181
- Rule IDs
-
- SV-254181r958428_rule
Checks: C-57666r846629_chk
Confirm Nutanix AOS is configured with the ausearch tool. The ausearch tool is a feature of the audit rpm. $ sudo yum list installed audit Installed Packages audit.x86_64 If Installed Packages does not list the audit.x86_64 or No matching Packages to list is returned, this is a finding.
Fix: F-57617r846630_fix
Configure the system to provide on-demand (i.e., ad hoc ) audit report generation by installing the correct audit.x86_64 rpm. $ sudo yum install audit
- RMF Control
- AU-8
- Severity
- L
- CCI
- CCI-001891
- Version
- NUTX-OS-000890
- Vuln IDs
-
- V-254182
- Rule IDs
-
- SV-254182r982208_rule
Checks: C-57667r846632_chk
Confirm Nutanix AOS is running the NTP service. # sudo ps -ef | grep ntp ntp 7447 1 0 Aug17 ? 00:00:05 /usr/sbin/ntpd -u ntp:ntp -g If the NTP service is not running, this is a finding. Next Check the ntp.conf file for the "maxpoll" option setting. $ sudo grep maxpoll /etc/ntp.conf server #.#.#.# maxpoll 10 If the option is set to "17" or is not set, this is a finding.
Fix: F-57618r846633_fix
Log in to the Nutanix CVM. Run the following command to add a list of DoD Approved NTP servers: $ ncli cluster add-to-ntp-servers servers=IP_1,IP_2,IP_3
- RMF Control
- AU-9
- Severity
- M
- CCI
- CCI-000162
- Version
- NUTX-OS-000930
- Vuln IDs
-
- V-254183
- Rule IDs
-
- SV-254183r958434_rule
Checks: C-57668r846635_chk
Verify Nutanix AOS audit log permissions are "0600" or less permissive. $ sudo stat -c "%a %n" /home/log/audit/audit.log 600 /home/log/audit/audit.log If the audit.log file(s) are more permissive than "0600", this is a finding.
Fix: F-57619r846636_fix
Run the salt stack call to set the audit log file permissions to "600". $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- AU-9
- Severity
- M
- CCI
- CCI-001493
- Version
- NUTX-OS-000960
- Vuln IDs
-
- V-254184
- Rule IDs
-
- SV-254184r991557_rule
Checks: C-57669r846638_chk
Verify the audit tools are protected from unauthorized access, deletion, or modification by checking the permissive mode. Check the octal permission of each audit tool by running the following command: $ sudo stat -c "%a %n" /sbin/auditctl /sbin/aureport /sbin/ausearch /sbin/autrace /sbin/auditd /sbin/rsyslogd /sbin/augenrules 750 /sbin/auditctl 750 /sbin/aureport 750 /sbin/ausearch 750 /sbin/autrace 750 /sbin/auditd 755 /sbin/rsyslogd 755 /sbin/augenrules If any of the audit tools has a mode more permissive than "0755", this is a finding.
Fix: F-57620r846639_fix
Configure the audit tools to be protected from unauthorized access by setting the correct permissive mode using the following command: $ sudo chmod 0755 [audit_tool] Replace "[audit_tool]" with the audit tool that does not have the correct permissive mode.
- RMF Control
- AU-9
- Severity
- M
- CCI
- CCI-001494
- Version
- NUTX-OS-000970
- Vuln IDs
-
- V-254185
- Rule IDs
-
- SV-254185r991558_rule
Checks: C-57670r846641_chk
Verify the audit tools are owned by "root" to prevent any unauthorized access, deletion, or modification. Check the owner of each audit tool by running the following commands: $ sudo stat -c "%U %n" /sbin/auditctl /sbin/aureport /sbin/ausearch /sbin/autrace /sbin/auditd /sbin/rsyslogd /sbin/augenrules [sudo] password for admin: root /sbin/auditctl root /sbin/aureport root /sbin/ausearch root /sbin/autrace root /sbin/auditd root /sbin/rsyslogd root /sbin/augenrules If any of the audit tools are not owned by "root", this is a finding.
Fix: F-57621r846642_fix
Configure the audit tools to be owned by "root", by running the following command: $ sudo chown root [audit_tool] Replace "[audit_tool]" with each audit tool not owned by "root".
- RMF Control
- AU-9
- Severity
- M
- CCI
- CCI-001495
- Version
- NUTX-OS-000980
- Vuln IDs
-
- V-254186
- Rule IDs
-
- SV-254186r991559_rule
Checks: C-57671r846644_chk
Verify the audit tools are group-owned by "root" to prevent any unauthorized access, deletion, or modification. Check the owner of each audit tool by running the following commands: $ sudo stat -c "%G %n" /sbin/auditctl /sbin/aureport /sbin/ausearch /sbin/autrace /sbin/auditd /sbin/rsyslogd /sbin/augenrules [sudo] password for admin: root /sbin/auditctl root /sbin/aureport root /sbin/ausearch root /sbin/autrace root /sbin/auditd root /sbin/rsyslogd root /sbin/augenrules If any of the audit tools are not group-owned by "root", this is a finding.
Fix: F-57622r846645_fix
Configure the audit tools to be group-owned by "root", by running the following command: $ sudo chgrp root [audit_tool] Replace "[audit_tool]" with each audit tool not group-owned by "root".
- RMF Control
- AU-9
- Severity
- H
- CCI
- CCI-001496
- Version
- NUTX-OS-000990
- Vuln IDs
-
- V-254187
- Rule IDs
-
- SV-254187r991567_rule
Checks: C-57672r846647_chk
Verify that Advanced Intrusion Detection Environment (AIDE) is properly configured to use cryptographic mechanisms to protect the integrity of audit tools. If AIDE is not installed, ask the System Administrator how file integrity checks are performed on the system. Verify the location of the seven auditing tools that require cryptographic protection with the following command: (auditctl, auditd, ausearch, aureport, autrace, augenrules, rsyslogd) $ sudo ls -al /usr/sbin/ | egrep '(audit|au|rsys)' If the seven identified audit tools are not listed, this is a finding. Check the aide.conf file for the configured rule set. $ sudo grep -i "FIPSR =" /etc/aide.conf FIPSR = p+i+n+u+g+s+m+c+acl+selinux+xattrs+sha512 If the FIPSR rule set is commented out or does not display, this is a finding. Check to ensure that the root directory of the seven audit tools is configured to be monitored and that the proper rule set is applied to that directory (/usr/). $ sudo grep -i /usr /etc/aide.conf /usr FIPSR if the /usr directory is not listed or has a preceding '=' or '!' sign or the Rule Set is not set to FIPSR, this is a finding.
Fix: F-57623r846648_fix
Configure AIDE on Nutanix AOS by running the following command: $ ncli cluster edit-cvm-security-params enable-aide=true
- RMF Control
- CM-3
- Severity
- M
- CCI
- CCI-001744
- Version
- NUTX-OS-001000
- Vuln IDs
-
- V-254188
- Rule IDs
-
- SV-254188r958794_rule
Checks: C-57673r846650_chk
Confirm that Nutanix AOS has been set to have the Advanced Intrusion Detection Environment (AIDE) installed and enabled. $ sudo yum list installed aide Installed Packages aide.x86_64 If the aide_x86_64 package is not installed, this is a finding. Check for the presence of a cron job running daily or weekly on the system that executes AIDE daily to scan for changes to the system baseline. Check the cron directories for a script file controlling the execution of the file integrity application. For example, if AIDE is installed on the system, use the following command: $ sudo ls -al /etc/cron.* | grep aide If the file integrity application does not exist, or a script file controlling the execution of the file integrity application does not exist, this is a finding.
Fix: F-57624r846651_fix
Configure AIDE on Nutanix AOS by running the following command: $ ncli cluster edit-cvm-security-params enable-aide=true
- RMF Control
- CM-5
- Severity
- M
- CCI
- CCI-001813
- Version
- NUTX-OS-001010
- Vuln IDs
-
- V-254189
- Rule IDs
-
- SV-254189r958796_rule
Checks: C-57674r846653_chk
Confirm Nutanix AOS enforces access restrictions. Check that the SSH daemon does not permit GSSAPI authentication with the following command: $ sudo grep -i gssapiauth /etc/ssh/sshd_config GSSAPIAuthentication no If the "GSSAPIAuthentication" keyword is missing, is set to "yes" and is not documented with the Information System Security Officer (ISSO), or the returned line is commented out, this is a finding.
Fix: F-57625r846654_fix
Configure Nutanix AOS to enforce access restrictions by running the following command: $ sudo salt-call state.sls security/CVM/sshdCVM
- RMF Control
- CM-5
- Severity
- M
- CCI
- CCI-001813
- Version
- NUTX-OS-001020
- Vuln IDs
-
- V-254190
- Rule IDs
-
- SV-254190r958796_rule
Checks: C-57675r846656_chk
Confirm Nutanix AOS enforces access restrictions. Check that the SSH daemon does not permit Kerberos to authenticate passwords with the following command: $ sudo grep -i kerberosauth /etc/ssh/sshd_config KerberosAuthentication no If the "KerberosAuthentication" keyword is missing, or is set to "yes" and is not documented with the Information System Security Officer (ISSO), or the returned line is commented out, this is a finding.
Fix: F-57626r846657_fix
Configure Nutanix AOS to enforce access restrictions by running the following command. $ sudo salt-call state.sls security/CVM/sshdCVM
- RMF Control
- CM-5
- Severity
- M
- CCI
- CCI-001749
- Version
- NUTX-OS-001040
- Vuln IDs
-
- V-254191
- Rule IDs
-
- SV-254191r982212_rule
Checks: C-57676r846659_chk
Confirm that Nutanix AOS is configured to require gpgcheck and localpkg_gpgcheck for all installation packages provided by the vendor. $ sudo grep gpgcheck /etc/yum.conf gpgcheck=1 $ sudo grep localpkg_gpgcheck /etc/yum.conf localpkg_gpgcheck=1 $ sudo grep repo_gpgcheck /etc/yum.conf repo_gpgcheck=1 If any of the three gpg checks output is not set to "1", this is a finding.
Fix: F-57627r846660_fix
Configure Nutanix AOS to require gpgcheck validation checks on all required yum repo configurations by running the following command: $ sudo salt-call state.sls security/CVM/yumCVM
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- NUTX-OS-001050
- Vuln IDs
-
- V-254192
- Rule IDs
-
- SV-254192r991587_rule
Checks: C-57677r846662_chk
Confirm Nutanix AOS prevents the use of dictionary words for passwords. Check the /etc/pam.d/password-auth file for pam_pwquality.so $ sudo grep pwquality.so /etc/pam.d/password-auth password requisite pam_pwquality.so try_first_pass local_users_only enforce_for_root retry=3 authtok_type= If the output does not contain "pam_pwquality.so" with the option of "required" or "requisite", this is a finding.
Fix: F-57628r846663_fix
Configure Nutanix AOS to enforce the use of pam_pwquality.so by running the following command. $ sudo salt-call state.sls security/CVM/pamCVM
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- NUTX-OS-001060
- Vuln IDs
-
- V-254193
- Rule IDs
-
- SV-254193r991588_rule
Checks: C-57678r846665_chk
Confirm Nutanix AOS enforces a delay of at least four seconds between console logon prompts following a failed logon attempt. $ sudo grep -i fail_delay /etc/login.defs FAIL_DELAY 4 If the value of "FAIL_DELAY" is not set to "4" or greater, or the line is commented out, this is a finding.
Fix: F-57629r846666_fix
Configure Nutanix AOS to enforce a delay between logon prompts following a failed logon attempt by running the following command: $ sudo salt-call state.sls security/CVM/pamCVM
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- NUTX-OS-001070
- Vuln IDs
-
- V-254194
- Rule IDs
-
- SV-254194r991589_rule
Checks: C-57679r846668_chk
Verify that the SCMA framework is set to run daily: $ ncli cluster get-cvm-security-config | egrep 'Schedule' Schedule : DAILY If "Schedule" is not set to "DAILY", this is a finding.
Fix: F-57630r846669_fix
Set the SCMA framework to check the baseline daily: $ sudo ncli cluster edit-cvm-security-params schedule=daily
- RMF Control
- CM-6
- Severity
- L
- CCI
- CCI-000366
- Version
- NUTX-OS-001080
- Vuln IDs
-
- V-254195
- Rule IDs
-
- SV-254195r991590_rule
Checks: C-57680r846671_chk
Confirm Nutanix AOS defines default permissions for all authenticated users in such a way that the user can only read and modify their own files. $ sudo grep -i umask /etc/login.defs UMASK 077 If the value for the "UMASK" parameter is not "077", or the "UMASK" parameter is missing or is commented out, this is a finding.
Fix: F-57631r846672_fix
Configure Nutanix AOS default permissions UMASK to 077 by running the following command. salt-call state.sls security/CVM/shellCVM
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- NUTX-OS-001090
- Vuln IDs
-
- V-254196
- Rule IDs
-
- SV-254196r991591_rule
Checks: C-57681r846674_chk
Confirm Nutanix AOS does not allow users to override environment variables to the SSH daemon. Check for the value of the "PermitUserEnvironment" keyword with the following command: $ sudo grep -i permituserenvironment /etc/ssh/sshd_config PermitUserEnvironment no If the "PermitUserEnvironment" keyword is not set to "no", is missing, or is commented out, this is a finding. $ sudo grep -i hostbasedauthentication /etc/ssh/sshd_config HostbasedAuthentication no If the "HostbasedAuthentication" keyword is not set to "no", is missing, or is commented out, this is a finding.
Fix: F-57632r846675_fix
Configure Nutanix AOS to not allow users to override environment variables to the SSH daemon by running the following command. $ sudo salt-call state.sls security/CVM/sshdCVM
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- NUTX-OS-001100
- Vuln IDs
-
- V-254197
- Rule IDs
-
- SV-254197r991592_rule
Checks: C-57682r846677_chk
Confirm Nutanix AOS has assigned home directory of all local interactive users has a mode of "0750" or less permissive. Step 1. Determine interactive users $ sudo cat $(awk -F: '($3>=1000)&&($7 !~ /nologin/){print $6}' /etc/passwd) cat: /home/nutanix: Is a directory cat: /home/admin: Is a directory Step 2. Determine permissions on interactive users home directories. $ sudo stat -c "%a %n" /home/admin 750 /home/admin $ sudo stat -c "%a %n" /home/nutanix 750 /home/nutanix If home directories referenced in "/etc/passwd" do not have a mode of "0750" or less permissive, this is a finding.
Fix: F-57633r846678_fix
Configure any interactive users home directory to have a mode of "0750" or less by running the command: $ sudo chmod 0750 [path to interactive users home directory]
- RMF Control
- CM-6
- Severity
- M
- CCI
- CCI-000366
- Version
- NUTX-OS-001110
- Vuln IDs
-
- V-254198
- Rule IDs
-
- SV-254198r991593_rule
Checks: C-57683r846680_chk
Confirm Nutanix AOS prohibits or restricts the use of remote access methods, using the iptables firewall service. $ sudo service iptables status iptables.service - IPv4 firewall with iptables Loaded: loaded (/usr/lib/systemd/system/iptables.service; enabled; vendor preset: disabled) Active: active (exited) since Mon 2021-08-02 15:02:12 CDT; 2 weeks 6 days ago Main PID: 1250 (code=exited, status=0/SUCCESS) CGroup: /system.slice/iptables.service If IPv6 is in use: $ sudo service ip6tables status ip6tables.service - IPv6 firewall with ip6tables Loaded: loaded (/usr/lib/systemd/system/ip6tables.service; enabled; vendor preset: disabled) Active: active (exited) since Mon 2021-08-02 15:02:12 CDT; 2 weeks 6 days ago Main PID: 1313 (code=exited, status=0/SUCCESS) CGroup: /system.slice/ip6tables.service If no iptables services are "Loaded" and "Active", this is a finding.
Fix: F-57634r846681_fix
Configure the system to restrict the use of remote access methods by running the following command. $ sudo salt-call state.sls security/CVM/iptables/init
- RMF Control
- CM-7
- Severity
- M
- CCI
- CCI-001764
- Version
- NUTX-OS-001120
- Vuln IDs
-
- V-254199
- Rule IDs
-
- SV-254199r958804_rule
Checks: C-57684r846683_chk
Confirm Nutanix AOS that "nodev","nosuid", and "noexec" options are configured for /dev/shm: $ cat /etc/fstab | grep /dev/shm tmpfs /dev/shm tmpfs defaults,size=512m,noexec,rw,seclabel,nosuid,nodev 0 0 If /dev/shm is mounted without secure options "nodev", "nosuid", and "noexec", this is a finding.
Fix: F-57635r846684_fix
Configure Nutanix AOS so that /dev/shm is mounted with the "nodev", "nosuid", and "noexec" options by adding /modifying the /etc/fstab with the following line: tmpfs /dev/shm tmpfs defaults,nodev,nosuid,noexec 0 0
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000197
- Version
- NUTX-OS-001130
- Vuln IDs
-
- V-254200
- Rule IDs
-
- SV-254200r958478_rule
Checks: C-57685r846686_chk
Confirm Nutanix AOS is configured to disable nonessential capabilities. $ sudo yum list installed rsh-server If the rsh-server package is installed, this is a finding.
Fix: F-57636r846687_fix
Remove any finding identified by running the correlating command: $ sudo yum remove rsh-server
- RMF Control
- CM-7
- Severity
- M
- CCI
- CCI-000381
- Version
- NUTX-OS-001140
- Vuln IDs
-
- V-254201
- Rule IDs
-
- SV-254201r958478_rule
Checks: C-57686r846689_chk
Confirm Nutanix AOS is configured to disable nonessential capabilities. $ sudo yum list installed ypserv If the "ypserv" package is installed, this is a finding.
Fix: F-57637r846690_fix
Remove any finding identified by running the correlating command: $ sudo yum remove ypserv
- RMF Control
- CM-7
- Severity
- M
- CCI
- CCI-000381
- Version
- NUTX-OS-001150
- Vuln IDs
-
- V-254202
- Rule IDs
-
- SV-254202r958478_rule
Checks: C-57687r846692_chk
Confirm Nutanix AOS is configured to disable nonessential capabilities. $ sudo yum list installed telnet-server If the telnet-server package is installed, this is a finding.
Fix: F-57638r846693_fix
Remove any finding identified by running the correlating command: $ sudo yum remove telnet-server
- RMF Control
- CM-7
- Severity
- M
- CCI
- CCI-000382
- Version
- NUTX-OS-001160
- Vuln IDs
-
- V-254203
- Rule IDs
-
- SV-254203r958480_rule
Checks: C-57688r846695_chk
Confirm Nutanix AOS prohibits or restricts the use of functions, ports, protocols, and/or services, as defined in the PPSM CAL and vulnerability assessments. $ sudo iptables -S If IPv6 is in use: $ sudo ip6tables -S Review the site or program PPSM CAL; verify the services allowed by the firewall match the PPSM CLSA. If there are additional ports, protocols, or services that are not in the PPSM CLSA, or there are ports, protocols, or services that are prohibited by the PPSM Category Assurance List (CAL), this is a finding.
Fix: F-57639r846696_fix
Configure the system to restrict the use of functions, ports, protocols, and/or services as defined in the PPSM CAL and vulnerability assessments by running the following command: $ sudo salt-call state.sls security/CVM/iptables/init
- RMF Control
- IA-11
- Severity
- M
- CCI
- CCI-002038
- Version
- NUTX-OS-001170
- Vuln IDs
-
- V-254204
- Rule IDs
-
- SV-254204r987879_rule
Checks: C-57689r846698_chk
Confirm Nutanix AOS is configured as shown for reauthentication in the sudoers file. $ grep -i nopasswd /etc/sudoers /etc/sudoers.d/* If any occurrences of "NOPASSWD" are returned from the command and have not been documented with the Information System Security Officer (ISSO) as an organizationally defined administrative group utilizing MFA, this is a finding.
Fix: F-57640r846699_fix
If any occurrences of "NOPASSWD" found are not documented with the ISSO need to be removed. Configure Nutanix AOS to meet this requirement run the following command: salt-call state.sls security/CVM/manualCVM
- RMF Control
- IA-2
- Severity
- M
- CCI
- CCI-001941
- Version
- NUTX-OS-001190
- Vuln IDs
-
- V-254205
- Rule IDs
-
- SV-254205r958494_rule
Checks: C-57690r846701_chk
Confirm Nutanix AOS has SSH loaded and active. $ sudo systemctl status sshd sshd.service - OpenSSH server daemon Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled) Active: active (running) since Tue 2015-11-17 15:17:22 EST; 4 weeks 0 days ago Main PID: 1348 (sshd) CGroup: /system.slice/sshd.service 1053 /usr/sbin/sshd -D If "sshd" does not show a status of "active" and "running", this is a finding. If the "SSH server" package is not installed, this is a finding.
Fix: F-57641r846702_fix
Configure SSH on Nutanix AOS by running the following command: $ sudo salt-call state.sls security/CVM/sshdCVM
- RMF Control
- IA-3
- Severity
- M
- CCI
- CCI-000778
- Version
- NUTX-OS-001210
- Vuln IDs
-
- V-254206
- Rule IDs
-
- SV-254206r958498_rule
Checks: C-57691r846704_chk
Confirm Nutanix AOS is configured to disable USB mass storage devices. $ sudo grep -r usb-storage /etc/modprobe.d/* | grep -i "/bin/true" | grep -v "^#" install usb-storage /bin/true If the command does not return any output, or the line is commented out, and use of USB Storage is not documented with the Information System Security Officer (ISSO) as an operational requirement, this is a finding. Verify the operating system disables the ability to use USB mass storage devices. Determine if USB mass storage is disabled with the following command: $ sudo grep usb-storage /etc/modprobe.d/* | grep -i "blacklist" | grep -v "^#" blacklist usb-storage If the command does not return any output or the output is not "blacklist usb-storage", and use of USB storage devices is not documented with the Information System Security Officer (ISSO) as an operational requirement, this is a finding.
Fix: F-57642r846705_fix
Configure the system to disable USB mass storage and blacklist from executing by running the following command: $ sudo salt-call state.sls security/CVM/modprobeCVM
- RMF Control
- IA-4
- Severity
- L
- CCI
- CCI-000795
- Version
- NUTX-OS-001220
- Vuln IDs
-
- V-254207
- Rule IDs
-
- SV-254207r982189_rule
Checks: C-57692r846707_chk
Confirm Nutanix AOS is configured to disable user accounts after the password expires. $ sudo grep -i inactive /etc/default/useradd INACTIVE=0 If the value is not set to "0", is commented out, or is not defined, this is a finding.
Fix: F-57643r846708_fix
Configure the system to disable inactive user accounts after the password expires by running the following command. $ sudo salt-call state.sls security/CVM/pamCVM
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000192
- Version
- NUTX-OS-001230
- Vuln IDs
-
- V-254208
- Rule IDs
-
- SV-254208r982195_rule
Checks: C-57693r846710_chk
Confirm Nutanix AOS is configured to require complex passwords. Note: The value to require a number of uppercase characters to be set is expressed as a negative number in "/etc/security/pwquality.conf". Check the value for "ucredit" in "/etc/security/pwquality.conf" with the following command. $ sudo grep ucredit /etc/security/pwquality.conf ucredit = -1 If the value of "ucredit" is not set to a negative value, this is a finding.
Fix: F-57644r846711_fix
Configure the complex password requirements by running the following command: $ sudo salt-call state.sls security/CVM/pamCVM
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000193
- Version
- NUTX-OS-001240
- Vuln IDs
-
- V-254209
- Rule IDs
-
- SV-254209r982196_rule
Checks: C-57694r846713_chk
Confirm Nutanix AOS is configured to require complex passwords. Note: The value to require a number of lowercase characters to be set is expressed as a negative number in "/etc/security/pwquality.conf". Check the value for "lcredit" in "/etc/security/pwquality.conf" with the following command: $ sudo grep lcredit /etc/security/pwquality.conf lcredit = -1 If the value of "lcredit" is not set to a negative value, this is a finding.
Fix: F-57645r846714_fix
Configure the complex password requirements by running the following command: $ sudo salt-call state.sls security/CVM/pamCVM
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000194
- Version
- NUTX-OS-001250
- Vuln IDs
-
- V-254210
- Rule IDs
-
- SV-254210r982197_rule
Checks: C-57695r846716_chk
Confirm Nutanix AOS is configured to require complex passwords. Note: The value to require a number of numeric characters to be set is expressed as a negative number in "/etc/security/pwquality.conf". Check the value for "dcredit" in "/etc/security/pwquality.conf" with the following command: $ sudo grep dcredit /etc/security/pwquality.conf dcredit = -1 If the value of "dcredit" is not set to a negative value, this is a finding.
Fix: F-57646r846717_fix
Configure the complex password requirements by running the following command: $ sudo salt-call state.sls security/CVM/pamCVM
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000205
- Version
- NUTX-OS-001260
- Vuln IDs
-
- V-254211
- Rule IDs
-
- SV-254211r982202_rule
Checks: C-57696r846719_chk
Confirm Nutanix AOS is configured to enforce a minimum 15 character password length. $ sudo grep minlen /etc/security/pwquality.conf minlen = 15 If the command does not return a "minlen" value of "15" or greater, this is a finding.
Fix: F-57647r846720_fix
Configure the password minimum length requirement of 15 characters by running the following command: $ ncli cluster edit-cvm-security-params enable-high-strength-password=true
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-001619
- Version
- NUTX-OS-001270
- Vuln IDs
-
- V-254212
- Rule IDs
-
- SV-254212r991561_rule
Checks: C-57697r846722_chk
Confirm Nutanix AOS enforces password complexity by requiring that at least one special character be used. Note: The value to require a number of special characters to be set is expressed as a negative number in "/etc/security/pwquality.conf". Check the value for "ocredit" in "/etc/security/pwquality.conf" with the following command: $ sudo grep ocredit /etc/security/pwquality.conf ocredit=-1 If the value of "ocredit" is not set to a negative value, this is a finding.
Fix: F-57648r846723_fix
Configure the operating system to enforce password complexity by requiring that at least one special character be used by setting the "ocredit" option. Log in to a Nutanix CVM and run the following command: $ ncli cluster edit-cvm-security-params enable-high-strength-password=true
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000195
- Version
- NUTX-OS-001280
- Vuln IDs
-
- V-254213
- Rule IDs
-
- SV-254213r982198_rule
Checks: C-57698r846725_chk
Verify Nutanix AOS is configured to require complex passwords. $ sudo grep difok /etc/security/pwquality.conf difok = 8 If the value of "difok" is set to less than "8", this is a finding.
Fix: F-57649r846726_fix
Configure the complex password requirements by running the following command: $ ncli cluster edit-cvm-security-params enable-high-strength-password=true
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000195
- Version
- NUTX-OS-001290
- Vuln IDs
-
- V-254214
- Rule IDs
-
- SV-254214r982198_rule
Checks: C-57699r846728_chk
Verify Nutanix AOS is configured to require complex passwords. $ sudo grep minclass /etc/security/pwquality.conf minclass = 4 If the value of "minclass" is set to less than "4", this is a finding.
Fix: F-57650r846729_fix
Configure the complex password requirements by running the following command: $ ncli cluster edit-cvm-security-params enable-high-strength-password=true
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000195
- Version
- NUTX-OS-001300
- Vuln IDs
-
- V-254215
- Rule IDs
-
- SV-254215r982198_rule
Checks: C-57700r846731_chk
Verify Nutanix AOS is configured to require complex passwords. $ sudo grep maxrepeat /etc/security/pwquality.conf maxrepeat = 2 If the value of "maxrepeat" is set to more than "2", this is a finding.
Fix: F-57651r846732_fix
Configure the complex password requirements by running the following command: $ ncli cluster edit-cvm-security-params enable-high-strength-password=true
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000195
- Version
- NUTX-OS-001310
- Vuln IDs
-
- V-254216
- Rule IDs
-
- SV-254216r982198_rule
Checks: C-57701r846734_chk
Verify Nutanix AOS is configured to require complex passwords. $ sudo grep maxclassrepeat /etc/security/pwquality.conf maxclassrepeat = 4 If the value of "maxclassrepeat" is set to more than "4", this is a finding.
Fix: F-57652r846735_fix
Configure the complex password requirements by running the following command: $ ncli cluster edit-cvm-security-params enable-high-strength-password=true
- RMF Control
- IA-5
- Severity
- H
- CCI
- CCI-000196
- Version
- NUTX-OS-001320
- Vuln IDs
-
- V-254217
- Rule IDs
-
- SV-254217r982199_rule
Checks: C-57702r846737_chk
Confirm Nutanix AOS is configured to store encrypted representation of passwords and that the encryption meets required standards. $ sudo grep -i encrypt /etc/login.defs ENCRYPT_METHOD SHA512 If the /etc/login.defs file does not contain the required output, this is a finding. $ sudo grep -i sha512 /etc/libuser.conf crypt_style = sha512 If the /etc/libuser.conf file does not contain the required output, this is a finding.
Fix: F-57653r846738_fix
Configure the required password encryption requirements by running the following command. $ sudo salt-call state.sls security/CVM/pamCVM
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000198
- Version
- NUTX-OS-001340
- Vuln IDs
-
- V-254218
- Rule IDs
-
- SV-254218r982188_rule
Checks: C-57703r846740_chk
Confirm Nutanix AOS is configured to enforce 24 hour/1 day minimum password lifetime. $ sudo grep -i pass_min_days /etc/login.defs PASS_MIN_DAYS 1 If the "PASS_MIN_DAYS" parameter value is not "1" or greater, or is commented out, this is a finding. $ sudo awk -F: '$4 < 1 {print $1 " " $4}' /etc/shadow If any results are returned that are not associated with a system account, this is a finding.
Fix: F-57654r846741_fix
Configure the password minimum age by running the following command: $ sudo salt-call state.sls security/CVM/pamCVM
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000199
- Version
- NUTX-OS-001350
- Vuln IDs
-
- V-254219
- Rule IDs
-
- SV-254219r982200_rule
Checks: C-57704r846743_chk
Confirm Nutanix AOS is configured to enforce a 60-day maximum password lifetime. $ sudo grep -i pass_max_days /etc/login.defs PASS_MAX_DAYS 60 If the "PASS_MAX_DAYS" parameter value is not "60" or less, or is commented out, this is a finding. $ sudo awk -F: '$5 > 60 {print $1 " " $5}' /etc/shadow If any results are returned that are not associated with a system account, this is a finding.
Fix: F-57655r846744_fix
Configure the password maximum age by running the following command: $ sudo salt-call state.sls security/CVM/pamCVM
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000200
- Version
- NUTX-OS-001360
- Vuln IDs
-
- V-254220
- Rule IDs
-
- SV-254220r982201_rule
Checks: C-57705r846746_chk
Confirm Nutanix AOS is configured to prohibit password reuse for a minimum of five generations. $ sudo grep -i remember /etc/pam.d/system-auth /etc/pam.d/password-auth password requisite pam_pwhistory.so use_authtok remember=5 retry=3 If the line containing the "pam_pwhistory.so" line does not have the "remember" module argument set, is commented out, or the value of the "remember" module argument is set to less than "5", this is a finding.
Fix: F-57656r846747_fix
Configure the password maximum age by running the following command: $ sudo salt-call state.sls security/CVM/pamCVM
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-002007
- Version
- NUTX-OS-001370
- Vuln IDs
-
- V-254221
- Rule IDs
-
- SV-254221r958828_rule
Checks: C-57706r846749_chk
Confirm Nutanix AOS is not configured to allow cached credentials via the System Security Session Daemon (SSSD). $ service sssd status If the sssd service is installed or active, this is a finding.
Fix: F-57657r846750_fix
If the SSSD service is installed, the Controller VM must be reinstalled.
- RMF Control
- IA-7
- Severity
- H
- CCI
- CCI-000803
- Version
- NUTX-OS-001380
- Vuln IDs
-
- V-254222
- Rule IDs
-
- SV-254222r971535_rule
Checks: C-57707r846752_chk
Verify that the pam_unix.so module is configured to use SHA512. $ sudo grep password /etc/pam.d/password-auth | grep pam_unix password sufficient pam_unix.so sha512 shadow try_first_pass use_authtok $ sudo grep password /etc/pam.d/system-auth | grep pam_unix password sufficient pam_unix.so sha512 shadow try_first_pass use_authtok If "sha512" is not an option in both outputs, or is commented out, this is a finding.
Fix: F-57658r846753_fix
Configure the pam.d modules to comply with FIPS 140-2: 1. Enable high-strength passwords: $ ncli cluster edit-cvm-security-params enable-high-strength-password=true 2. After enabling the high-strength passwords, the system will process the salt stack to enable the DoD versions of the pam.d files. Recheck the Check Text for compliance. To run the salt command manually to enable the pam.d auth files, run the following command (high-strength passwords must be set to true): $ sudo salt-call state.sls security/CVM/pamCVM
- RMF Control
- MA-4
- Severity
- M
- CCI
- CCI-002884
- Version
- NUTX-OS-001390
- Vuln IDs
-
- V-254223
- Rule IDs
-
- SV-254223r958846_rule
Checks: C-57708r846755_chk
Confirm Nutanix AOS audits all required activities performed during nonlocal maintenance and diagnostic sessions. $ sudo grep -i /usr/sbin/semanage /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/semanage -F perm=x -F auid>=1000 -F auid!=4294967295 -k secobjects $ sudo grep -i /usr/sbin/setsebool /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/setsebool -F perm=x -F auid>=1000 -F auid!=4294967295 -k secobjects $ sudo grep -i /usr/bin/chcon /etc/audit/audit.rules -a always,exit -F path=/usr/bin/chcon -F perm=x -F auid>=1000 -F auid!=4294967295 -k secobjects $ sudo grep -iw /usr/sbin/setfiles /etc/audit/audit.rules -a always,exit -F path=/usr/sbin/setfiles -F perm=x -F auid>=1000 -F auid!=4294967295 -k privileged-priv_change $ sudo grep -i /var/run/faillock /etc/audit/audit.rules -w /var/run/faillock/ -p wa -k logins $ sudo grep -i /var/log/lastlog /etc/audit/audit.rules -w /var/log/lastlog -p wa -k logins If any of the commands listed do not return any output, this is a finding.
Fix: F-57659r846756_fix
Configure Nutanix AOS to audit all required activities performed during nonlocal maintenance and diagnostic sessions by running the following command. salt-call state.sls security/CVM/auditCVM
- RMF Control
- SC-13
- Severity
- H
- CCI
- CCI-002450
- Version
- NUTX-OS-001460
- Vuln IDs
-
- V-254224
- Rule IDs
-
- SV-254224r959006_rule
Checks: C-57709r846758_chk
Confirm Nutanix AOS implements DoD-approved encryption to protect the confidentiality of remote access sessions. Determine if the "dracut-fips" package is installed with the following command: $ sudo yum list installed dracut-fips dracut-fips.x86_64-033-572.el7 If dracut-fips package is not installed, this is a finding. Determine if FIPS mode is enabled with the following command: $ fipscheck usage: fipscheck [-s <hmac-suffix>] <paths-to-files> fips mode is on If FIPS mode is "on", Determine if the kernel boot parameter is configured for FIPS mode with the following command: $ sudo cat /boot/grub/grub.conf | grep fips It the kernel output does not list "fips=1", this is a finding. If the kernel boot parameter is configured to use FIPS mode, Determine if the system is in FIPS mode with the following command: $ sudo cat /proc/sys/crypto/fips_enabled 1 If FIPS mode is not "on", the kernel boot parameter is not configured for FIPS mode, or the system does not have a value of "1" for "fips_enabled" in "/proc/sys/crypto", this is a finding.
Fix: F-57660r846759_fix
Configure the system to run in FIPS mode by running the following command: $ sudo salt-call state.sls security/CVM/fipsCVM
- RMF Control
- SC-3
- Severity
- M
- CCI
- CCI-001084
- Version
- NUTX-OS-001480
- Vuln IDs
-
- V-254225
- Rule IDs
-
- SV-254225r958518_rule
Checks: C-57710r846761_chk
Nutanix AOS is configured by default to run SELinux Policies. Confirm Nutanix AOS has the policycoreutils package installed with the following command: $ sudo yum list installed policycoreutils Installed Packages policycoreutils.x86_64 2.5-34.el7 @base If the policycoreutils package is not installed, this is a finding.
Fix: F-57661r846762_fix
Configure the operating system to have the policycoreutils package installed with the following command: $ sudo yum install policycoreutils
- RMF Control
- SC-4
- Severity
- M
- CCI
- CCI-001090
- Version
- NUTX-OS-001490
- Vuln IDs
-
- V-254226
- Rule IDs
-
- SV-254226r958524_rule
Checks: C-57711r846764_chk
Confirm Nutanix AOS provides that all public directories are owned by root or a system account with the following command: $ sudo find / -type d -perm -0002 -exec ls -lLd {} \; drwxrwxrwt. 2 root root 40 Jun 4 15:21 /dev/mqueue drwxrwxrwt. 2 root root 40 Jun 4 15:21 /dev/shm drwxrwxrwt. 7 root root 4096 Jul 28 15:37 /tmp If any of the returned directories are not owned by root or a system account, this is a finding. Determine that all world-writable directories have the sticky bit set by running the following command: $ sudo find / -type d \( -perm -0002 -a ! -perm -1000 \) -print 2>/dev/null drwxrwxrwxt 7 root root 4096 Jul 26 11:19 /tmp If any of the returned directories are world-writable and do not have the sticky bit set, this is a finding.
Fix: F-57662r846765_fix
Configure all public directories to be owned by root or a system account to prevent unauthorized and unintended information transferred via shared system resources. Set the owner of all public directories as root or a system account using the command, replace "[Public Directory]" with any directory path not owned by root or a system account: $ sudo chown root [Public Directory] Set the sticky bit on all world-writable directories using the command, replace "[World-Writable Directory]" with any directory path missing the sticky bit: $ sudo chmod 1777 [World-Writable Directory]
- RMF Control
- SC-5
- Severity
- M
- CCI
- CCI-002385
- Version
- NUTX-OS-001500
- Vuln IDs
-
- V-254227
- Rule IDs
-
- SV-254227r958902_rule
Checks: C-57712r846767_chk
Confirm Nutanix AOS protects against or limits the effects of DoS attacks by ensuring that a rate-limiting measures are enabled. $ /sbin/sysctl -a | grep 'net.ipv4.tcp_invalid_ratelimit' net.ipv4.tcp_invalid_ratelimit = 500 If "net.ipv4.tcp_invalid_ratelimit" has a value of "0", this is a finding. If "net.ipv4.tcp_invalid_ratelimit" has a value greater than "1000" and is not documented with the Information System Security Officer (ISSO), this is a finding.
Fix: F-57663r846768_fix
Configure Nutanix AOS firewall services by running the following command: $ sudo salt-call state.sls security/CVM/iptables/init
- RMF Control
- SC-5
- Severity
- M
- CCI
- CCI-001095
- Version
- NUTX-OS-001510
- Vuln IDs
-
- V-254228
- Rule IDs
-
- SV-254228r958528_rule
Checks: C-57713r846770_chk
Confirm Nutanix AOS is configured to use syncookies. $ sysctl net.ipv4.tcp_syncookies net.ipv4.tcp_syncookies = 1 If the value is not "1", this is a finding. Check the saved value of TCP syncookies with the following command: $ sudo grep -i net.ipv4.tcp_syncookies /etc/sysctl.conf /etc/sysctl.d/* | grep -v '#' If no output is returned, this is a finding.
Fix: F-57664r846771_fix
Configure Nutanix AOS to use TCP syncookies by running the following command: $ sudo sysctl -w net.ipv4.tcp_syncookies=1 If "1" is not the system's default value, add or update the following line in "/etc/sysctl.conf": net.ipv4.tcp_syncookies = 1
- RMF Control
- SC-8
- Severity
- M
- CCI
- CCI-002418
- Version
- NUTX-OS-001520
- Vuln IDs
-
- V-254229
- Rule IDs
-
- SV-254229r958908_rule
Checks: C-57714r846773_chk
Confirm Nutanix AOS has SSH loaded and active. $ sudo systemctl status sshd sshd.service - OpenSSH server daemon Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled) Active: active (running) since Tue 2015-11-17 15:17:22 EST; 4 weeks 0 days ago Main PID: 1348 (sshd) CGroup: /system.slice/sshd.service 1053 /usr/sbin/sshd -D If "sshd" does not show a status of "active" and "running", this is a finding. If the "SSH server" package is not installed, this is a finding.
Fix: F-57665r846774_fix
Configure SSH on Nutanix AOS by running the following command: $ sudo salt-call state.sls security/CVM/sshdCVM
- RMF Control
- SC-8
- Severity
- M
- CCI
- CCI-002420
- Version
- NUTX-OS-001540
- Vuln IDs
-
- V-254230
- Rule IDs
-
- SV-254230r958912_rule
Checks: C-57715r846776_chk
Confirm Nutanix AOS has SSH loaded and active. $ sudo systemctl status sshd sshd.service - OpenSSH server daemon Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled) Active: active (running) since Tue 2015-11-17 15:17:22 EST; 4 weeks 0 days ago Main PID: 1348 (sshd) CGroup: /system.slice/sshd.service 1053 /usr/sbin/sshd -D If "sshd" does not show a status of "active" and "running", this is a finding. If the "SSH server" package is not installed, this is a finding.
Fix: F-57666r846777_fix
Configure SSH on Nutanix AOS by running the following command: $ sudo salt-call state.sls security/CVM/sshdCVM
- RMF Control
- SC-8
- Severity
- M
- CCI
- CCI-002422
- Version
- NUTX-OS-001550
- Vuln IDs
-
- V-254231
- Rule IDs
-
- SV-254231r958914_rule
Checks: C-57716r846779_chk
Confirm Nutanix AOS has SSH loaded and active. $ sudo systemctl status sshd sshd.service - OpenSSH server daemon Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled) Active: active (running) since Tue 2015-11-17 15:17:22 EST; 4 weeks 0 days ago Main PID: 1348 (sshd) CGroup: /system.slice/sshd.service 1053 /usr/sbin/sshd -D If "sshd" does not show a status of "active" and "running", this is a finding. If the "SSH server" package is not installed, this is a finding.
Fix: F-57667r846780_fix
Configure SSH on Nutanix AOS by running the following command: $ sudo salt-call state.sls security/CVM/sshdCVM
- RMF Control
- SI-11
- Severity
- M
- CCI
- CCI-001312
- Version
- NUTX-OS-001560
- Vuln IDs
-
- V-254232
- Rule IDs
-
- SV-254232r958564_rule
Checks: C-57717r846782_chk
Verify Nutanix AOS has all system log files under the /home/log directory with a permission set to "640", by using the following command: $ sudo find /home/log -perm /137 -type f -exec stat -c "%n %a" {} \; If command displays any output, this is a finding.
Fix: F-57668r846783_fix
Configure the Nutanix AOS to set permissions of all log files under /home/log directory to "640" or more restricted, by using the following command: $ sudo find /var/log -perm /137 -type f -exec chmod 640 '{}' \;
- RMF Control
- SI-11
- Severity
- M
- CCI
- CCI-001314
- Version
- NUTX-OS-001570
- Vuln IDs
-
- V-254233
- Rule IDs
-
- SV-254233r958566_rule
Checks: C-57718r846785_chk
Nutanix AOS audit logs must be owned by root to prevent unauthorized read access. Determine where the audit log file is located: $sudo grep -iw log_file /etc/audit/auditd.conf log_file = /home/log/audit/audit.log Using the location of the audit log file, determine if the audit log is owned by "root" using the following command: ls -al /home/log/audit/audit.log -rw-------. 1 root root 3427758 Apr 8 18:43 /home/log/audit/audit.log If the audit log is not owned by "root", this is a finding.
Fix: F-57669r846786_fix
Configure the audit rules ownership by running the following command: $ sudo salt-call state.sls security/CVM/auditCVM
- RMF Control
- SI-16
- Severity
- M
- CCI
- CCI-002824
- Version
- NUTX-OS-001580
- Vuln IDs
-
- V-254234
- Rule IDs
-
- SV-254234r958928_rule
Checks: C-57719r846788_chk
Nutanix AOS is configured to implement nonexecutable data to protect its memory from unauthorized code execution. $ sudo grep flags /proc/cpuinfo | grep -w nx flags. : fpu vme de …. nx pdpe1gb rdtscp... If "flags" does not contain the "nx" flag, this is a finding.
Fix: F-57670r846789_fix
If Nutanix AOS does not list 'nx' flag in the /proc/cpuinfo and the system's BIOS setup configuration permits toggling the No Execution bit, then set it to "enable".
- RMF Control
- SI-16
- Severity
- M
- CCI
- CCI-002824
- Version
- NUTX-OS-001590
- Vuln IDs
-
- V-254235
- Rule IDs
-
- SV-254235r958928_rule
Checks: C-57720r846791_chk
Confirm Nutanix AOS is configured to implement address space layout randomization. $ sudo sysctl kernel.randomize_va_space kernel.randomize_va_space = 2 If the value of kernel.randomize_va_space is anything other than "2", this is a finding.
Fix: F-57671r846792_fix
Configure Nutanix AOS to implement address space layout randomization by running the following command: $ sudo sysctl kernel.randomize_va_space=2
- RMF Control
- SI-2
- Severity
- M
- CCI
- CCI-002617
- Version
- NUTX-OS-001600
- Vuln IDs
-
- V-254236
- Rule IDs
-
- SV-254236r958936_rule
Checks: C-57721r846794_chk
Confirm Nutanix AOS removes all software components after updated versions have been installed. $ sudo grep -i clean_requirements_on_remove /etc/yum.conf clean_requirements_on_remove=1 If "clean_requirements_on_remove" is not set to "1", "True", or "yes", or is not set in "/etc/yum.conf", this is a finding.
Fix: F-57672r846795_fix
Configure Yum settings to remove all software components after an updated version is installed by running the following command: $ sudo salt-call state.sls security/CVM/yumCVM
- RMF Control
- SC-3
- Severity
- M
- CCI
- CCI-001084
- Version
- NUTX-OS-001610
- Vuln IDs
-
- V-254237
- Rule IDs
-
- SV-254237r958944_rule
Checks: C-57722r846797_chk
Confirm Nutanix AOS verifies correct operation of all security functions. $ sudo sestatus SELinux status: enabled SELinuxfs mount: /sys/fs/selinux SELinux root directory: /etc/selinux Loaded policy name: targeted Current mode: enforcing Mode from config file: enforcing Policy MLS status: enabled Policy deny_unknown status: allowed Max kernel policy version: 31 If the "Loaded policy name" is not set to "targeted", this is a finding. Verify that the /etc/selinux/config file is configured to the "SELINUXTYPE" to "targeted": $ sudo grep -i "selinuxtype" /etc/selinux/config | grep -v '^#' SELINUXTYPE = targeted If no results are returned or "SELINUXTYPE" is not set to "targeted", this is a finding.
Fix: F-57673r846798_fix
Configure Nutanix AOS to verify correct operation of all security functions. Set the "SELinux" status and the "Enforcing" mode by modifying the "/etc/selinux/config" file to have the following line: SELINUX=enforcing A reboot is required for the changes to take effect.
- RMF Control
- SI-2
- Severity
- H
- CCI
- CCI-002605
- Version
- NUTX-OS-001620
- Vuln IDs
-
- V-264424
- Rule IDs
-
- SV-264424r992069_rule
Checks: C-68338r992067_chk
Product version is end of life and no longer supported. If the system is running AOS version 5.20.x, this is a finding.
Fix: F-68246r992068_fix
Upgrade to a supported version.