Red Hat Enterprise Linux 5 Security Technical Implementation Guide

  • Version/Release: V1R18
  • Published: 2017-03-01
  • Expand All:
  • Severity:
  • Sort:
Compare

Select any two versions of this STIG to compare the individual requirements

View

Select any old version/release of this STIG to view the previous requirements

The Red Hat Enterprise Linux 5 Security Technical Implementation Guide (STIG) is published as a tool to improve the security of Department of Defense (DoD) information systems. Comments or proposed revisions to this document should be sent via e-mail to the following address: disa.stig_spt@mail.mil.
b
The system must require authentication upon booting into single-user and maintenance modes.
AC-3 - Medium - CCI-000213 - V-756 - SV-37350r2_rule
RMF Control
AC-3
Severity
Medium
CCI
CCI-000213
Version
GEN000020
Vuln IDs
  • V-756
Rule IDs
  • SV-37350r2_rule
If the system does not require valid root authentication before it boots into single-user or maintenance mode, anyone who invokes single-user or maintenance mode is granted privileged access to all files on the system.System Administrator
Checks: C-36041r1_chk

Check if the system requires a password for entering single-user mode. # grep ':S:' /etc/inittab If /sbin/sulogin is not listed, this is a finding.

Fix: F-31285r2_fix

Edit /etc/inittab and set sulogin to run in single-user mode. Example line in /etc/inittab: ~:S:wait:/sbin/sulogin Note: The first field in the /etc/inittab line may be any sequence of 1-4 characters.

b
Direct logins must not be permitted to shared, default, application, or utility accounts.
IA-2 - Medium - CCI-000770 - V-760 - SV-37419r2_rule
RMF Control
IA-2
Severity
Medium
CCI
CCI-000770
Version
GEN000280
Vuln IDs
  • V-760
Rule IDs
  • SV-37419r2_rule
Shared accounts (accounts where two or more people log in with the same user identification) do not provide identification and authentication. There is no way to provide for non-repudiation or individual accountability.trueSystem AdministratorInformation Assurance Officer
Checks: C-36102r2_chk

Use the last command to check for multiple accesses to an account from different workstations/IP addresses. # last -w If users log directly onto accounts, rather than using the switch user (su) command from their own named account to access them, this is a finding (such as logging directly on to oracle). Verify with the SA or the IAO on documentation for users/administrators to log into their own accounts first and then switch user (su) to the account to be shared has been maintained including requirements and procedures. If no such documentation exists, this is a finding.

Fix: F-31348r2_fix

Use the switch user (su) command from a named account login to access shared accounts. Document requirements and procedures for users/administrators to log into their own accounts first and then switch user (su) to the account to be shared.

b
All accounts on the system must have unique user or account names.
IA-2 - Medium - CCI-000764 - V-761 - SV-27063r1_rule
RMF Control
IA-2
Severity
Medium
CCI
CCI-000764
Version
GEN000300
Vuln IDs
  • V-761
Rule IDs
  • SV-27063r1_rule
A unique user name is the first part of the identification and authentication process. If user names are not unique, there can be no accountability on the system for auditing purposes. Multiple accounts sharing the same name could result in the denial of service to one or both of the accounts or unauthorized access to files or privileges.System AdministratorIAIA-1, IAIA-2
Checks: C-36103r1_chk

Check the system for duplicate account names. Example: # pwck -r If any duplicate account names are found, this is a finding.

Fix: F-31349r1_fix

Change user account names, or delete accounts, so each account has a unique name.

b
All accounts must be assigned unique User Identification Numbers (UIDs).
IA-2 - Medium - CCI-000764 - V-762 - SV-27068r1_rule
RMF Control
IA-2
Severity
Medium
CCI
CCI-000764
Version
GEN000320
Vuln IDs
  • V-762
Rule IDs
  • SV-27068r1_rule
Accounts sharing a UID have full access to each others' files. This has the same effect as sharing a login. There is no way to assure identification, authentication, and accountability because the system sees them as the same user. If the duplicate UID is 0, this gives potential intruders another privileged account to attack.System AdministratorIAIA-1, IAIA-2
Checks: C-36104r2_chk

Perform the following to ensure there are no duplicate UIDs: # cut -d: -f3 /etc/passwd | uniq -d If any duplicate UIDs are found, this is a finding.

Fix: F-31350r1_fix

Edit user accounts to provide unique UIDs for each account.

b
The Department of Defense (DoD) login banner must be displayed immediately prior to, or as part of, console login prompts.
AC-8 - Medium - CCI-000048 - V-763 - SV-37169r1_rule
RMF Control
AC-8
Severity
Medium
CCI
CCI-000048
Version
GEN000400
Vuln IDs
  • V-763
Rule IDs
  • SV-37169r1_rule
Failure to display the logon banner prior to a logon attempt will negate legal proceedings resulting from unauthorized access to system resources.System AdministratorECWM-1
Checks: C-35874r1_chk

Access the system console and make a login attempt. Check for either of the following login banners based on the character limitations imposed by the system. An exact match is required. If one of these banners is not displayed, this is a finding. 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. OR I've read & consent to terms in IS user agreem't.

Fix: F-31128r1_fix

Edit /etc/issue and add one of the DoD login banners (based on the character limitations imposed by the system). DoD Login Banners: 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. OR I've read & consent to terms in IS user agreem't.

b
Successful and unsuccessful logins and logouts must be logged.
AU-2 - Medium - CCI-000126 - V-765 - SV-37178r1_rule
RMF Control
AU-2
Severity
Medium
CCI
CCI-000126
Version
GEN000440
Vuln IDs
  • V-765
Rule IDs
  • SV-37178r1_rule
Monitoring and recording successful and unsuccessful logins assists in tracking unauthorized access to the system. Without this logging, the ability to track unauthorized activity to specific user accounts may be diminished.System AdministratorECAR-1, ECAR-2, ECAR-3
Checks: C-35882r1_chk

Determine if all logon attempts are being logged. Procedure: Verify successful logins are being logged: # last -R | more If the command does not return successful logins, this is a finding. Verify if unsuccessful logons are being logged: # lastb -R | more If the command does not return unsuccessful logins, this is a finding.

Fix: F-31137r1_fix

Make sure the collection files exist. Procedure: If there are no successful logins being returned from the "last" command, create /var/log/wtmp: # touch /var/log/wtmp If there are no unsuccessful logins being returned from the "lastb" command, create /var/log/btmp: # touch /var/log/btmp

b
The system must disable accounts after three consecutive unsuccessful login attempts.
AC-7 - Medium - CCI-000044 - V-766 - SV-37203r1_rule
RMF Control
AC-7
Severity
Medium
CCI
CCI-000044
Version
GEN000460
Vuln IDs
  • V-766
Rule IDs
  • SV-37203r1_rule
Disabling accounts after a limited number of unsuccessful login attempts improves protection against password guessing attacks.System AdministratorECLO-1, ECLO-2
Checks: C-35895r1_chk

Check the pam_tally configuration. # more /etc/pam.d/system-auth Confirm the following line is configured, before any "auth sufficient" lines: auth required pam_tally2.so deny=3 If no such line is found, this is a finding.

Fix: F-31153r1_fix

By default link /etc/pam.d/system-auth points to /etc/pam.d/system-auth-ac which is the file maintained by the authconfig utility. In order to add pam options other than those available via the utility create /etc/pam.d/system-auth-local with the options and including system-auth-ac. In order to set the account lockout to three failed attempts the content should be similar to: auth required pam_access.so auth required pam_tally2.so deny=3 auth include system-auth-ac account required pam_tally2.so account include system-auth-ac password include system-auth-ac session include system-auth-ac Once system-auth-local is written reset the /etc/pam.d/system-auth to point to system-auth-local. This is necessary because authconfig writes directly to system-auth-ac so any changes made by hand will be lost if authconfig is run.

b
The delay between login prompts following a failed login attempt must be at least 4 seconds.
AC-7 - Medium - CCI-002238 - V-768 - SV-37213r2_rule
RMF Control
AC-7
Severity
Medium
CCI
CCI-002238
Version
GEN000480
Vuln IDs
  • V-768
Rule IDs
  • SV-37213r2_rule
Enforcing a delay between successive failed login attempts increases protection against automated password guessing attacks.System Administrator
Checks: C-35903r2_chk

Check the value of the FAIL_DELAY variable and the ability to use it. Procedure: # grep FAIL_DELAY /etc/login.defs If the value does not exist, or is less than 4, this is a finding. Check for the use of pam_faildelay. # grep pam_faildelay /etc/pam.d/system-auth* If pam_faildelay.so module is not present, this is a finding. If pam_faildelay is present only in /etc/pam.d/system-auth-ac: ensure that /etc/pam.d/system-auth includes /etc/pam.d/system-auth-ac. #grep system-auth-ac /etc/pam.d/system-auth This should return: auth include system-auth-ac account include system-auth-ac password include system-auth-ac session include system-auth-ac /etc/pam.d/system-auth-ac should only be included by /etc/pam.d/system-auth. All other pam files should include /etc/pam.d/system-auth. If pam_faildelay is not defined in /etc/pam.d/system-auth either directly or through inclusion of system-auth-ac, this is a finding.

Fix: F-31161r1_fix

Add the pam_faildelay module and set the FAIL_DELAY variable. Procedure: Edit /etc/login.defs and set the value of the FAIL_DELAY variable to 4 or more. The default link /etc/pam.d/system-auth points to /etc/pam.d/system-auth-ac which is the file maintained by the authconfig utility. In order to add pam options other than those available via the utility create or modify /etc/pam.d/system-auth-local with the options and including system-auth-ac. For example: auth required pam_access.so auth optional pam_faildelay.so delay=4000000 auth include system-auth-ac account include system-auth-ac password include system-auth-ac session include system-auth-ac Once system-auth-local is written ensure the /etc/pam.d/system-auth points to system-auth-local. This is necessary because authconfig writes directly to system-auth-ac so any manual changes made will be lost if authconfig is run.

b
The root user must not own the logon session for an application requiring a continuous display.
AC-6 - Medium - CCI-000225 - V-769 - SV-37232r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN000520
Vuln IDs
  • V-769
Rule IDs
  • SV-37232r1_rule
If an application is providing a continuous display and is running with root privileges, unauthorized users could interrupt the process and gain root access to the system.System AdministratorPESL-1
Checks: C-35914r1_chk

If there is an application running on the system continuously in use (such as a network monitoring application), ask the SA what the name of the application is. Verify documentation exists for the requirement and justification of the application. If no documentation exists, this is a finding. Execute "ps -ef | more" to determine which user owns the process(es) associated with the application. If the owner is root, this is a finding.

Fix: F-31178r1_fix

Configure the system so the owner of a session requires a continuous screen display, such as a network management display, is not root. Ensure the display is also located in a secure, controlled access area. Document and justify this requirement and ensure the terminal and keyboard for the display (or workstation) are secure from all but authorized personnel by maintaining them in a secure area, in a locked cabinet where a swipe card, or other positive forms of identification, must be used to gain entry.

c
The system must not have accounts configured with blank or null passwords.
CM-6 - High - CCI-000366 - V-770 - SV-37259r1_rule
RMF Control
CM-6
Severity
High
CCI
CCI-000366
Version
GEN000560
Vuln IDs
  • V-770
Rule IDs
  • SV-37259r1_rule
If an account is configured for password authentication but does not have an assigned password, it may be possible to log into the account without authentication. If the root user is configured without a password, the entire system may be compromised. For user accounts not using password authentication, the account must be configured with a password lock value instead of a blank or null value. System AdministratorIAIA-1, IAIA-2
Checks: C-35949r1_chk

Verify the system will not log in accounts with blank passwords. # grep nullok /etc/pam.d/system-auth /etc/pam.d/system-auth-ac If an entry for nullok is found, this is a finding on Linux.

Fix: F-31205r1_fix

Edit /etc/pam.d/system-auth and remove the "nullok" setting.

b
The root account must be the only account having a UID of 0.
CM-6 - Medium - CCI-000366 - V-773 - SV-37347r2_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN000880
Vuln IDs
  • V-773
Rule IDs
  • SV-37347r2_rule
If an account has a UID of 0, it has root authority. Multiple accounts with a UID of 0 afford more opportunity for potential intruders to guess a password for a privileged account. System Administrator
Checks: C-36039r2_chk

Check the system for duplicate UID 0 assignments by listing all accounts assigned UID 0. Procedure: # awk -F: '($3 == 0) { print $1 }' /etc/passwd If any accounts other than root are assigned UID 0, this is a finding.

Fix: F-31283r1_fix

Remove or change the UID of accounts other than root that have UID 0.

a
The root user's home directory must not be the root directory (/).
CM-6 - Low - CCI-000366 - V-774 - SV-37349r2_rule
RMF Control
CM-6
Severity
Low
CCI
CCI-000366
Version
GEN000900
Vuln IDs
  • V-774
Rule IDs
  • SV-37349r2_rule
Changing the root home directory to something other than / and assigning it a 0700 protection makes it more difficult for intruders to manipulate the system by reading the files root places in its default directory. It also gives root the same discretionary access control for root's home directory as for the other user home directories.System Administrator
Checks: C-36040r2_chk

Determine if root is assigned a home directory other than / by listing its home directory. Procedure: # awk -F: '($1 == "root") { print $6 }' /etc/passwd If the root user home directory is /, this is a finding.

Fix: F-31284r1_fix

The root home directory should be something other than / (such as /roothome). Procedure: # mkdir /rootdir # chown root /rootdir # chgrp root /rootdir # chmod 700 /rootdir # cp -r /.??* /rootdir/. Then, edit the passwd file and change the root home directory to /rootdir. The cp -r /.??* command copies all files and subdirectories of file names beginning with "." into the new root directory, which preserves the previous root environment. Ensure you are in the "/" directory when executing the "cp" command.

b
The root account's home directory (other than /) must have mode 0700.
AC-6 - Medium - CCI-000225 - V-775 - SV-37355r3_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN000920
Vuln IDs
  • V-775
Rule IDs
  • SV-37355r3_rule
Permissions greater than 0700 could allow unauthorized users access to the root home directory.System Administrator
Checks: C-36044r3_chk

Check the mode of the root home directory. Procedure: # find ~root -type d -prune -exec ls -ld {} \; If the mode of the directory is not set to 0700 or less permissive, this is a finding. If the home directory is /, this check will be marked "Not Applicable".

Fix: F-31288r2_fix

The root home directory will be configured to have permission set of 0700 or less permissive. Do not change the protections of the / directory. Use the following command to change protections for the root home directory: # chmod 0700 /rootdir.

b
The root accounts executable search path must contain only authorized paths.
CM-6 - Medium - CCI-000366 - V-776 - SV-37360r4_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN000940
Vuln IDs
  • V-776
Rule IDs
  • SV-37360r4_rule
The executable search path (typically the PATH environment variable) contains a list of directories for the shell to search to find executables. If this path includes the current working directory or other relative paths, executables in these directories may be executed instead of system commands. This variable is formatted as a colon-separated list of directories. If there is an empty entry, such as a leading or trailing colon, two consecutive colons, or a single period, this is interpreted as the current working directory. Entries starting with a slash (/) are absolute paths.System Administrator
Checks: C-36049r5_chk

To view the root user's PATH, log in as the root user, and execute: # env | grep PATH This variable is formatted as a colon-separated list of directories. Relative path entries must be documented with the ISSO. If there is an empty entry, such as a leading or trailing colon, or two consecutive colons, this is a finding. If an entry begins with a character other than a slash (/), or has not been documented with the ISSO, this is a finding.

Fix: F-31293r4_fix

Edit the root user's local initialization files ~/.profile,~/.bashrc (assuming root shell is bash). Remove any empty path entries. Remove any relative path entries that have not been documented with the ISSO.

b
The root account must not have world-writable directories in its executable search path.
CM-6 - Medium - CCI-000366 - V-777 - SV-37372r1_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN000960
Vuln IDs
  • V-777
Rule IDs
  • SV-37372r1_rule
If the root search path contains a world-writable directory, malicious software could be placed in the path by intruders and/or malicious users and inadvertently run by root with all of root's privileges. System AdministratorECCD-1, ECCD-2
Checks: C-36059r1_chk

Check for world-writable permissions on all directories in the root user's executable search path. Procedure: # ls -ld `echo $PATH | sed "s/:/ /g"` If any of the directories in the PATH variable are world-writable, this is a finding.

Fix: F-31304r1_fix

For each world-writable path in root's executable search path, do one of the following: 1. Remove the world-writable permission on the directory. Procedure: # chmod o-w <path> 2. Remove the world-writable directory from the executable search path. Procedure: Identify and edit the initialization file referencing the world-writable directory and remove it from the PATH variable.

b
The system must prevent the root account from directly logging in except from the system console.
IA-2 - Medium - CCI-000770 - V-778 - SV-37374r1_rule
RMF Control
IA-2
Severity
Medium
CCI
CCI-000770
Version
GEN000980
Vuln IDs
  • V-778
Rule IDs
  • SV-37374r1_rule
Limiting the root account direct logins to only system consoles protects the root account from direct unauthorized access from a non-console device.System Administrator
Checks: C-36060r1_chk

Check /etc/securetty # more /etc/securetty If the file does not exist, or contains more than "console" or a single "tty" device this is a finding.

Fix: F-31305r1_fix

Create if needed and set the contents of /etc/securetty to a "console" or "tty" device. # echo console > /etc/securetty or # echo tty1 > /etc/securetty

b
GIDs reserved for system accounts must not be assigned to non-system groups.
CM-6 - Medium - CCI-000366 - V-780 - SV-37157r1_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN000360
Vuln IDs
  • V-780
Rule IDs
  • SV-37157r1_rule
Reserved GIDs are typically used by system software packages. If non-system groups have GIDs in this range, they may conflict with system software, possibly leading to the group having permissions to modify system files.System AdministratorECSC-1
Checks: C-35866r1_chk

Confirm all accounts with a GID of 499 and below are used by a system account. Procedure: List all the users with a GID of 0-499. # cut -d: -f 1,4 /etc/passwd|egrep ":[1-4][0-9]{2}$|:[0-9]{1,2}$" If a GID reserved for system accounts (0 - 499) is used by a non-system account, this is a finding.

Fix: F-31121r1_fix

Change the primary group GID numbers for non-system accounts with reserved primary group GIDs (those less or equal to 499).

a
All GIDs referenced in the /etc/passwd file must be defined in the /etc/group file.
CM-6 - Low - CCI-000366 - V-781 - SV-27072r1_rule
RMF Control
CM-6
Severity
Low
CCI
CCI-000366
Version
GEN000380
Vuln IDs
  • V-781
Rule IDs
  • SV-27072r1_rule
If a user is assigned the GID of a group not existing on the system, and a group with the GID is subsequently created, the user may have unintended rights to the group. System AdministratorECSC-1
Checks: C-27989r1_chk

Perform the following to ensure there are no GIDs referenced in /etc/passwd not defined in /etc/group: # pwck -r If GIDs referenced in /etc/passwd are not defined in /etc/group are returned, this is a finding.

Fix: F-935r3_fix

Add a group to the system for each GID referenced without a corresponding group.

b
The system must have a host-based intrusion detection tool installed.
SI-4 - Medium - CCI-001259 - V-782 - SV-37746r3_rule
RMF Control
SI-4
Severity
Medium
CCI
CCI-001259
Version
GEN006480
Vuln IDs
  • V-782
Rule IDs
  • SV-37746r3_rule
Adding host-based intrusion detection tools can provide the capability to automatically take actions in response to malicious behavior, which can provide additional agility in reacting to network threats. These tools also often include a reporting capability to provide network awareness of system, which may not otherwise exist in an organization's systems management regime.System Administrator
Checks: C-36942r3_chk

Ask the SA or ISSO if a host-based intrusion detection application is loaded on the system. Per OPORD 16-0080 the preferred intrusion detection system is McAfee HBSS available through Cybercom. If another host-based intrusion detection application is in use, such as SELinux, this must be documented and approved by the local Authorizing Official Procedure: Examine the system to see if the Host Intrusion Prevention System (HIPS) is installed # rpm -qa | grep MFEhiplsm Verify that the McAfee HIPS module is active on the system: # ps -ef | grep -i “hipclient” If the MFEhiplsm package is not installed, check for another intrusion detection system: # find / -name &lt;daemon name&gt; Where &lt;daemon name&gt; is the name of the primary application daemon to determine if the application is loaded on the system. Determine if the application is active on the system: # ps -ef | grep -i &lt;daemon name&gt; If the MFEhiplsm package is not installed and an alternate host-based intrusion detection application has not been documented for use, this is a finding. If no host-based intrusion detection system is installed and running on the system, this is a finding.

Fix: F-32207r2_fix

Install and enable the latest McAfee HIPS package, available from Cybercom. If the system does not support the McAfee HIPS package, install and enable a supported intrusion detection system application and document its use with the Authorizing Official.

b
System security patches and updates must be installed and up-to-date.
SI-2 - Medium - CCI-001227 - V-783 - SV-27059r2_rule
RMF Control
SI-2
Severity
Medium
CCI
CCI-001227
Version
GEN000120
Vuln IDs
  • V-783
Rule IDs
  • SV-27059r2_rule
Timely patching is critical for maintaining the operational availability, confidentiality, and integrity of information technology (IT) systems. However, failure to keep operating system and application software patched is a common mistake made by IT professionals. New patches are released daily, and it is often difficult for even experienced system administrators to keep abreast of all the new patches. When new weaknesses in an operating system exist, patches are usually made available by the vendor to resolve the problems. If the most recent security patches and updates are not installed, unauthorized users may take advantage of weaknesses present in the unpatched software. The lack of prompt attention to patching could result in a system compromise.System Administrator
Checks: C-27973r3_chk

Obtain the list of available package security updates from Red Hat. Check the available package security updates have been installed on the system. Use the "rpm" command to list the packages installed on the system. Example: # rpm -qa -last If updated packages are available and applicable to the system and have not been installed, this is a finding. One source for the list of Red Hat updates is available at https://access.redhat.com/security/updates/active/

Fix: F-31302r1_fix

Install the patches or updated packages available from the vendor.

b
System files and directories must not have uneven access permissions.
AC-6 - Medium - CCI-000225 - V-784 - SV-37159r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001140
Vuln IDs
  • V-784
Rule IDs
  • SV-37159r1_rule
Discretionary access control is undermined if users, other than a file owner, have greater access permissions to system files and directories than the owner.System AdministratorECCD-1, ECCD-2
Checks: C-35867r1_chk

Check system directories for uneven file permissions. Procedure: # ls -lL /etc /bin /usr/bin /usr/lbin /usr/usb /sbin /usr/sbin Uneven file permissions exist if the file owner has less permissions than the group or other user classes. If any of the files in the above listed directories contain uneven file permissions, this is a finding.

Fix: F-31122r1_fix

Change the mode of files with uneven permissions so owners do not have less permission than group or world users.

b
All files and directories must have a valid owner.
CM-6 - Medium - CCI-000366 - V-785 - SV-37161r2_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN001160
Vuln IDs
  • V-785
Rule IDs
  • SV-37161r2_rule
Un-owned files and directories may be unintentionally inherited if a user is assigned the same UID as the UID of the un-owned files.System Administrator
Checks: C-35868r2_chk

Check the system for files with no assigned owner. Procedure: # find / -ignore_readdir_race -nouser If any files have no assigned owner, this is a finding. Caution should be used when centralized authorization is used because valid files may appear as unowned due to communication issues.

Fix: F-31123r1_fix

All directories and files (executable and data) will have an identifiable owner and group name. Either trace files to an authorized user, change the file's owner to root, or delete them. Determine the legitimate owner of the files and use the chown command to set the owner and group to the correct value. If the legitimate owner cannot be determined, change the owner to root (but make sure none of the changed files remain executable because they could be Trojan horses or other malicious code). Examine the files to determine their origin and the reason for their lack of an owner/group.

b
All network services daemon files must have mode 0755 or less permissive.
AC-6 - Medium - CCI-000225 - V-786 - SV-37194r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001180
Vuln IDs
  • V-786
Rule IDs
  • SV-37194r1_rule
Restricting permission on daemons will protect them from unauthorized modification and possible system compromise.System AdministratorECLP-1
Checks: C-35891r1_chk

Check the mode of network services daemons. # find /usr/sbin -type f -perm +022 -exec stat -c %a:%n {} \; This will return the octal permissions and name of all files that are group or world writable. If any network services daemon listed is world or group writable (either or both of the 2 lowest order digits contain a 2, 3 or 6), this is a finding. Note: Network daemons not residing in these directories (such as httpd or sshd) must also be checked for the correct permissions.

Fix: F-31146r1_fix

Change the mode of the network services daemon. # chmod go-w <path>

b
System log files must have mode 0640 or less permissive.
SI-11 - Medium - CCI-001314 - V-787 - SV-37228r3_rule
RMF Control
SI-11
Severity
Medium
CCI
CCI-001314
Version
GEN001260
Vuln IDs
  • V-787
Rule IDs
  • SV-37228r3_rule
If the system log files are not protected, unauthorized users could change the logged data, eliminating its forensic value.System Administrator
Checks: C-35918r4_chk

Check the mode of log files. Procedure: # find /var/log /var/log/syslog /var/adm -type f -perm -640 \! -perm 640 With the exception of /var/log/wtmp, /var/log/Xorg.0.log, and /var/log/gdm/:0.log, if any of the log files have modes more permissive than 0640, this is a finding.

Fix: F-31175r1_fix

Change the mode of the system log file(s) to 0640 or less permissive. Procedure: # chmod 0640 /path/to/system-log-file Note: Do not confuse system log files with audit logs.

b
All skeleton files (typically those in /etc/skel) must have mode 0644 or less permissive.
AC-6 - Medium - CCI-000225 - V-788 - SV-37292r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001800
Vuln IDs
  • V-788
Rule IDs
  • SV-37292r1_rule
If the skeleton files are not protected, unauthorized personnel could change user startup parameters and possibly jeopardize user files. System AdministratorECLP-1
Checks: C-35988r1_chk

Check skeleton files permissions. # ls -alL /etc/skel If a skeleton file has a mode more permissive than 0644, this is a finding.

Fix: F-31240r1_fix

Change the mode of skeleton files with incorrect mode: # chmod 0644 <skeleton file>

b
NIS/NIS+/yp files must be owned by root, sys, or bin.
AC-6 - Medium - CCI-000225 - V-789 - SV-37267r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001320
Vuln IDs
  • V-789
Rule IDs
  • SV-37267r1_rule
NIS/NIS+/yp files are part of the system's identification and authentication processes and are critical to system security. Failure to give ownership of sensitive files or utilities to root or bin provides the designated owner and unauthorized users with the potential to access sensitive information or change the system configuration which could weaken the system's security posture.System AdministratorECLP-1
Checks: C-35953r1_chk

Perform the following to check NIS file ownership: # ls -la /var/yp/*; If the file ownership is not root, sys, or bin, this is a finding.

Fix: F-31213r1_fix

Change the ownership of NIS/NIS+/yp files to root, sys or bin. Procedure (example): # chown root <filename>

b
NIS/NIS+/yp files must be group-owned by root, sys, or bin.
AC-6 - Medium - CCI-000225 - V-790 - SV-41577r2_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001340
Vuln IDs
  • V-790
Rule IDs
  • SV-41577r2_rule
NIS/NIS+/yp files are part of the system's identification and authentication processes and are, therefore, critical to system security. Failure to give ownership of sensitive files or utilities to root or bin provides the designated owner and unauthorized users with the potential to access sensitive information or change the system configuration which could weaken the system's security posture.System Administrator
Checks: C-40079r2_chk

Perform the following to check NIS file group ownership: # ls -la /var/yp/* If the file group ownership is not root, sys, or bin, this is a finding.

Fix: F-35235r4_fix

Perform the following to change NIS file ownership. # chgrp root /var/yp/*

b
The NIS/NIS+/yp command files must have mode 0755 or less permissive.
AC-6 - Medium - CCI-000225 - V-791 - SV-37272r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001360
Vuln IDs
  • V-791
Rule IDs
  • SV-37272r1_rule
NIS/NIS+/yp files are part of the system's identification and authentication processes and are critical to system security. Unauthorized modification of these files could compromise these processes and the system.System AdministratorECLP-1
Checks: C-35964r3_chk

Perform the following to check NIS file permissions. # ls -la /var/yp/* If the file's mode is more permissive than 0755, this is a finding.

Fix: F-31220r1_fix

Change the mode of NIS/NIS+/yp command files to 0755 or less permissive. Procedure (example): # chmod 0755 <filename>

a
Manual page files must have mode 0644 or less permissive.
AC-6 - Low - CCI-000225 - V-792 - SV-37234r3_rule
RMF Control
AC-6
Severity
Low
CCI
CCI-000225
Version
GEN001280
Vuln IDs
  • V-792
Rule IDs
  • SV-37234r3_rule
If manual pages are compromised, misleading information could be inserted, causing actions to compromise the system.System Administrator
Checks: C-35923r3_chk

Check the mode of the manual page files. Procedure: # find /usr/share/man /usr/share/info /usr/share/infopage -type f -perm +022 -exec stat -c %a:%n {} \; |&gt; more Note: This list only displays manual files with offending permissions. If any of the manual page files have a mode more permissive than 0644, this is a finding.

Fix: F-31181r2_fix

Change the mode of manual page files to 0644 or less permissive. Procedure (example): # chmod 0644 /path/to/manpage

b
Library files must have mode 0755 or less permissive.
CM-5 - Medium - CCI-001499 - V-793 - SV-37241r2_rule
RMF Control
CM-5
Severity
Medium
CCI
CCI-001499
Version
GEN001300
Vuln IDs
  • V-793
Rule IDs
  • SV-37241r2_rule
Unauthorized access could destroy the integrity of the library files.System Administrator
Checks: C-35933r2_chk

Check the mode of library files. Procedure: # DIRS="/usr/lib /lib /usr/lib64 /lib64";for DIR in $DIRS;do find $DIR -type f -perm +022 -exec stat -c %a:%n {} \;;done This will return the octal permissions and name of all group or world writable files. If any file listed is world or group writable (either or both of the 2 lowest order digits contain a 2, 3 or 6), this is a finding.

Fix: F-31188r1_fix

Change the mode of library files to 0755 or less permissive. Procedure (example): # chmod go-w </path/to/library-file> Note: Library files should have an extension of ".a" or a ".so" extension, possibly followed by a version number.

b
All system command files must have mode 0755 or less permissive.
CM-5 - Medium - CCI-001499 - V-794 - SV-37205r2_rule
RMF Control
CM-5
Severity
Medium
CCI
CCI-001499
Version
GEN001200
Vuln IDs
  • V-794
Rule IDs
  • SV-37205r2_rule
Restricting permissions will protect system command files from unauthorized modification. System command files include files present in directories used by the operating system for storing default system executables and files present in directories included in the system's default executable search paths.Elevate to Severity Code I if any file listed world-writable.System AdministratorECLP-1
Checks: C-35897r2_chk

Check the permissions for files in /etc, /bin, /usr/bin, /usr/lbin, /usr/usb, /sbin, and /usr/sbin. Procedure: # DIRS="/etc /bin /usr/bin /usr/lbin /usr/usb /sbin /usr/sbin";for DIR in $DIRS;do find $DIR -type f -perm +022 -exec stat -c %a:%n {} \;;done This will return the octal permissions and name of all group or world writable files. If any command file is listed and is world or group writable (either or both of the 2 lowest order digits contain a 2, 3 or 6), this is a finding. Note: Elevate to Severity Code I if any command file listed is world-writable.

Fix: F-31155r1_fix

Change the mode for system command files to 0755 or less permissive taking into account necessary GIUD and SUID bits. Procedure: # chmod go-w <filename>

b
All system files, programs, and directories must be owned by a system account.
CM-5 - Medium - CCI-001499 - V-795 - SV-37216r1_rule
RMF Control
CM-5
Severity
Medium
CCI
CCI-001499
Version
GEN001220
Vuln IDs
  • V-795
Rule IDs
  • SV-37216r1_rule
Restricting permissions will protect the files from unauthorized modification.System AdministratorECLP-1
Checks: C-35906r1_chk

Check the ownership of system files, programs, and directories. Procedure: # ls -lLa /etc /bin /usr/bin /usr/lbin /usr/usb /sbin /usr/sbin If any of the system files, programs, or directories are not owned by a system account, this is a finding.

Fix: F-31164r1_fix

Change the owner of system files, programs, and directories to a system account. Procedure: # chown root /some/system/file (A different system user may be used in place of root.)

b
System files, programs, and directories must be group-owned by a system group.
CM-5 - Medium - CCI-001499 - V-796 - SV-37220r1_rule
RMF Control
CM-5
Severity
Medium
CCI
CCI-001499
Version
GEN001240
Vuln IDs
  • V-796
Rule IDs
  • SV-37220r1_rule
Restricting permissions will protect the files from unauthorized modification.System AdministratorECLP-1
Checks: C-35909r1_chk

Check the group-ownership of system files, programs, and directories. Procedure: # ls -lLa /etc /bin /usr/bin /usr/lbin /usr/usb /sbin /usr/sbin If any system file, program, or directory is not owned by a system group, this is a finding.

Fix: F-31167r1_fix

Change the group-owner of system files to a system group. Procedure: # chgrp root /path/to/system/file (System groups other than root may be used.)

b
The /etc/shadow (or equivalent) file must be owned by root.
AC-6 - Medium - CCI-000225 - V-797 - SV-37361r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001400
Vuln IDs
  • V-797
Rule IDs
  • SV-37361r1_rule
The /etc/shadow file contains the list of local system accounts. It is vital to system security and must be protected from unauthorized modification. Failure to give ownership of sensitive files or utilities to root or bin provides the designated owner and unauthorized users with the potential to access sensitive information or change the system configuration which could weaken the system's security posture.System AdministratorECLP-1
Checks: C-36050r1_chk

Check the ownership of the /etc/shadow file. # ls -lL /etc/shadow If the /etc/shadow file is not owned by root, this is a finding.

Fix: F-31294r1_fix

Change the ownership of the /etc/shadow (or equivalent) file. # chown root /etc/shadow

b
The /etc/passwd file must have mode 0644 or less permissive.
AC-6 - Medium - CCI-000225 - V-798 - SV-37344r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001380
Vuln IDs
  • V-798
Rule IDs
  • SV-37344r1_rule
If the passwd file is writable by a group-owner or the world, the risk of passwd file compromise is increased. The passwd file contains the list of accounts on the system and associated information.System AdministratorECLP-1
Checks: C-36037r1_chk

Check the mode of the /etc/passwd file. Procedure: # ls -lL /etc/passwd If /etc/passwd has a mode more permissive than 0644, this is a finding.

Fix: F-31280r1_fix

Change the mode of the passwd file to 0644. Procedure: # chmod 0644 /etc/passwd

b
The /etc/shadow (or equivalent) file must have mode 0400.
AC-6 - Medium - CCI-000225 - V-800 - SV-37368r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001420
Vuln IDs
  • V-800
Rule IDs
  • SV-37368r1_rule
The /etc/shadow file contains the list of local system accounts. It is vital to system security and must be protected from unauthorized modification. The file also contains password hashes which must not be accessible to users other than root.System AdministratorECLP-1
Checks: C-36056r1_chk

Check the mode of the /etc/shadow file. # ls -lL /etc/shadow If the /etc/shadow file has a mode more permissive than 0400, this is a finding.

Fix: F-31300r1_fix

Change the mode of the /etc/shadow (or equivalent) file. # chmod 0400 /etc/shadow

b
The owner, group-owner, mode, ACL, and location of files with the setuid bit set must be documented using site-defined procedures.
CM-6 - Medium - CCI-000368 - V-801 - SV-37579r4_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000368
Version
GEN002380
Vuln IDs
  • V-801
Rule IDs
  • SV-37579r4_rule
All files with the setuid bit set will allow anyone running these files to be temporarily assigned the UID of the file. While many system files depend on these attributes for proper operation, security problems can result if setuid is assigned to programs allowing reading and writing of files, or shell escapes. Only default vendor-supplied executables should have the setuid bit set.trueInformation Assurance OfficerSystem Administrator
Checks: C-36445r7_chk

Check for the presence of aide on the system: # rpm -qa | grep aide If aide is not installed, ask the SA what file integrity tool is being used to check the system. Check the global crontabs for the presence of an "aide" job to run at least weekly, if aide is installed. Otherwise, check for the presence of a cron job to run the alternate file integrity checking application. # grep aide /etc/cron*/* If a tool is being run, then the configuration file for the appropriate tool needs to be checked for selection lines /bin, /sbin, /lib, and /usr. If the file integrity tool is set to check setuid and setgid, this is not a finding. List all setuid files on the system. Procedure: # find / -perm -4000 -exec ls -l {} \; | more Note: Executing these commands may result in large listings of files; the output may be redirected to a file for easier analysis. Ask the SA or ISSO if files with the setuid bit set have been documented. Documentation must include the owner, group-owner, mode, ACL, and location of the files. If any undocumented file has its setuid bit set, this is a finding.

Fix: F-31615r1_fix

Document the files with the suid bit set or unset the suid bit on the executable.

b
The owner, group-owner, mode, ACL and location of files with the setgid bit set must be documented using site-defined procedures.
CM-6 - Medium - CCI-000368 - V-802 - SV-37628r3_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000368
Version
GEN002440
Vuln IDs
  • V-802
Rule IDs
  • SV-37628r3_rule
All files with the setgid bit set will allow anyone running these files to be temporarily assigned the GID of the file. While many system files depend on these attributes for proper operation, security problems can result if setgid is assigned to programs allowing reading and writing of files, or shell escapes.trueSystem AdministratorInformation Assurance Officer
Checks: C-36826r4_chk

If STIGID GEN000220 is satisfied, this is not a finding. List all setgid files on the system. Procedure: # find / -perm -2000 -exec ls -l {} \; | more Note: Executing these commands may result in large listings of files; the output may be redirected to a file for easier analysis. Ask the SA or IAO if files with the setgid bit set have been documented. Documentation must include owner, group-owner, mode, ACL, and location. If any undocumented file has its setgid bit set, this is a finding. If a tool is being run then the configuration file for the appropriate tool needs to be checked for selection lines /bin, /sbin, /lib, and /usr. If a file integrity tool is set to check setuid and setgid, this is not a finding.

Fix: F-31664r1_fix

Document the files with the sgid bit set or unset the sgid bit on the executable.

b
The system must be checked weekly for unauthorized setuid files as well as unauthorized modification to authorized setuid files.
CM-3 - Medium - CCI-000318 - V-803 - SV-37592r4_rule
RMF Control
CM-3
Severity
Medium
CCI
CCI-000318
Version
GEN002400
Vuln IDs
  • V-803
Rule IDs
  • SV-37592r4_rule
Files with the setuid bit set will allow anyone running these files to be temporarily assigned the UID of the file. While many system files depend on these attributes for proper operation, security problems can result if setuid is assigned to programs allowing reading and writing of files, or shell escapes.System Administrator
Checks: C-36666r5_chk

Ask the SA for the weekly automated or manual process used to generate a list of setuid files on the system and compare it with the prior list. If no such process is in place, this is a finding. If a file integrity tool is configured to monitor setuid files weekly, this is not a finding. Review the process. If the process does not identify and report changes in setuid files, this is a finding. NOTE: The frequency may be increased to daily, if necessary, in accordance with the contingency plan.

Fix: F-31627r4_fix

Establish a weekly automated or manual process to generate a list of suid files on the system and compare it with the prior list. To create a list of suid files: # find / -perm -4000 > suid-file-list NOTE: The frequency may be increased to daily, if necessary, in accordance with the contingency plan.

b
The system must be checked weekly for unauthorized setgid files as well as unauthorized modification to authorized setgid files.
CM-3 - Medium - CCI-000318 - V-804 - SV-37635r4_rule
RMF Control
CM-3
Severity
Medium
CCI
CCI-000318
Version
GEN002460
Vuln IDs
  • V-804
Rule IDs
  • SV-37635r4_rule
Files with the setgid bit set will allow anyone running these files to be temporarily assigned the group id of the file. While many system files depend on these attributes for proper operation, security problems can result if setgid is assigned to programs allowing reading and writing of files, or shell escapes.System Administrator
Checks: C-36833r6_chk

Ask the SA if a weekly automated or manual process is used to generate a list of setgid files on the system and compare it with the prior list. If no such process is in place, this is a finding. If a file integrity tool is configured to monitor setgid files weekly, this is not a finding. NOTE: The frequency may be increased to daily, if necessary, in accordance with the contingency plan.

Fix: F-31671r5_fix

Establish a weekly automated or manual process to generate a list of setgid files on the system and compare it with the prior list. To create a list of setgid files: # find / -perm -2000 > setgid-file-list NOTE: The frequency may be increased to daily, if necessary, in accordance with the contingency plan.

b
Removable media, remote file systems, and any file system not containing approved setuid files must be mounted with the "nosuid" option.
AC-6 - Medium - CCI-000225 - V-805 - SV-37607r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN002420
Vuln IDs
  • V-805
Rule IDs
  • SV-37607r1_rule
The "nosuid" mount option causes the system to not execute setuid files with owner privileges. This option must be used for mounting any file system not containing approved setuid files. Executing setuid files from untrusted file systems, or file systems not containing approved setuid files, increases the opportunity for unprivileged users to attain unauthorized administrative access.System AdministratorECLP-1
Checks: C-36773r2_chk

Check /etc/mtab and verify the "nosuid" mount option is used on file systems mounted from removable media, network shares, or any other file system not containing approved setuid or setgid files. If any of these files systems do not mount with the "nosuid" option, it is a finding.

Fix: F-31642r1_fix

Edit /etc/fstab and add the "nosuid" mount option to all file systems mounted from removable media or network shares, and any file system not containing approved setuid or setgid files.

a
The sticky bit must be set on all public directories.
CM-6 - Low - CCI-000366 - V-806 - SV-37647r1_rule
RMF Control
CM-6
Severity
Low
CCI
CCI-000366
Version
GEN002500
Vuln IDs
  • V-806
Rule IDs
  • SV-37647r1_rule
Failing to set the sticky bit on the public directories allows unauthorized users to delete files in the directory structure. The only authorized public directories are those temporary directories supplied with the system or those designed to be temporary file repositories. The setting is normally reserved for directories used by the system and by users for temporary file storage, (e.g., /tmp), and for directories requiring global read/write access.System AdministratorECCD-1, ECCD-2
Checks: C-36843r1_chk

Check all world-writable directories have the sticky bit set. Procedure: # find / -type d -perm -002 ! -perm -1000 &gt; wwlist If the sticky bit is not set on a world-writable directory, this is a finding.

Fix: F-31680r1_fix

Set the sticky bit on all public directories. Procedure: # chmod 1777 /tmp (Replace /tmp with the public directory missing the sticky bit, if necessary.)

b
All public directories must be owned by root or an application account.
AC-6 - Medium - CCI-000225 - V-807 - SV-37888r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN002520
Vuln IDs
  • V-807
Rule IDs
  • SV-37888r1_rule
If a public directory has the sticky bit set and is not owned by a privileged UID, unauthorized users may be able to modify files created by others. The only authorized public directories are those temporary directories supplied with the system or those designed to be temporary file repositories. The setting is normally reserved for directories used by the system and by users for temporary file storage, (e.g., /tmp), and for directories requiring global read/write access.System AdministratorECLP-1
Checks: C-37114r1_chk

Check the ownership of all public directories. Procedure: # find / -type d -perm -1002 -exec ls -ld {} \; If any public directory is not owned by root or an application user, this is a finding.

Fix: F-32382r1_fix

Change the owner of public directories to root or an application account. Procedure: # chown root /tmp (Replace root with an application user and/or /tmp with another public directory as necessary.)

b
The system and user default umask must be 077.
CM-6 - Medium - CCI-000366 - V-808 - SV-37898r2_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN002560
Vuln IDs
  • V-808
Rule IDs
  • SV-37898r2_rule
The umask controls the default access mode assigned to newly created files. An umask of 077 limits new files to mode 700 or less permissive. Although umask can be represented as a 4-digit number, the first digit representing special access modes is typically ignored or required to be 0. This requirement applies to the globally configured system defaults and the user defaults for each account on the system.trueIf the default umask is 000 or does not restrict the world-writable permission, this becomes a CAT I finding.System AdministratorECCD-1, ECCD-2
Checks: C-37124r2_chk

NOTE: The following commands must be run in the BASH shell. Check global initialization files for the configured umask value. Procedure: # grep umask /etc/* Check local initialization files for the configured umask value. Procedure: # cut -d: -f6 /etc/passwd |xargs -n1 -IDIR find DIR -name ".*" -type f -maxdepth 1 -exec grep umask {} \; If the system and user default umask is not 077, this a finding. Note: If the default umask is 000 or allows for the creation of world-writable files this becomes a Severity Code I finding.

Fix: F-32392r1_fix

Edit local and global initialization files that contain "umask" and change them to use 077 instead of the current value.

b
Default system accounts must be disabled or removed.
IA-5 - Medium - CCI-000178 - V-810 - SV-37903r1_rule
RMF Control
IA-5
Severity
Medium
CCI
CCI-000178
Version
GEN002640
Vuln IDs
  • V-810
Rule IDs
  • SV-37903r1_rule
Vendor accounts and software may contain backdoors allowing unauthorized access to the system. These backdoors are common knowledge and present a threat to system security if the account is not disabled.System AdministratorIAAC-1
Checks: C-37129r2_chk

Determine if default system accounts (such as those for sys, bin, uucp, nuucp, daemon, smtp) have been disabled. # cat /etc/shadow If an account's password field (which is the second field in the /etc/shadow file) is "*", "*LK*", or is prefixed with a '!', the account is locked or disabled. If there are any unlocked default system accounts this is a finding.

Fix: F-32397r1_fix

Lock the default system account(s). # passwd -l <user>

b
Auditing must be implemented.
AU-12 - Medium - CCI-000169 - V-811 - SV-27270r1_rule
RMF Control
AU-12
Severity
Medium
CCI
CCI-000169
Version
GEN002660
Vuln IDs
  • V-811
Rule IDs
  • SV-27270r1_rule
Without auditing, individual system accesses cannot be tracked and malicious activity cannot be detected and traced back to an individual account.System AdministratorECAR-1, ECAR-2, ECAR-3
Checks: C-28350r1_chk

Determine if auditing is enabled. # ps -ef |grep auditd If the auditd process is not found, this is a finding.

Fix: F-24516r1_fix

Start the auditd service and set it to start on boot. # service auditd start ; chkconfig auditd on

b
System audit logs must be owned by root.
AU-9 - Medium - CCI-000162 - V-812 - SV-37912r1_rule
RMF Control
AU-9
Severity
Medium
CCI
CCI-000162
Version
GEN002680
Vuln IDs
  • V-812
Rule IDs
  • SV-37912r1_rule
Failure to give ownership of system audit log files to root provides the designated owner and unauthorized users with the potential to access sensitive information.System AdministratorECTP-1
Checks: C-37138r1_chk

Perform the following to determine the location of audit logs and then check the ownership. Procedure: # grep "^log_file" /etc/audit/auditd.conf|sed s/^[^\/]*//|xargs stat -c %U:%n If any audit log file is not owned by root, this is a finding.

Fix: F-966r2_fix

Change the ownership of the audit log file(s). Procedure: # chown root <audit log file>

b
System audit logs must have mode 0640 or less permissive.
AU-9 - Medium - CCI-000163 - V-813 - SV-37916r1_rule
RMF Control
AU-9
Severity
Medium
CCI
CCI-000163
Version
GEN002700
Vuln IDs
  • V-813
Rule IDs
  • SV-37916r1_rule
If a user can write to the audit logs, audit trails can be modified or destroyed and system intrusion may not be detected. System audit logs are those files generated from the audit system and do not include activity, error, or other log files created by application software.System AdministratorECTP-1
Checks: C-37142r1_chk

Perform the following to determine the location of audit logs and then check the mode of the files. Procedure: # grep "^log_file" /etc/audit/auditd.conf|sed s/^[^\/]*//|xargs stat -c %a:%n If any audit log file has a mode more permissive than 0640, this is a finding.

Fix: F-967r2_fix

Change the mode of the audit log directories/files. # chmod 0750 <audit directory> # chmod 0640 <audit file>

b
The audit system must be configured to audit failed attempts to access files and programs.
AU-2 - Medium - CCI-000126 - V-814 - SV-38645r1_rule
RMF Control
AU-2
Severity
Medium
CCI
CCI-000126
Version
GEN002720
Vuln IDs
  • V-814
Rule IDs
  • SV-38645r1_rule
If the system is not configured to audit certain activities and write them to an audit log, it is more difficult to detect and track system compromises and damages incurred during a system compromise.System AdministratorECAR-1, ECAR-2, ECAR-3
Checks: C-37782r2_chk

Verify auditd is configured to audit failed file access attempts. There must be an audit rule for each of the access syscalls logging all failed accesses (-F success=0) or there must both an "-F exit=-EPERM" and "-F exit=-EACCES" for each access syscall. Procedure: # cat /etc/audit/audit.rules | grep -e "-a exit,always" | grep -e "-S creat" | grep -e "-F success=0" # cat /etc/audit/audit.rules | grep -e "-a exit,always" | grep -e "-S creat" | grep -e "-F exit=-EPERM" # cat /etc/audit/audit.rules | grep -e "-a exit,always" | grep -e "-S creat" | grep -e "-F exit=-EACCES" If an "-S creat" audit rule with "-F success" does not exist and no separate rules containing "-F exit=-EPERM" and "-F exit=-EACCES" for "creat" exist, then this is a finding.

Fix: F-33035r2_fix

Edit the audit.rules file and add the following line(s) to enable auditing of failed attempts to access files and programs: either: -a exit,always -F arch=<ARCH> -S creat -F success=0 or both: -a exit,always -F arch=<ARCH> -S creat -F exit=-EPERM -a exit,always -F arch=<ARCH> -S creat -F exit=-EACCES Restart the auditd service. # service auditd restart

b
The audit system must be configured to audit files and programs deleted by the user.
AU-2 - Medium - CCI-000126 - V-815 - SV-42185r3_rule
RMF Control
AU-2
Severity
Medium
CCI
CCI-000126
Version
GEN002740
Vuln IDs
  • V-815
Rule IDs
  • SV-42185r3_rule
If the system is not configured to audit certain activities and write them to an audit log, it is more difficult to detect and track system compromises and damages incurred during a system compromise.System Administrator
Checks: C-45161r1_chk

Check the system audit configuration to determine if file and directory deletions are audited. # cat /etc/audit/audit.rules | grep -e "-a exit,always" | grep -i "unlink" If no results are returned, or the results do not contain "-S unlink", this is a finding.

Fix: F-24531r2_fix

Edit the audit.rules file and add the following line to enable auditing of deletions: -a exit,always -F arch=<ARCH> -S unlink Restart the auditd service. # service auditd restart

b
The audit system must be configured to audit login, logout, and session initiation.
AU-2 - Medium - CCI-000126 - V-818 - SV-37944r1_rule
RMF Control
AU-2
Severity
Medium
CCI
CCI-000126
Version
GEN002800
Vuln IDs
  • V-818
Rule IDs
  • SV-37944r1_rule
If the system is not configured to audit certain activities and write them to an audit log, it is more difficult to detect and track system compromises and damages incurred during a system compromise.System AdministratorECAR-1, ECAR-2, ECAR-3
Checks: C-37225r1_chk

The message types that are always recorded to /var/log/audit/audit.log include LOGIN,USER_LOGIN,USER_START,USER_END among others and do not need to be added to audit_rules. The log files /var/log/faillog and /var/log/lastlog must be protected from tampering of the login records. Procedure: #egrep "faillog|lastlog" /etc/audit/audit.rules|grep "-p (wa|aw)" If both /var/log/faillog and /var/log/lastlog entries do not exist, this is a finding.

Fix: F-32435r1_fix

Ensure logins Procedure: Modify /etc/audit/audit.rules to contain: -w /var/log/faillog -p wa -w /var/log/lastlog -p wa

b
The audit system must be configured to audit all discretionary access control permission modifications.
AU-2 - Medium - CCI-000126 - V-819 - SV-48488r1_rule
RMF Control
AU-2
Severity
Medium
CCI
CCI-000126
Version
GEN002820
Vuln IDs
  • V-819
Rule IDs
  • SV-48488r1_rule
If the system is not configured to audit certain activities and write them to an audit log, it is more difficult to detect and track system compromises and damages incurred during a system compromise. System Administrator
Checks: C-45145r1_chk

Check the system's audit configuration. Procedure: # cat /etc/audit/audit.rules | grep -e "-a exit,always" | grep -i " chmod " If "-S chmod" is not in the result, this is a finding

Fix: F-24555r1_fix

The "-F arch=<ARCH>" restriction is required on dual-architecture systems (such as x86_64). On dual-architecture systems, two separate rules must exist - one for each architecture supported. Use the generic architectures "b32" and "b64" for specifying these rules. On single architecture systems, the "-F arch=<ARCH>" restriction may be omitted, but if present must match either the architecture of the system or its corresponding generic architecture. The architecture of the system may be determined by running "uname -m". See the auditctl(8) manpage for additional details. Any restrictions (such as with "-F") beyond those provided in the example rules are not in strict compliance with this requirement, and are a finding unless justified and documented appropriately. The use of audit keys consistent with the provided example is encouraged to provide for uniform audit logs, however omitting the audit key or using an alternate audit key is not a finding. Procedure: Edit the audit.rules file and add the following lines to enable auditing of discretionary access control permissions modifications. -a exit,always -F arch=<ARCH> -S chmod Restart the auditd service. # service auditd restart

b
The inetd.conf file, xinetd.conf file, and the xinetd.d directory must be owned by root or bin.
AC-6 - Medium - CCI-000225 - V-821 - SV-37406r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003720
Vuln IDs
  • V-821
Rule IDs
  • SV-37406r1_rule
Failure to give ownership of sensitive files or utilities to root provides the designated owner and unauthorized users with the potential to access sensitive information or change the system configuration possibly weakening the system's security posture.System AdministratorECLP-1
Checks: C-36089r1_chk

Check the owner of the xinetd configuration files. Procedure: # ls -lL /etc/xinetd.conf # ls -laL /etc/xinetd.d This is a finding if any of the above files or directories are not owned by root or bin.

Fix: F-31336r1_fix

Change the owner of the xinetd configuration files. # chown root /etc/xinetd.conf /etc/xinetd.d/*

b
The xinetd configuration files must have mode 0640 or less permissive.
AC-6 - Medium - CCI-000225 - V-822 - SV-37408r2_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003740
Vuln IDs
  • V-822
Rule IDs
  • SV-37408r2_rule
The Internet service daemon configuration files must be protected as malicious modification could cause Denial of Service or increase the attack surface of the system.System Administrator
Checks: C-36091r3_chk

Check the mode of the xinetd configuration files. Procedure: # ls -lL /etc/xinetd.conf # ls -lL /etc/xinetd.d If the mode of the file(s) is more permissive than 0640, this is a finding.

Fix: F-31338r3_fix

Change the mode of the xinetd configuration files. # chmod 0640 /etc/xinetd.conf /etc/xinetd.d/*

b
The services file must be owned by root or bin.
AC-6 - Medium - CCI-000225 - V-823 - SV-37424r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003760
Vuln IDs
  • V-823
Rule IDs
  • SV-37424r1_rule
Failure to give ownership of sensitive files or utilities to root or bin provides the designated owner and unauthorized users with the potential to access sensitive information or change the system configuration possibly weakening the system's security posture.System AdministratorECLP-1
Checks: C-36105r1_chk

Check the ownership of the services file. Procedure: # ls -lL /etc/services If the services file is not owned by root or bin, this is a finding.

Fix: F-31351r1_fix

Change the ownership of the services file to root or bin. Procedure: # chown root /etc/services

b
The services file must have mode 0644 or less permissive.
AC-6 - Medium - CCI-000225 - V-824 - SV-37426r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003780
Vuln IDs
  • V-824
Rule IDs
  • SV-37426r1_rule
The services file is critical to the proper operation of network services and must be protected from unauthorized modification. Unauthorized modification could result in the failure of network services.System AdministratorECLP-1
Checks: C-36107r1_chk

Check the mode of the services file. Procedure: # ls -lL /etc/services If the services file has a mode more permissive than 0644, this is a finding

Fix: F-31353r1_fix

Change the mode of the services file to 0644 or less permissive. Procedure: # chmod 0644 /etc/services

a
Global initialization files must contain the "mesg -n" or "mesg n" commands.
CM-6 - Low - CCI-000366 - V-825 - SV-37289r1_rule
RMF Control
CM-6
Severity
Low
CCI
CCI-000366
Version
GEN001780
Vuln IDs
  • V-825
Rule IDs
  • SV-37289r1_rule
If the "mesg -n" or "mesg n" command is not placed into the system profile, messaging can be used to cause a Denial of Service attack.System AdministratorECSC-1
Checks: C-35983r1_chk

Check global initialization files for the presence of "mesg -n" or "mesg n". Procedure: # grep "mesg" etc/bashrc /etc/csh.cshrc /etc/csh.login /etc/csh.logout /etc/environment /etc/ksh.kshrc /etc/profile /etc/suid_profile /etc/profile.d/* If no global initialization files contain "mesg -n" or "mesg n", this is a finding.

Fix: F-31237r1_fix

Edit /etc/profile or another global initialization script, and add the "mesg -n" command.

b
The hosts.lpd file (or equivalent) must not contain a + character.
CM-6 - Medium - CCI-000366 - V-827 - SV-37447r2_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN003900
Vuln IDs
  • V-827
Rule IDs
  • SV-37447r2_rule
Having the '+' character in the hosts.lpd (or equivalent) file allows all hosts to use local system print resources.System Administrator
Checks: C-36119r2_chk

RHEL uses "cups" print service. Verify remote host access is limited. Procedure: # grep -i Listen /etc/cups/cupsd.conf The /etc/cups/cupsd.conf file must not contain a Listen *:&lt;port&gt; or equivalent line. If the network address of the "Listen" line is unrestricted, this is a finding. # grep -i "Allow From" /etc/cups/cupsd.conf The "Allow From" line within the "&lt;Location /&gt;" element should limit access to the printers to @LOCAL and specific hosts. If the "Allow From" line contains "All" this is a finding

Fix: F-31365r1_fix

Configure cups to use only the localhost or specified remote hosts. Procedure: Modify the /etc/cups/cupsd.conf file to "Listen" only to the local machine or a known set of hosts (i.e., Listen localhost:631). Modify the /etc/cups/cupsd.conf file "<Location />" element to "Deny From All" and "Allow from 127.0.0.1" or allowed host addresses. Restart cups: # service cups restart

b
The hosts.lpd (or equivalent) file must be owned by root, bin, sys, or lp.
AC-6 - Medium - CCI-000225 - V-828 - SV-37448r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003920
Vuln IDs
  • V-828
Rule IDs
  • SV-37448r1_rule
Failure to give ownership of the hosts.lpd file to root, bin, sys, or lp provides the designated owner, and possible unauthorized users, with the potential to modify the hosts.lpd file. Unauthorized modifications could disrupt access to local printers from authorized remote hosts or permit unauthorized remote access to local printers.System AdministratorECLP-1
Checks: C-36120r1_chk

Check the ownership of the print service configuration file. Procedure: # ls -lL /etc/cups/printers.conf; If no print service configuration file is found, this is not applicable. If the owner of the file is not root, this is a finding

Fix: F-31366r3_fix

Change the owner of the /etc/cups/printers.conf to root. Procedure: # chown root /etc/cups/printers.conf

b
The hosts.lpd (or equivalent) must have mode 0644 or less permissive.
AC-6 - Medium - CCI-000225 - V-829 - SV-37461r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003940
Vuln IDs
  • V-829
Rule IDs
  • SV-37461r1_rule
Excessive permissions on the hosts.lpd (or equivalent) file may permit unauthorized modification. Unauthorized modifications could disrupt access to local printers from authorized remote hosts or permit unauthorized remote access to local printers.System AdministratorECLP-1
Checks: C-36127r1_chk

Check the mode of the print service configuration file. Procedure: # ls -lL /etc/cups/printers.conf If no print service configuration file is found, this is not applicable. If the mode of the print service configuration file is more permissive than 0664, this is a finding.

Fix: F-31371r1_fix

Change the mode of the /etc/cups/printers.conf file to 0664 or less permissive. Procedure: # chmod 0664 /etc/cups/printers.conf

b
The alias file must be owned by root.
AC-6 - Medium - CCI-000225 - V-831 - SV-37472r2_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN004360
Vuln IDs
  • V-831
Rule IDs
  • SV-37472r2_rule
If the alias file is not owned by root, an unauthorized user may modify the file adding aliases to run malicious code or redirect e-mail.System Administrator
Checks: C-36137r2_chk

If the "sendmail" and "postfix" packages are not installed, this is not applicable. Check the ownership of the alias files. Procedure: for sendmail: # ls -lL /etc/aliases # ls -lL /etc/aliases.db If all the files are not owned by root, this is a finding. for postfix: Verify the location of the alias file. # postconf alias maps This will return the location of the "aliases" file, by default "/etc/postfix/aliases" # ls -lL &lt;postfix aliases file&gt; # ls -lL &lt;postfix aliases.db file&gt; If all the files are not owned by root, this is a finding.

Fix: F-31384r1_fix

Change the owner of the /etc/aliases file to root. Procedure: for sendmail: # chown root /etc/aliases # chown root /etc/aliases.db for postfix # chown root /etc/postfix/aliases # chown root /etc/postfix/aliases.db

b
The alias file must have mode 0644 or less permissive.
AC-6 - Medium - CCI-000225 - V-832 - SV-37475r3_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN004380
Vuln IDs
  • V-832
Rule IDs
  • SV-37475r3_rule
Excessive permissions on the aliases file may permit unauthorized modification. If the alias file is modified by an unauthorized user, they may modify the file to run malicious code or redirect e-mail.System Administrator
Checks: C-36141r3_chk

If the "sendmail" and "postfix" packages are not installed, this is not applicable. Check the permissions of the alias file. Procedure: for sendmail: # ls -lL /etc/aliases /etc/aliases.db If an alias file has a mode more permissive than 0644, this is a finding. for postfix: Verify the location of the alias file. # postconf alias_maps This will return the location of the "aliases" file, by default "/etc/postfix/aliases". # ls -lL &lt;postfix aliases file&gt; &lt;postfix aliases.db file&gt; If an alias file has a mode more permissive than 0644, this is a finding.

Fix: F-31387r2_fix

Change the mode of the alias files as needed to function. No higher than 0644. Procedure: for sendmail: # chmod 0644 /etc/aliases /etc/aliases.db for postfix (assuming the default postfix directory): # chmod 0644 /etc/postfix/aliases /etc/postfix/aliases.db

c
Files executed through a mail aliases file must be owned by root and must reside within a directory owned and writable only by root.
AC-6 - High - CCI-000225 - V-833 - SV-37491r1_rule
RMF Control
AC-6
Severity
High
CCI
CCI-000225
Version
GEN004400
Vuln IDs
  • V-833
Rule IDs
  • SV-37491r1_rule
If a file executed through a mail aliases file is not owned and writable only by root, it may be subject to unauthorized modification. Unauthorized modification of files executed through aliases may allow unauthorized users to attain root privileges.System AdministratorECLP-1
Checks: C-36149r1_chk

Verify the ownership of files referenced within the sendmail aliases file. Procedure: # more /etc/aliases Examine the aliases file for any utilized directories or paths. # ls -lL &lt;directory or file path&gt; Check the owner for any paths referenced. Check if the file or parent directory is owned by root. If not, this is a finding.

Fix: F-31398r1_fix

Edit the /etc/aliases file (alternatively, /usr/lib/sendmail.cf). Locate the entries executing a program. They will appear similar to the following line: Aliasname: : /usr/local/bin/ls (or some other program name) Ensure root owns the programs and the directory(ies) they reside in by using the chown command to change owner to root. Procedure: # chown root <file or directory name>

b
Files executed through a mail aliases file must have mode 0755 or less permissive.
AC-6 - Medium - CCI-000225 - V-834 - SV-37494r2_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN004420
Vuln IDs
  • V-834
Rule IDs
  • SV-37494r2_rule
If a file executed through a mail aliases file has permissions greater than 0755, it can be modified by an unauthorized user and may contain malicious code or instructions potentially compromising the system.System Administrator
Checks: C-36152r4_chk

If the "sendmail" package is not installed, this is not applicable. Examine the contents of the /etc/aliases file. Procedure: # more /etc/aliases Examine the aliases file for any referenced programs, which are specified with the pipe (|) symbol. # ls -lL &lt;file referenced from aliases&gt; Check the permissions for any paths referenced. If any file referenced from the aliases file has a mode more permissive than 0755, this is a finding.

Fix: F-31403r2_fix

Use the chmod command to change the access permissions for files executed from the alias file. For example: # chmod 0755 filename

a
Sendmail logging must not be set to less than nine in the sendmail.cf file.
CM-6 - Low - CCI-000366 - V-835 - SV-37497r2_rule
RMF Control
CM-6
Severity
Low
CCI
CCI-000366
Version
GEN004440
Vuln IDs
  • V-835
Rule IDs
  • SV-37497r2_rule
If Sendmail is not configured to log at level 9, system logs may not contain the information necessary for tracking unauthorized use of the sendmail service.System Administrator
Checks: C-36154r3_chk

If the "sendmail" package is not installed, this is not applicable. Check if sendmail logging is set to level nine: Procedure: for sendmail: # grep "O L" /etc/mail/sendmail.cf OR # grep LogLevel /etc/mail/sendmail.cf If logging is set to less than nine, this is a finding. for Postfix: This rule is not applicable to postfix which does not use "log levels" in the same fashion as sendmail.

Fix: F-31405r2_fix

Edit the sendmail.cf file, locate the "O L" or "LogLevel" entry and change it to 9.

b
The system syslog service must log informational and more severe SMTP service messages.
AU-2 - Medium - CCI-000126 - V-836 - SV-37500r3_rule
RMF Control
AU-2
Severity
Medium
CCI
CCI-000126
Version
GEN004460
Vuln IDs
  • V-836
Rule IDs
  • SV-37500r3_rule
If informational and more severe SMTP service messages are not logged, malicious activity on the system may go unnoticed.System Administrator
Checks: C-36156r2_chk

Check the syslog configuration file for mail.crit logging configuration. Depending on what system is used for log processing either /etc/syslog.conf or /etc/rsyslog.conf will be the logging configuration file. Procedure: # grep "mail\." /etc/syslog.conf Or: #grep "mail\." /etc/syslog.conf If syslog is not configured to log critical sendmail messages ("mail.crit" or "mail.*"), this is a finding.

Fix: F-31407r4_fix

Edit the syslog.conf or rsyslog.conf file and add a configuration line specifying an appropriate destination for "mail.crit" or "mail.*" syslog messages.

b
The SMTP service log file must be owned by root.
AC-6 - Medium - CCI-000225 - V-837 - SV-37501r3_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN004480
Vuln IDs
  • V-837
Rule IDs
  • SV-37501r3_rule
If the SMTP service log file is not owned by root, then unauthorized personnel may modify or delete the file to hide a system compromise.System Administrator
Checks: C-36158r4_chk

Locate any mail log files by checking the syslog configuration file. Procedure: The check procedure is the same for both sendmail and Postfix. Identify any log files configured for the "mail" service (excluding mail.none) at any severity level and check the ownership. Depending on what system is used for log processing, either /etc/syslog.conf or /etc/rsyslog.conf will be the logging configuration file. For syslog: # egrep "mail\.[^n][^/]*" /etc/syslog.conf|sed 's/^[^/]*//'|xargs ls -lL For rsyslog: # egrep "mail\.[^n][^/]*" /etc/rsyslog.conf|sed 's/^[^/]*//'|xargs ls -lL If any mail log file is not owned by root, this is a finding.

Fix: F-31408r1_fix

Change the ownership of the sendmail log file. Procedure: The fix procedure is the same for both sendmail and Postfix. # chown root <sendmail log file>

b
The SMTP service log file must have mode 0644 or less permissive.
AC-6 - Medium - CCI-000225 - V-838 - SV-37502r3_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN004500
Vuln IDs
  • V-838
Rule IDs
  • SV-37502r3_rule
If the SMTP service log file is more permissive than 0644, unauthorized users may be allowed to change the log file.System Administrator
Checks: C-36159r4_chk

Check the mode of the SMTP service log file. Procedure: The check procedure is the same for both sendmail and Postfix. Identify any log files configured for the "mail" service (excluding mail.none) at any severity level and check the permissions. Depending on what system is used for log processing, either /etc/syslog.conf or /etc/rsyslog.conf will be the logging configuration file. For syslog: # egrep "mail\.[^n][^/]*" /etc/syslog.conf|sed 's/^[^/]*//'|xargs ls -lL For rsyslog: # egrep "mail\.[^n][^/]*" /etc/rsyslog.conf|sed 's/^[^/]*//'|xargs ls -lL If the log file permissions are greater than 0644, this is a finding.

Fix: F-31410r1_fix

Change the mode of the SMTP service log file. Procedure: The fix procedure is the same for both sendmail and Postfix. # chmod 0644 <sendmail log file>

b
The ftpusers file must exist.
AC-6 - Medium - CCI-000225 - V-840 - SV-51983r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN004880
Vuln IDs
  • V-840
Rule IDs
  • SV-51983r1_rule
The ftpusers file contains a list of accounts not allowed to use FTP to transfer files. If this file does not exist, then unauthorized accounts can utilize FTP.System Administrator
Checks: C-36189r1_chk

Check for the existence of the ftpusers file. Procedure: For gssftp: # ls -l /etc/ftpusers For vsftp: # ls -l /etc/vsftpd.ftpusers or # ls -l /etc/vsftpd/ftpusers If the appropriate ftpusers file for the running FTP service does not exist, this is a finding.

Fix: F-45028r1_fix

Create an ftpusers file appropriate for the running FTP service. For gssftp: Create an /etc/ftpusers file containing a list of accounts not authorized for FTP. For vsftp: Create an /etc/vsftpd.ftpusers or /etc/vsftpd/ftpusers (as appropriate) file containing a list of accounts not authorized for FTP.

b
The ftpusers file must contain account names not allowed to use FTP.
AC-6 - Medium - CCI-000225 - V-841 - SV-52091r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN004900
Vuln IDs
  • V-841
Rule IDs
  • SV-52091r1_rule
The ftpusers file contains a list of accounts not allowed to use FTP to transfer files. If the file does not contain the names of all accounts not authorized to use FTP, then unauthorized use of FTP may take place.System Administrator
Checks: C-36191r1_chk

Check the contents of the ftpusers file. For gssftp: # more /etc/ftpusers For vsftp: # more /etc/vsftpd.ftpusers /etc/vfsftpd/ftpusers If the system has accounts not allowed to use FTP and not listed in the ftpusers file, this is a finding.

Fix: F-45121r1_fix

For gssftp: Add accounts not allowed to use FTP to the /etc/ftpusers file. For vsftp: Add accounts not allowed to use FTP to the /etc/vsftpd.ftpusers or /etc/vsftpd/ftpusers file (as appropriate).

b
The ftpusers file must be owned by root.
AC-6 - Medium - CCI-000225 - V-842 - SV-37537r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN004920
Vuln IDs
  • V-842
Rule IDs
  • SV-37537r1_rule
If the file ftpusers is not owned by root, an unauthorized user may modify the file to allow unauthorized accounts to use FTP.System AdministratorECLP-1
Checks: C-36195r1_chk

Check the ownership of the ftpusers file. Procedure: For gssftp: # ls -l /etc/ftpusers For vsftp: # ls -l /etc/vsftpd.ftpusers /etc/vsftpd/ftpusers If the ftpusers file is not owned by root, this is a finding

Fix: F-31452r1_fix

Change the owner of the ftpusers file to root. For gssftp: # chown root /etc/ftpusers For vsftp: # chown root /etc/vsftpd.ftpusers /etc/vsftpd/ftpusers

b
The ftpusers file must have mode 0640 or less permissive.
AC-6 - Medium - CCI-000225 - V-843 - SV-37542r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN004940
Vuln IDs
  • V-843
Rule IDs
  • SV-37542r1_rule
Excessive permissions on the ftpusers file could permit unauthorized modification. Unauthorized modification could result in Denial of Service to authorized FTP users or permit unauthorized users to access the FTP service.System AdministratorECLP-1
Checks: C-36199r1_chk

Check the permissions of the ftpusers file. Procedure: For gssftp: # ls -l /etc/ftpusers For vsftp: # ls -l /etc/vsftpd.ftpusers /etc/vsftpd/ftpusers If the ftpusers file has a mode more permissive than 0640, this is a finding.

Fix: F-31457r1_fix

Change the mode of the ftpusers file to 0640. Procedure: For gssftp: # chmod 0640 /etc/ftpusers For vsftp: # chmod 0640 /etc/vsftpd.ftpusers /etc/vsftpd/ftpusers

a
The FTP daemon must be configured for logging or verbose mode.
AU-3 - Low - CCI-000130 - V-845 - SV-37547r1_rule
RMF Control
AU-3
Severity
Low
CCI
CCI-000130
Version
GEN004980
Vuln IDs
  • V-845
Rule IDs
  • SV-37547r1_rule
The -l option allows basic logging of connections. The verbose (on HP) and the debug (on Solaris) allow logging of what files the ftp session transferred. This extra logging makes it possible to easily track which files are being transferred onto or from a system. If they are not configured, the only option for tracking is the audit files. The audit files are much harder to read. If auditing is not properly configured, then there would be no record at all of the file transfer transactions.System AdministratorECAR-1, ECAR-2, ECAR-3
Checks: C-36202r2_chk

Find if logging is applied to the ftp daemon. The procedure depends on the implementation of ftpd used by the system. Procedures: For vsftpd: If vsftpd is started by xinetd: #grep vsftpd /etc/xinetd.d/* This will indicate the xinetd.d startup file #grep server_args &lt;vsftpd xinetd.d startup file&gt; This will indicate the vsftpd config file used when starting through xinetd. If the line is missing then "/etc/vsftpd/vsftpd.conf", the default config file, is used. #grep xferlog_enable &lt;vsftpd config file&gt; If "xferlog_enable" is missing or is not set to "yes", this is a finding. If vsftp is not started by xinetd: #grep xferlog_enable /etc/vsftpd/vsftpd.conf If "xferlog_enable" is missing or is not set to "yes", this is a finding. For gssftp: Find if the -l option will be applied when xinetd starts gssftp # grep server_args /etc/xinetd.d/gssftp If the line is missing or does not contain at least one -l, this is a finding.

Fix: F-31461r1_fix

Enable logging by changing ftpd startup or config files. Procedure: The procedure depends on the implementation of ftpd used by the system. For vsftpd: Ensure the server settings in "/etc/vsftpd.conf" (or other configuration file specified by the vaftpd xinetd.d startup file) contains: xferlog_enable = yes For gssftp: If the "disable" server setting is missing or set to "no" in "/etc/xinetd.d/gssftp" then ensure the server settings in "/etc/xinetd.d/gssftp" contains: server_args = -l The -l option may be added up to three times. Each -l will provide increasing verbosity on the log. Refer to the main page for ftpd for more information. For both if started using xinetd: If the "disable" server setting is missing or set to "no" in the /etc/xinetd.d startup file then ensure the server settings contains: log_on_success += DURATION USERID This will log the startup and shutdown of the daemon. log_on_failure += HOST USERID

b
Anonymous FTP must not be active on the system unless authorized.
AC-22 - Medium - CCI-001475 - V-846 - SV-37526r1_rule
RMF Control
AC-22
Severity
Medium
CCI
CCI-001475
Version
GEN004820
Vuln IDs
  • V-846
Rule IDs
  • SV-37526r1_rule
Due to the numerous vulnerabilities inherent in anonymous FTP, it is not recommended. If anonymous FTP must be used on a system, the requirement must be authorized and approved in the system accreditation package.trueInformation Assurance OfficerSystem AdministratorECSC-1
Checks: C-36185r1_chk

Attempt to log into this host with a user name of anonymous and a password of guest (also try the password of guest@mail.com). If the logon is successful and the use of anonymous ftp has not been documented and approved by the IAO, this is a finding. Procedure: # ftp localhost Name: anonymous 530 Guest login not allowed on this machine.

Fix: F-31440r1_fix

Configure the FTP service to not permit anonymous logins.

c
The TFTP daemon must operate in "secure mode" which provides access only to a single directory on the host file system.
CM-6 - High - CCI-000366 - V-847 - SV-37560r1_rule
RMF Control
CM-6
Severity
High
CCI
CCI-000366
Version
GEN005080
Vuln IDs
  • V-847
Rule IDs
  • SV-37560r1_rule
Secure mode limits TFTP requests to a specific directory. If TFTP is not running in secure mode, it may be able to write to any file or directory and may seriously impair system integrity, confidentiality, and availability.System AdministratorECSC-1
Checks: C-36211r1_chk

# grep server_args /etc/xinetd.d/tftp If the "-s" parameter is not specified, this is a finding.

Fix: F-31470r1_fix

Edit /etc/xinetd.d/tftp file and specify the "-s" parameter in server_args.

c
The TFTP daemon must have mode 0755 or less permissive.
AC-6 - High - CCI-000225 - V-848 - SV-37564r1_rule
RMF Control
AC-6
Severity
High
CCI
CCI-000225
Version
GEN005100
Vuln IDs
  • V-848
Rule IDs
  • SV-37564r1_rule
If TFTP runs with the setuid or setgid bit set, it may be able to write to any file or directory and may seriously impair system integrity, confidentiality, and availability.System AdministratorECPA-1
Checks: C-36213r1_chk

Check the mode of the TFTP daemon. Procedure: # grep "server " /etc/xinetd.d/tftp # ls -lL &lt;in.tftpd binary&gt; If the mode of the file is more permissive than 0755, this is a finding.

Fix: F-31473r1_fix

Change the mode of the TFTP daemon. Procedure: # chmod 0755 <in.tftpd binary>

b
The TFTP daemon must be configured to vendor specifications, including a dedicated TFTP user account, a non-login shell such as /bin/false, and a home directory owned by the TFTP user.
AC-6 - Medium - CCI-000225 - V-849 - SV-37674r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN005120
Vuln IDs
  • V-849
Rule IDs
  • SV-37674r1_rule
If TFTP has a valid shell, it increases the likelihood someone could log on to the TFTP account and compromise the system.System AdministratorECSC-1
Checks: C-36862r1_chk

Check the /etc/passwd file to determine if TFTP is configured properly. Procedure: Check if TFTP if used. # grep disable /etc/xinetd.d/tftp If the file does not exist or the returned line indicates "yes", then this is not a finding. Otherwise, if the returned line indicates "no" then TFTP is enabled and must use a dedicated "tftp" user. # grep user /etc/xinetd.d/tftp If the returned line indicates a user other than the dedicated "tftp" user, this is a finding. # grep tftp /etc/passwd If a "tftp" user account does not exist and TFTP is active, this is a finding. Check the user shell for the "tftp" user. If it is not /bin/false or equivalent, this is a finding. Check the home directory assigned to the "tftp" user. If no home directory is set, or the directory specified is not dedicated to the use of the TFTP service, this is a finding.

Fix: F-31798r1_fix

Configure TFTP to use a dedicated "tftp" user. Procedure: Create a dedicated "tftp" user account if none exists. Assign a non-login shell to the "tftp" user account, such as /bin/false. Assign a home directory to the "tftp" user account. Edit /etc/xinetd.d/tftp to have "tftp" as the value of the "user" parameter.

b
Any X Windows host must write .Xauthority files.
CM-2 - Medium - CCI-000297 - V-850 - SV-37678r3_rule
RMF Control
CM-2
Severity
Medium
CCI
CCI-000297
Version
GEN005160
Vuln IDs
  • V-850
Rule IDs
  • SV-37678r3_rule
.Xauthority files ensure the user is authorized to access specific X Windows host. If .Xauthority files are not used, it may be possible to obtain unauthorized access to the X Windows host.System Administrator
Checks: C-36865r5_chk

Check for .Xauthority or .xauth files being utilized by looking for such files in the home directory of a user. Procedure: # find / -name '.xauth*' | more If no .xauth files are found in a user's home directory, ensure that Xwindows is not active on the system by performing the command: # ps -ef | grep X If Xwindows is not running, this rule is not applicable. If the .Xauthority or .xauth (followed by apparently random characters) files do not exist, ask the SA if the user is using Xwindows. If the user is utilizing Xwindows and none of these files exist, this is a finding.

Fix: F-31811r2_fix

Ensure the X Windows host is configured to write .Xauthority files into user home directories. Edit the Xaccess file. Ensure the line writing the .Xauthority file is uncommented.

b
The Network Information System (NIS) protocol must not be used.
AC-17 - Medium - CCI-001435 - V-867 - SV-37742r1_rule
RMF Control
AC-17
Severity
Medium
CCI
CCI-001435
Version
GEN006400
Vuln IDs
  • V-867
Rule IDs
  • SV-37742r1_rule
Due to numerous security vulnerabilities existing within NIS, it must not be used. Possible alternative directory services are NIS+ and LDAP.System AdministratorInformation Assurance OfficerECSC-1
Checks: C-36937r2_chk

Perform the following to determine if NIS is active on the system: # ps -ef | grep ypbind If NIS is found active on the system, this is a finding.

Fix: F-32202r1_fix

Disable the use of NIS/NIS+. Use as a replacement Kerberos or LDAP.

a
All interactive users must be assigned a home directory in the /etc/passwd file.
AC-6 - Low - CCI-000225 - V-899 - SV-37375r1_rule
RMF Control
AC-6
Severity
Low
CCI
CCI-000225
Version
GEN001440
Vuln IDs
  • V-899
Rule IDs
  • SV-37375r1_rule
If users do not have a valid home directory, there is no place for the storage and control of files they own.System AdministratorECSC-1
Checks: C-36062r1_chk

Use pwck to verify home directory assignments are present. # pwck If any user is not assigned a home directory, this is a finding.

Fix: F-31306r1_fix

Assign a home directory to any user without one.

a
All interactive user home directories defined in the /etc/passwd file must exist.
AC-6 - Low - CCI-000225 - V-900 - SV-37379r1_rule
RMF Control
AC-6
Severity
Low
CCI
CCI-000225
Version
GEN001460
Vuln IDs
  • V-900
Rule IDs
  • SV-37379r1_rule
If a user has a home directory defined that does not exist, the user may be given the / directory, by default, as the current working directory upon logon. This could create a Denial of Service because the user would not be able to perform useful tasks in this location.System AdministratorECSC-1
Checks: C-36066r1_chk

Use pwck to verify assigned home directories exist. # pwck If any user's assigned home directory does not exist, this is a finding.

Fix: F-31310r1_fix

If a user has no home directory, determine why. If possible, delete accounts without a home directory. If the account is valid, then create the home directory using the appropriate system administration utility or manually. For instance: mkdir directoryname; copy the skeleton files into the directory; chown accountname for the new directory and the skeleton files. Document all changes.

b
All user home directories must have mode 0750 or less permissive.
AC-6 - Medium - CCI-000225 - V-901 - SV-37154r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001480
Vuln IDs
  • V-901
Rule IDs
  • SV-37154r1_rule
Excessive permissions on home directories allow unauthorized access to user files.System AdministratorECLP-1
Checks: C-37524r1_chk

Check the home directory mode of each user in /etc/passwd. Procedure: # cut -d: -f6 /etc/passwd|sort|uniq|xargs -n1 ls -ld If a user home directory's mode is more permissive than 0750, this is a finding. Note: Application directories are allowed and may need 0755 permissions (or greater) for correct operation.

Fix: F-32772r1_fix

Change the mode of user home directories to 0750 or less permissive. Procedure (example): # chmod 0750 <home directory> Note: Application directories are allowed and may need 0755 permissions (or greater) for correct operation.

b
All interactive user home directories must be owned by their respective users.
AC-6 - Medium - CCI-000225 - V-902 - SV-37163r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001500
Vuln IDs
  • V-902
Rule IDs
  • SV-37163r1_rule
If users do not own their home directories, unauthorized users could access user files.System AdministratorECLP-1
Checks: C-37526r1_chk

Check the ownership of each user home directory listed in the /etc/passwd file. Procedure: # cut -d : -f 6 /etc/passwd | xargs -n1 ls -ld If any user home directory is not owned by the assigned user, this is a finding.

Fix: F-1056r2_fix

Change the owner of a user's home directory to its assigned user. Procedure: # chown <user> <home directory>

b
All interactive user home directories must be group-owned by the home directory owner's primary group.
AC-6 - Medium - CCI-000225 - V-903 - SV-37168r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001520
Vuln IDs
  • V-903
Rule IDs
  • SV-37168r1_rule
If the Group Identifier (GID) of the home directory is not the same as the GID of the user, this would allow unauthorized access to files.System AdministratorECLP-1
Checks: C-37527r2_chk

Check the group ownership for each user in the /etc/passwd file. Procedure: # cut -d : -f 6 /etc/passwd | xargs -n1 ls -ld If any user home directory is not group-owned by the assigned user's primary group, this is a finding. Home directories for application accounts requiring different group ownership must be documented using site-defined procedures.

Fix: F-32773r1_fix

Change the group-owner for user home directories to the primary group of the assigned user. Procedure: Find the primary group of the user (GID) which is the fourth field of the user entry in /etc/passwd. # chgrp <GID> <user home directory> Document all changes.

b
All local initialization files must be owned by the home directorys user or root.
AC-6 - Medium - CCI-000225 - V-904 - SV-37430r3_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001860
Vuln IDs
  • V-904
Rule IDs
  • SV-37430r3_rule
Local initialization files are used to configure the user's shell environment upon login. Malicious modification of these files could compromise accounts upon logon.System Administrator
Checks: C-35939r3_chk

NOTE: The following commands must be run in the BASH shell. Check the ownership of local initialization files. Procedure: # ls -al /&lt;usershomedirectory&gt;/.login # ls -al /&lt;usershomedirectory&gt;/.cshrc # ls -al /&lt;usershomedirectory&gt;/.logout # ls -al /&lt;usershomedirectory&gt;/.profile # ls -al /&lt;usershomedirectory&gt;/.bash_profile # ls -al /&lt;usershomedirectory&gt;/.bashrc # ls -al /&lt;usershomedirectory&gt;/.bash_logout # ls -al /&lt;usershomedirectory&gt;/.env # ls -al /&lt;usershomedirectory&gt;/.dtprofile # ls -al /&lt;usershomedirectory&gt;/.dispatch # ls -al /&lt;usershomedirectory&gt;/.emacs # ls -al /&lt;usershomedirectory&gt;/.exrc # find /&lt;usershomedirectory&gt;/.dt ! -fstype nfs ! -user &lt;username&gt; -exec ls -ld {} \; If local initialization files are not owned by the home directory's user, this is a finding.

Fix: F-31196r2_fix

Change the ownership of the startup and login files in the user's directory to the user or root, as appropriate. Examine each user's home directory and verify all filenames beginning with "." are owned by the owner of the directory or root. If they are not, use the chown command to change the owner to the user and research the reasons why the owners were not assigned as required. Procedure: # chown username .filename Document all changes.

b
All local initialization files must have mode 0740 or less permissive.
AC-6 - Medium - CCI-000225 - V-905 - SV-37431r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001880
Vuln IDs
  • V-905
Rule IDs
  • SV-37431r1_rule
Local initialization files are used to configure the user's shell environment upon login. Malicious modification of these files could compromise accounts upon logon.System AdministratorECLP-1
Checks: C-36108r1_chk

Check the modes of local initialization files. Procedure: # ls -al /&lt;usershomedirectory&gt;/.bashrc # ls -al /&lt;usershomedirectory&gt;/.bash_login # ls -al /&lt;usershomedirectory&gt;/.bash_logout # ls -al /&lt;usershomedirectory&gt;/.bash_profile # ls -al /&lt;usershomedirectory&gt;/.cshrc # ls -al /&lt;usershomedirectory&gt;/.kshrc # ls -al /&lt;usershomedirectory&gt;/.login # ls -al /&lt;usershomedirectory&gt;/.logout # ls -al /&lt;usershomedirectory&gt;/.profile # ls -al /&lt;usershomedirectory&gt;/.tcshrc # ls -al /&lt;usershomedirectory&gt;/.env # ls -al /&lt;usershomedirectory&gt;/.dtprofile (permissions should be 0755) # ls -al /&lt;usershomedirectory&gt;/.dispatch # ls -al /&lt;usershomedirectory&gt;/.emacs # ls -al /&lt;usershomedirectory&gt;/.exrc # find /&lt;usershomedirectory&gt;/.dt ! -fstype nfs \( -perm -0002 -o -perm -0020 \) -exec ls -ld {} \; (permissions not to be more permissive than 0755) If local initialization files are more permissive than 0740 or the .dt directory is more permissive than 0755 or the .dtprofile file is more permissive than 0755, this is a finding.

Fix: F-31202r1_fix

Ensure user startup files have permissions of 0740 or more restrictive. Examine each user's home directory and verify all file names beginning with "." have access permissions of 0740 or more restrictive. If they do not, use the chmod command to correct the vulnerability. Procedure: # chmod 0740 .filename Note: The period is part of the file name and is required.

b
All run control scripts must have mode 0755 or less permissive.
AC-6 - Medium - CCI-000225 - V-906 - SV-37192r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001580
Vuln IDs
  • V-906
Rule IDs
  • SV-37192r1_rule
If the startup files are writable by other users, they could modify the startup files to insert malicious commands into the startup files.System AdministratorECLP-1
Checks: C-37531r1_chk

Check run control script modes. # cd /etc # ls -lL rc* # cd /etc/init.d # ls -l If any run control script has a mode more permissive than 0755, this is a finding.

Fix: F-32777r1_fix

Ensure all system startup files have mode 0755 or less permissive. Examine the "rc" files, and all files in the rc1.d (rc2.d, and so on) directories, and in the /etc/init.d directory to ensure they are not world-writable. If they are world-writable, use the chmod command to correct the vulnerability and research why they are world-writable. Procedure: # chmod 755 <startup file>

b
Run control scripts executable search paths must contain only authorized paths.
CM-6 - Medium - CCI-000366 - V-907 - SV-37202r4_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN001600
Vuln IDs
  • V-907
Rule IDs
  • SV-37202r4_rule
The executable search path (typically the PATH environment variable) contains a list of directories for the shell to search to find executables. If this path includes the current working directory or other relative paths, executables in these directories may be executed instead of system commands. This variable is formatted as a colon-separated list of directories. If there is an empty entry, such as a leading or trailing colon, two consecutive colons, or a single period, this is interpreted as the current working directory. Paths starting with a slash (/) are absolute paths.System Administrator
Checks: C-37533r6_chk

Verify run control scripts' library search paths. # grep -r '\bPATH\b' /etc/rc* /etc/init.d This variable is formatted as a colon-separated list of directories. Relative path entries must be documented with the ISSO. If there is an empty entry, such as a leading or trailing colon, or two consecutive colons, this is a finding. If an entry begins with a character other than a slash (/), or has not been documented with the ISSO, this is a finding.

Fix: F-32779r3_fix

Edit the run control script and remove any relative path entries from the executable search path variable that are not documented with the ISSO. Edit the run control script and remove any empty entry that is defined.

c
Run control scripts must not execute world-writable programs or scripts.
AC-6 - High - CCI-000225 - V-910 - SV-38154r2_rule
RMF Control
AC-6
Severity
High
CCI
CCI-000225
Version
GEN001640
Vuln IDs
  • V-910
Rule IDs
  • SV-38154r2_rule
World-writable files could be modified accidentally or maliciously to compromise system integrity.System Administrator
Checks: C-402r9_chk

Check the permissions on the files or scripts executed from system startup scripts to see if they are world-writable. Create a list of all potential run command level scripts. # ls -l /etc/init.d/* | tr '\011' ' ' | tr -s ' ' | cut -f 9,9 -d " " OR # ls -l /sbin/init.d/* | tr '\011' ' ' | tr -s ' ' | cut -f 9,9 -d " " Create a list of world writeable files. # find / -perm -002 -type f &gt;&gt; worldWriteableFileList Determine if any of the world writeable files in worldWriteableFileList are called from the run command level scripts. Note: Depending upon the number of scripts vs world writeable files, it may be easier to inspect the scripts manually. # more `ls -l /etc/init.d/* | tr '\011' ' ' | tr -s ' ' | cut -f 9,9 -d " "` OR # more `ls -l /sbin/init.d/* | tr '\011' ' ' | tr -s ' ' | cut -f 9,9 -d " "` If any system startup script executes any file or script that is world-writable, this is a finding.

Fix: F-1064r2_fix

Remove the world-writable permission from programs or scripts executed by run control scripts. Procedure: # chmod o-w <program or script executed from run control script>

b
There must be no .netrc files on the system.
IA-5 - Medium - CCI-000196 - V-913 - SV-37436r1_rule
RMF Control
IA-5
Severity
Medium
CCI
CCI-000196
Version
GEN002000
Vuln IDs
  • V-913
Rule IDs
  • SV-37436r1_rule
Unencrypted passwords for remote FTP servers may be stored in .netrc files. Policy requires passwords be encrypted in storage and not used in access scripts.System AdministratorIAIA-1, IAIA-2
Checks: C-36051r1_chk

Check the system for the existence of any .netrc files. Procedure: # find / -name .netrc If any .netrc file exists, this is a finding.

Fix: F-31295r1_fix

Remove the .netrc file(s). Procedure: # find / -name .netrc # rm <.netrc file>

a
All files and directories contained in interactive user home directories must be owned by the home directory's owner.
AC-6 - Low - CCI-000225 - V-914 - SV-37175r1_rule
RMF Control
AC-6
Severity
Low
CCI
CCI-000225
Version
GEN001540
Vuln IDs
  • V-914
Rule IDs
  • SV-37175r1_rule
If users do not own the files in their directories, unauthorized users may be able to access them. Additionally, if files are not owned by the user, this could be an indication of system compromise.trueInformation Assurance OfficerSystem AdministratorECCD-1, ECCD-2
Checks: C-37528r1_chk

For each user in the /etc/passwd file, check for the presence of files and directories within the user's home directory not owned by the home directory owner. Procedure: # find /&lt;usershomedirectory&gt; ! -fstype nfs ! -user &lt;username&gt; ! \( -name .bashrc -o -name .bash_login -o -name .bash_logout -o -name .bash_profile -o -name .cshrc -o -name .kshrc -o -name .login -o -name .logout -o -name .profile -o -name .tcshrc -o -name .env -o -name .dtprofile -o -name .dispatch -o -name .emacs -o -name .exrc \) -exec ls -ld {} \; If user home directories contain files or directories not owned by the home directory owner, this is a finding.

Fix: F-32774r1_fix

Change the ownership of files and directories in user home directories to the owner of the home directory. Procedure: # chown accountowner filename

a
All files and directories contained in user home directories must have mode 0750 or less permissive.
AC-6 - Low - CCI-000225 - V-915 - SV-37183r1_rule
RMF Control
AC-6
Severity
Low
CCI
CCI-000225
Version
GEN001560
Vuln IDs
  • V-915
Rule IDs
  • SV-37183r1_rule
Excessive permissions allow unauthorized access to user files. trueSystem AdministratorInformation Assurance OfficerECLP-1
Checks: C-37529r1_chk

For each user in the /etc/passwd file, check for files and directories with a mode more permissive than 0750. Procedure: # find /&lt;usershomedirectory&gt; ! -fstype nfs ! \( -name .bashrc -o -name .bash_login -o -name .bash_logout -o -name .bash_profile -o -name .cshrc -o -name .kshrc -o -name .login -o -name .logout -o -name .profile -o -name .tcshrc -o -name .env -o -name .dtprofile -o -name .dispatch -o -name .emacs -o -name .exrc \) \( -perm -0001 -o -perm -0002 -o -perm -0004 -o -perm -0020 -o -perm -2000 -o -perm -4000 \) -exec ls -ld {} \; If user home directories contain files or directories more permissive than 0750, this is a finding.

Fix: F-32775r1_fix

Change the mode of files and directories within user home directories to 0750. Procedure: # chmod 0750 filename Document all changes.

b
The /etc/shells (or equivalent) file must exist.
CM-6 - Medium - CCI-000366 - V-916 - SV-37390r1_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN002120
Vuln IDs
  • V-916
Rule IDs
  • SV-37390r1_rule
The shells file (or equivalent) lists approved default shells. It helps provide layered defense to the security approach by ensuring users cannot change their default shell to an unauthorized unsecure shell.System AdministratorECSC-1
Checks: C-36077r1_chk

Verify /etc/shells exists. # ls -l /etc/shells If the file does not exist, this is a finding.

Fix: F-31321r1_fix

Create a /etc/shells file containing a list of valid system shells. Consult vendor documentation for an appropriate list of system shells. Procedure: # echo "/bin/bash" >> /etc/shells # echo "/bin/csh" >> /etc/shells (Repeat as necessary for other shells.)

b
All shells referenced in /etc/passwd must be listed in the /etc/shells file, except any shells specified for the purpose of preventing logins.
CM-6 - Medium - CCI-000366 - V-917 - SV-37393r2_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN002140
Vuln IDs
  • V-917
Rule IDs
  • SV-37393r2_rule
The shells file lists approved default shells. It helps provide layered defense to the security approach by ensuring users cannot change their default shell to an unauthorized unsecure shell.System Administrator
Checks: C-36080r3_chk

Confirm the login shells referenced in the /etc/passwd file are listed in the /etc/shells file. Procedure: Determine which shells are permitted for use by users: # more /etc/shells Note: /usr/bin/false, /bin/false, /dev/null, /sbin/nologin, /bin/sync, /sbin/halt, /sbin/shutdown, (and equivalents) cannot be placed in the /etc/shells file. Determine which shells are being used: # more /etc/passwd (optionally shells found in /etc/passwd can be grepped for in /etc/shells) If any shells are found that are not in /etc/shells, or if false shells are found in /etc/shells, then this is a finding.

Fix: F-31324r3_fix

Use the "chsh" utility or edit the /etc/passwd file and correct the error by changing the default shell of the account in error to an acceptable shell name contained in the /etc/shells file. Example: # chsh -s /bin/bash testuser

b
Accounts must be locked upon 35 days of inactivity.
AC-2 - Medium - CCI-000017 - V-918 - SV-37314r2_rule
RMF Control
AC-2
Severity
Medium
CCI
CCI-000017
Version
GEN000760
Vuln IDs
  • V-918
Rule IDs
  • SV-37314r2_rule
On some systems, accounts with disabled passwords still allow access using rcp, remsh, or rlogin through equivalent remote hosts. All that is required is the remote host name and the user name match an entry in a hosts.equiv file and have a .rhosts file in the user directory. Using a shell called /bin/false or /dev/null (or an equivalent) will add a layered defense. Non-interactive accounts on the system, such as application accounts, may be documented exceptions.trueSystem AdministratorIAAC-1
Checks: C-36007r4_chk

Indications of inactive accounts are those that have no entries in the "last" log. Check the date in the "last" log to verify it is within the last 35 days or the maximum numbers of days set by the site if more restrictive. If an inactive account is not disabled via an entry in the password field in the /etc/passwd or /etc/shadow (or equivalent), check the /etc/passwd file to check if the account has a valid shell. The passwd command can also be used to list a status for an account. For example, the following may be used to provide status information on each local account: NOTE: The following must be done in the BASH shell. # cut -d: -f1 /etc/passwd | xargs -n1 passwd -S If an inactive account is found not disabled, this is a finding.

Fix: F-31259r2_fix

All inactive accounts will have /sbin/nologin (or an equivalent), as the default shell in the /etc/passwd file and have the password disabled. Examine the user accounts using the "last" command. Note the date of last login for each account. If any (other than system and application accounts) exceed 35 days or the maximum number of days set by the site, not to exceed 35 days, then disable the accounts using system-config-users tool. Alternately place a shell field of /sbin/nologin /bin/false or /dev/null in the passwd file entry for the account.

b
All shell files must be owned by root or bin.
AC-6 - Medium - CCI-000225 - V-921 - SV-37396r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN002200
Vuln IDs
  • V-921
Rule IDs
  • SV-37396r1_rule
If shell files are owned by users other than root or bin, they could be modified by intruders or malicious users to perform unauthorized actions.System AdministratorECLP-1
Checks: C-36081r1_chk

Check the ownership of the system shells. # cat /etc/shells | xargs -n1 ls -l If any shell is not owned by root or bin, this is a finding.

Fix: F-31328r1_fix

Change the ownership of the shell with incorrect ownership. # chown root <shell>

c
All shell files must have mode 0755 or less permissive.
AC-6 - High - CCI-000225 - V-922 - SV-37403r1_rule
RMF Control
AC-6
Severity
High
CCI
CCI-000225
Version
GEN002220
Vuln IDs
  • V-922
Rule IDs
  • SV-37403r1_rule
Shells with world/group write permissions give the ability to maliciously modify the shell to obtain unauthorized access.System AdministratorECLP-1
Checks: C-36087r1_chk

If /etc/shells exists, check the group ownership of each shell referenced. # cat /etc/shells | xargs -n1 ls -l Otherwise, check any shells found on the system. # find / -name "*sh" | xargs -n1 ls -l If a shell has a mode more permissive than 0755, this is a finding.

Fix: F-31334r1_fix

Change the mode of the shell. # chmod 0755 <shell>

a
The system must be checked for extraneous device files at least weekly.
CM-3 - Low - CCI-000318 - V-923 - SV-37543r3_rule
RMF Control
CM-3
Severity
Low
CCI
CCI-000318
Version
GEN002260
Vuln IDs
  • V-923
Rule IDs
  • SV-37543r3_rule
If an unauthorized device is allowed to exist on the system, there is the possibility the system may perform unauthorized operations.System AdministratorInformation Assurance Officer
Checks: C-36198r4_chk

Determine if there are any device files outside of /dev: # find / -type b -o -type c |more Check for the presence of an aide on the system: # rpm -qa | grep aide If aide is not installed, ask the SA what file integrity tool is being used to check the system. Check the global crontabs for the presence of an "aide" job to run at least weekly, if aide is installed. Otherwise, check for the presence of a cron job to run the alternate file integrity checking application. # grep aide /etc/cron*/* If a tool is being run, then the configuration file for the appropriate tool needs to be checked for selection lines for /dev and any other directories/subdirectories that contain device files. Review the process to determine if the system is checked for extraneous device files on a weekly basis. If no weekly automated or manual process is in place, this is a finding. If the process is not identifying extraneous device files, this is a finding.

Fix: F-31458r2_fix

Establish a weekly automated or manual process to create a list of device files on the system and determine if any files have been added, moved, or deleted since the last list was generated. A list of device files can be generated with this command: # find / -type b -o -type c > device-file-list

b
Device files and directories must only be writable by users with a system account or as configured by the vendor.
AC-6 - Medium - CCI-000225 - V-924 - SV-37553r3_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN002280
Vuln IDs
  • V-924
Rule IDs
  • SV-37553r3_rule
System device files in writable directories could be modified, removed, or used by an unprivileged user to control system hardware.System Administrator
Checks: C-36204r3_chk

Find all world-writable device files existing anywhere on the system. Procedure: # find / -perm -2 -a \( -type b -o -type c \) &gt; devicelist Check the permissions on the directories above subdirectories containing device files. If any of the device files or their parent directories are world-writable, excepting device files specifically intended to be world-writable such as /dev/null, this is a finding. These world-writable files on installation are intended to be world-writable: /dev/full /dev/null /selinux/null /dev/ptmx /dev/random /dev/tty /dev/vsock /dev/zero /dev/log

Fix: F-31464r1_fix

Remove the world-writable permission from the device file(s). Procedure: # chmod o-w <device file> Document all changes.

b
Device files used for backup must only be readable and/or writable by root or the backup user.
AC-6 - Medium - CCI-000225 - V-925 - SV-37558r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN002300
Vuln IDs
  • V-925
Rule IDs
  • SV-37558r1_rule
System backups could be accidentally or maliciously overwritten and destroy the ability to recover the system if a compromise should occur. Unauthorized users could also copy system files.trueSystem AdministratorInformation Assurance OfficerECCD-1, ECCD-2
Checks: C-36209r4_chk

Check the system for world-writable device files. Procedure: # find / -perm -2 -a \( -type b -o -type c \) -exec ls -ld {} \; Ask the SA to identify any device files used for backup purposes. If any device file(s) used for backup are writable by users other than root or the designated backup user, this is a finding.

Fix: F-31469r1_fix

Use the chmod command to remove the world-writable bit from the backup device files. Procedure: # chmod o-w <back device filename> Document all changes.

b
The Network File System (NFS) export configuration file must be owned by root.
AC-6 - Medium - CCI-000225 - V-928 - SV-37936r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN005740
Vuln IDs
  • V-928
Rule IDs
  • SV-37936r1_rule
Failure to give ownership of the NFS export configuration file to root provides the designated owner and possible unauthorized users with the potential to change system configuration which could weaken the system's security posture.System AdministratorECLP-1
Checks: C-37200r1_chk

Check the owner of the exports file. Example: # ls -lL /etc/exports If the export configuration file is not owned by root, this is a finding.

Fix: F-32428r1_fix

Change the owner of the exports file to root. Example: # chown root /etc/exports

a
The Network File System (NFS) export configuration file must have mode 0644 or less permissive.
AC-6 - Low - CCI-000225 - V-929 - SV-37943r1_rule
RMF Control
AC-6
Severity
Low
CCI
CCI-000225
Version
GEN005760
Vuln IDs
  • V-929
Rule IDs
  • SV-37943r1_rule
Excessive permissions on the NFS export configuration file could allow unauthorized modification of the file, which could result in Denial of Service to authorized NFS exports and the creation of additional unauthorized exports.System AdministratorECCD-1, ECCD-2, ECLP-1
Checks: C-37223r1_chk

# ls -lL /etc/exports If the file has a mode more permissive than 0644, this is a finding.

Fix: F-32434r1_fix

# chmod 0644 /etc/exports

b
All Network File System (NFS) exported system files and system directories must be owned by root.
AC-6 - Medium - CCI-000225 - V-931 - SV-37849r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN005800
Vuln IDs
  • V-931
Rule IDs
  • SV-37849r1_rule
Failure to give ownership of sensitive files or directories to root provides the designated owner and possible unauthorized users with the potential to access sensitive information or change system configuration which could weaken the system's security posture.System Administrator
Checks: C-37045r1_chk

Check for NFS exported file systems. Procedure: # cat /etc/exports For each file system displayed, check the ownership. # ls -lLa &lt;exported file system path&gt; If the files and directories are not owned by root, this is a finding.

Fix: F-32313r1_fix

Change the ownership of exported file systems not owned by root. Procedure: # chown root <path>

b
The Network File System (NFS) anonymous UID and GID must be configured to values without permissions.
AC-14 - Medium - CCI-000062 - V-932 - SV-37854r1_rule
RMF Control
AC-14
Severity
Medium
CCI
CCI-000062
Version
GEN005820
Vuln IDs
  • V-932
Rule IDs
  • SV-37854r1_rule
When an NFS server is configured to deny remote root access, a selected UID and GID are used to handle requests from the remote root user. The UID and GID should be chosen from the system to provide the appropriate level of non-privileged access.System AdministratorECSC-1
Checks: C-37049r1_chk

Check if the 'anonuid' and 'anongid' options are set correctly for exported file systems. List exported filesystems: # exportfs -v Each of the exported file systems should include an entry for the 'anonuid=' and 'anongid=' options set to "-1" or an equivalent (60001, 65534, or 65535). If appropriate values for 'anonuid' or 'anongid' are not set, this is a finding.

Fix: F-32316r1_fix

Edit "/etc/exports" and set the "anonuid=-1" and "anongid=-1" options for exports lacking it. Re-export the filesystems.

b
The Network File System (NFS) server must be configured to restrict file system access to local hosts.
CM-6 - Medium - CCI-000366 - V-933 - SV-37857r1_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN005840
Vuln IDs
  • V-933
Rule IDs
  • SV-37857r1_rule
The NFS access option limits user access to the specified level. This assists in protecting exported file systems. If access is not restricted, unauthorized hosts may be able to access the system's NFS exports.System AdministratorECSC-1
Checks: C-37061r1_chk

Check the permissions on exported NFS file systems. Procedure: # exportfs -v If the exported file systems do not contain the 'rw' or 'ro' options specifying a list of hosts or networks, this is a finding.

Fix: F-32328r1_fix

Edit /etc/exports and add ro and/or rw options (as appropriate) specifying a list of hosts or networks which are permitted access. Re-export the file systems.

b
The Network File System (NFS) server must not allow remote root access.
AC-6 - Medium - CCI-000225 - V-935 - SV-37859r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN005880
Vuln IDs
  • V-935
Rule IDs
  • SV-37859r1_rule
If the NFS server allows root access to local file systems from remote hosts, this access could be used to compromise the system.System AdministratorInformation Assurance OfficerInformation Assurance ManagerEBRP-1
Checks: C-37065r1_chk

List the exports. # cat /etc/exports If any export contains "no_root_squash" or does not contain "root_squash" or "all_squash", this is a finding.

Fix: F-32333r1_fix

Edit the "/etc/exports" file and add "root_squash" (or "all_squash") and remove "no_root_squash".

b
The "nosuid" option must be enabled on all Network File System (NFS) client mounts.
AC-6 - Medium - CCI-000225 - V-936 - SV-37860r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN005900
Vuln IDs
  • V-936
Rule IDs
  • SV-37860r1_rule
Enabling the nosuid mount option prevents the system from granting owner or group-owner privileges to programs with the suid or sgid bit set. If the system does not restrict this access, users with unprivileged access to the local system may be able to acquire privileged access by executing suid or sgid files located on the mounted NFS file system.Information Assurance ManagerSystem AdministratorInformation Assurance OfficerECPA-1
Checks: C-37069r1_chk

Check the system for NFS mounts not using the "nosuid" option. Procedure: # mount -v | grep " type nfs " | egrep -v "nosuid" If the mounted file systems do not have the "nosuid" option, this is a finding.

Fix: F-32336r1_fix

Edit "/etc/fstab" and add the "nosuid" option for all NFS file systems. Remount the NFS file systems to make the change take effect.

b
The system must use an access control program.
CM-6 - Medium - CCI-000366 - V-940 - SV-37756r1_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN006580
Vuln IDs
  • V-940
Rule IDs
  • SV-37756r1_rule
Access control programs (such as TCP_WRAPPERS) provide the ability to enhance system security posture.System AdministratorEBRU-1
Checks: C-36953r1_chk

The tcp_wrappers package is provided with the RHEL distribution. Other access control programs may be available but will need to be checked manually. Determine if tcp_wrappers is installed. # rpm -qa | grep tcp_wrappers If no package is listed, this is a finding.

Fix: F-32218r1_fix

Install and configure the tcp_wrappers package.

b
The system's access control program must log each system access attempt.
AU-2 - Medium - CCI-000126 - V-941 - SV-37757r3_rule
RMF Control
AU-2
Severity
Medium
CCI
CCI-000126
Version
GEN006600
Vuln IDs
  • V-941
Rule IDs
  • SV-37757r3_rule
If access attempts are not logged, then multiple attempts to log on to the system by an unauthorized user may go undetected.System Administrator
Checks: C-36954r3_chk

The tcp_wrappers package is provided with the RHEL distribution. Other access control programs may be available but will need to be checked manually. Depending on what system is used for log processing either /etc/syslog.conf or /etc/rsyslog.conf will be the logging configuration file. Normally, tcpd logs to the mail facility in "/etc/syslog.conf" or “/etc/rsyslog.conf”. Determine if syslog or rsyslog is configured to log events by tcpd. Procedure: # grep -E “(\*.info|\*.debug|authpriv.info|authpriv.debug|authpriv.\*)” /etc/syslog.conf | grep –v ‘#’ Or: # grep -E “(\*.info|\*.debug|authpriv.info|authpriv.debug|authpriv.\*)” /etc/rsyslog.conf | grep –v ‘#’ If no entries exist, this is a finding. If there are no “authpriv.info”, “authpriv.debug”, “authpriv.*” or “*.info” or “*.debug” not followed by “authpriv.none”, this is a finding. If an alternate access control program is used and it does not provide logging of access attempts, this is a finding.

Fix: F-32219r1_fix

Configure the access restriction program to log every access attempt. Ensure the implementation instructions for tcp_wrappers are followed so system access attempts are recorded to the system log files. If an alternate application is used, it must support this function.

b
Access to the cron utility must be controlled using the cron.allow and/or cron.deny file(s).
AC-6 - Medium - CCI-000225 - V-974 - SV-27320r2_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN002960
Vuln IDs
  • V-974
Rule IDs
  • SV-27320r2_rule
The cron facility allows users to execute recurring jobs on a regular and unattended basis. The cron.allow file designates accounts allowed to enter and execute jobs using the cron facility. If the cron.allow file is not present, users listed in the cron.deny file are not allowed to use the cron facility. Improper configuration of cron may open the facility up for abuse by system intruders and malicious users.System Administrator
Checks: C-28457r2_chk

This check is not applicable if only the root user is permitted to use cron. Check for the existence of the cron.allow and cron.deny files. # ls -lL /etc/cron.allow # ls -lL /etc/cron.deny If neither file exists, this is a finding.

Fix: F-24560r2_fix

Create /etc/cron.allow and/or /etc/cron.deny with appropriate content and reboot the system to ensure no lingering cron jobs are processed.

b
The cron.allow file must have mode 0600 or less permissive.
AC-6 - Medium - CCI-000225 - V-975 - SV-27326r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN002980
Vuln IDs
  • V-975
Rule IDs
  • SV-27326r1_rule
A readable and/or writable cron.allow file by users other than root could allow potential intruders and malicious users to use the file contents to help discern information, such as who is allowed to execute cron programs, which could be harmful to overall system and network security.System AdministratorECLP-1
Checks: C-28462r1_chk

Check mode of the cron.allow file. Procedure: # ls -lL /etc/cron.allow If the file has a mode more permissive than 0600, this is a finding.

Fix: F-24566r1_fix

Change the mode of the cron.allow file to 0600. Procedure: # chmod 0600 /etc/cron.allow

b
Cron must not execute group-writable or world-writable programs.
AC-6 - Medium - CCI-000225 - V-976 - SV-37384r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003000
Vuln IDs
  • V-976
Rule IDs
  • SV-37384r1_rule
If cron executes group-writable or world-writable programs, there is a possibility that unauthorized users could manipulate the programs with malicious intent. This could compromise system and network security.System AdministratorDCSL-1
Checks: C-36071r1_chk

List all cronjobs on the system. Procedure: # ls /var/spool/cron # ls /etc/cron.d /etc/crontab /etc/cron.daily /etc/cron.hourly /etc/cron.monthly /etc/cron.weekly or # ls /etc/cron*|grep -v deny If cron jobs exist under any of the above directories, use the following command to search for programs executed by cron: # more &lt;cron job file&gt; Perform a long listing of each program file found in the cron file to determine if the file is group-writable or world-writable. # ls -la &lt;cron program file&gt; If cron executes group-writable or world-writable files, this is a finding.

Fix: F-31315r1_fix

Remove the world-writable and group-writable permissions from the cron program file(s) identified. # chmod go-w <cron program file>

b
Cron must not execute programs in, or subordinate to, world-writable directories.
AC-6 - Medium - CCI-000225 - V-977 - SV-37388r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003020
Vuln IDs
  • V-977
Rule IDs
  • SV-37388r1_rule
If cron programs are located in or subordinate to world-writable directories, they become vulnerable to removal and replacement by malicious users or system intruders.System AdministratorDCSL-1
Checks: C-36074r1_chk

List all cronjobs on the system. Procedure: # ls /var/spool/cron # ls /etc/cron.d /etc/crontab /etc/cron.daily /etc/cron.hourly /etc/cron.monthly /etc/cron.weekly or # ls /etc/cron*|grep -v deny If cron jobs exist under any of the above directories, use the following command to search for programs executed by at: # more &lt;cron job file&gt; Perform a long listing of each directory containing program files found in the cron file to determine if the directory is world-writable. # ls -ld &lt;cron program directory&gt; If cron executes programs in world-writable directories, this is a finding.

Fix: F-31318r1_fix

Remove the world-writable permission from the cron program directories identified. Procedure: # chmod o-w <cron program directory>

b
Crontab files must have mode 0600 or less permissive, and files in cron script directories must have mode 0700 or less permissive.
AC-6 - Medium - CCI-000225 - V-978 - SV-37466r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003080
Vuln IDs
  • V-978
Rule IDs
  • SV-37466r1_rule
To protect the integrity of scheduled system jobs and prevent malicious modification to these jobs, crontab files must be secured.System AdministratorECLP-1
Checks: C-36132r1_chk

Check the mode of the crontab files. # ls -lL /var/spool/cron/ # ls -lL /etc/cron.d/ # ls -lL /etc/crontab If any crontab file has a mode more permissive than 0600, this is a finding.

Fix: F-31377r1_fix

Change the mode of the crontab files. # chmod 0600 /var/spool/cron/* /etc/cron.d/* /etc/crontab

b
Cron and crontab directories must have mode 0755 or less permissive.
AC-6 - Medium - CCI-000225 - V-979 - SV-37470r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003100
Vuln IDs
  • V-979
Rule IDs
  • SV-37470r1_rule
To protect the integrity of scheduled system jobs and to prevent malicious modification to these jobs, crontab files must be secured.System AdministratorECLP-1
Checks: C-36136r1_chk

Check the mode of the crontab directories. Procedure: # ls -ld /var/spool/cron # ls -ld /etc/cron.d /etc/crontab /etc/cron.daily /etc/cron.hourly /etc/cron.monthly /etc/cron.weekly or # ls -ld /etc/cron*|grep -v deny If the mode of any of the crontab directories is more permissive than 0755, this is a finding.

Fix: F-31381r1_fix

Change the mode of the crontab directories. # chmod 0755 <crontab directory>

b
Cron and crontab directories must be owned by root or bin.
AC-6 - Medium - CCI-000225 - V-980 - SV-37474r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003120
Vuln IDs
  • V-980
Rule IDs
  • SV-37474r1_rule
Incorrect ownership of the cron or crontab directories could permit unauthorized users the ability to alter cron jobs and run automated jobs as privileged users. Failure to give ownership of cron or crontab directories to root or to bin provides the designated owner and unauthorized users with the potential to access sensitive information or change the system configuration which could weaken the system's security posture.System AdministratorECLP-1
Checks: C-36140r1_chk

Check the owner of the crontab directories. Procedure: # ls -ld /var/spool/cron # ls -ld /etc/cron.d /etc/crontab /etc/cron.daily /etc/cron.hourly /etc/cron.monthly /etc/cron.weekly or # ls -ld /etc/cron*|grep -v deny If the owner of any of the crontab directories is not root or bin, this is a finding.

Fix: F-31386r1_fix

Change the mode of the crontab directories. # chown root <crontab directory>

b
Cron and crontab directories must be group-owned by root, sys, bin or cron.
AC-6 - Medium - CCI-000225 - V-981 - SV-37476r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003140
Vuln IDs
  • V-981
Rule IDs
  • SV-37476r1_rule
To protect the integrity of scheduled system jobs and to prevent malicious modification to these jobs, crontab files must be secured. Failure to give group-ownership of cron or crontab directories to a system group provides the designated group and unauthorized users with the potential to access sensitive information or change the system configuration which could weaken the system's security posture.System AdministratorECLP-1
Checks: C-36142r1_chk

Check the group owner of cron and crontab directories. Procedure: # ls -ld /var/spool/cron # ls -ld /etc/cron.d /etc/crontab /etc/cron.daily /etc/cron.hourly /etc/cron.monthly /etc/cron.weekly or # ls -ld /etc/cron*|grep -v deny If a directory is not group-owned by root, sys, bin, or cron, this is a finding.

Fix: F-31388r1_fix

Change the group owner of cron and crontab directories. # chgrp root <crontab directory>

b
Cron logging must be implemented.
AU-2 - Medium - CCI-000126 - V-982 - SV-27352r2_rule
RMF Control
AU-2
Severity
Medium
CCI
CCI-000126
Version
GEN003160
Vuln IDs
  • V-982
Rule IDs
  • SV-27352r2_rule
Cron logging can be used to trace the successful or unsuccessful execution of cron jobs. It can also be used to spot intrusions into the use of the cron facility by unauthorized and malicious users. System Administrator
Checks: C-28494r2_chk

Depending on what system is used for log processing either /etc/syslog.conf or /etc/rsyslog.conf will be the logging configuration file. # grep cron /etc/syslog.conf Or: # grep cron /etc/rsyslog.conf If cron logging is not configured, this is a finding. Check the configured cron log file found in the cron entry of /etc/syslog.conf or /etc/rsyslog.conf (normally /var/log/cron). # ls -lL /var/log/cron If this file does not exist, or is older than the last cron job, this is a finding.

Fix: F-31389r2_fix

Edit /etc/syslog.conf or /etc/rsyslog.conf and setup cron logging

b
The cronlog file must have mode 0600 or less permissive.
AC-6 - Medium - CCI-000225 - V-983 - SV-27357r2_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003180
Vuln IDs
  • V-983
Rule IDs
  • SV-27357r2_rule
Cron logs contain reports of scheduled system activities and must be protected from unauthorized access or manipulation. System Administrator
Checks: C-28501r2_chk

Check the mode of the cron log file. Procedure: Depending on what system is used for log processing either /etc/syslog.conf or /etc/rsyslog.conf will be the logging configuration file. Check the configured cron log file found in the cron entry in /etc/syslog.conf or /etc/rsyslog.conf (normally /var/log/cron). # grep cron /etc/syslog.conf Or: # grep cron /etc/rsyslog.conf # ls -lL /var/log/cron If the mode is more permissive than 0600, this is a finding.

Fix: F-24602r1_fix

Change the mode of the cron log file. # chmod 0600 /var/log/cron

b
Access to the "at" utility must be controlled via the at.allow and/or at.deny file(s).
AC-6 - Medium - CCI-000225 - V-984 - SV-37512r2_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003280
Vuln IDs
  • V-984
Rule IDs
  • SV-37512r2_rule
The "at" facility selectively allows users to execute jobs at deferred times. It is usually used for one-time jobs. The at.allow file selectively allows access to the "at" facility. If there is no at.allow file, there is no ready documentation of who is allowed to submit "at" jobs.System Administrator
Checks: C-36168r2_chk

If the "at" package is not installed, this is not applicable. Check for the existence of at.allow and at.deny files. # ls -lL /etc/at.allow # ls -lL /etc/at.deny If neither file exists, this is a finding.

Fix: F-31419r1_fix

Create at.allow and/or at.deny files containing appropriate lists of users to be allowed or denied access to the "at" daemon.

b
The at.deny file must not be empty if it exists.
AC-6 - Medium - CCI-000225 - V-985 - SV-37516r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003300
Vuln IDs
  • V-985
Rule IDs
  • SV-37516r1_rule
On some systems, if there is no at.allow file and there is an empty at.deny file, then the system assumes everyone has permission to use the "at" facility. This could create an insecure setting in the case of malicious users or system intruders.trueSystem AdministratorInformation Assurance OfficerECLP-1
Checks: C-36175r1_chk

# more /etc/at.deny If the at.deny file exists and is empty, this is a finding.

Fix: F-31426r1_fix

Add appropriate users to the at.deny file, or remove the empty at.deny file if an at.allow file exists.

b
Default system accounts (with the exception of root) must not be listed in the at.allow file or must be included in the at.deny file if the at.allow file does not exist.
AC-6 - Medium - CCI-000225 - V-986 - SV-37517r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003320
Vuln IDs
  • V-986
Rule IDs
  • SV-37517r1_rule
Default accounts, such as bin, sys, adm, uucp, daemon, and others, should never have access to the "at" facility. This would create a possible vulnerability open to intruders or malicious users.System AdministratorECPA-1
Checks: C-36177r1_chk

# more /etc/at.allow If default accounts (such as bin, sys, adm, and others) are listed in the at.allow file, this is a finding.

Fix: F-31427r1_fix

Remove the default accounts (such as bin, sys, adm, and others, traditionally UID less than 500) from the at.allow file.

b
The at.allow file must have mode 0600 or less permissive.
AC-6 - Medium - CCI-000225 - V-987 - SV-37518r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003340
Vuln IDs
  • V-987
Rule IDs
  • SV-37518r1_rule
Permissions more permissive than 0600 (read, write and execute for the owner) may allow unauthorized or malicious access to the at.allow and/or at.deny files.System AdministratorECLP-1
Checks: C-36178r1_chk

Check the mode of the at.allow file. # ls -lL /etc/at.allow If the at.allow file has a mode more permissive than 0600, this is a finding.

Fix: F-31428r1_fix

Change the mode of the at.allow file. # chmod 0600 /etc/at.allow

b
The "at" daemon must not execute group-writable or world-writable programs.
AC-6 - Medium - CCI-000225 - V-988 - SV-37519r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003360
Vuln IDs
  • V-988
Rule IDs
  • SV-37519r1_rule
If the "at" facility executes world-writable or group-writable programs, it is possible for the programs to be accidentally or maliciously changed or replaced without the owner's intent or knowledge. This would cause a system security breach.System AdministratorDCSL-1
Checks: C-36179r1_chk

List the "at" jobs on the system. Procedure: # ls -la /var/spool/at For each "at" job file, determine which programs are executed. Procedure: # more &lt;at job file&gt; Check the each program executed by "at" for group- or world-writable permissions. Procedure: # ls -la &lt;at program file&gt; If "at" executes group or world-writable programs, this is a finding.

Fix: F-31429r1_fix

Remove group-write and world-write permissions from files executed by at jobs. Procedure: # chmod go-w <file>

b
The "at" daemon must not execute programs in, or subordinate to, world-writable directories.
AC-6 - Medium - CCI-000225 - V-989 - SV-37520r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003380
Vuln IDs
  • V-989
Rule IDs
  • SV-37520r1_rule
If "at" programs are located in, or subordinate, to world-writable directories, they become vulnerable to removal and replacement by malicious users or system intruders.System AdministratorDCSL-1
Checks: C-36180r1_chk

List any "at" jobs on the system. Procedure: # ls /var/spool/at For each "at" job, determine which programs are executed by "at." Procedure: # more &lt;at job file&gt; Check the directory containing each program executed by "at" for world-writable permissions. Procedure: # ls -la &lt;at program file directory&gt; If "at" executes programs in world-writable directories, this is a finding.

Fix: F-31432r1_fix

Remove the world-writable permission from directories containing programs executed by "at". Procedure: # chmod o-w <at program directory>

c
SNMP communities, users, and passphrases must be changed from the default.
IA-5 - High - CCI-000178 - V-993 - SV-37689r1_rule
RMF Control
IA-5
Severity
High
CCI
CCI-000178
Version
GEN005300
Vuln IDs
  • V-993
Rule IDs
  • SV-37689r1_rule
Whether active or not, default SNMP passwords, users, and passphrases must be changed to maintain security. If the service is running with the default authenticators, then anyone can gather data about the system and the network and use the information to potentially compromise the integrity of the system or network(s).System AdministratorIAAC-1
Checks: C-36883r1_chk

Check the SNMP configuration for default passwords. Procedure: Examine the default install location /etc/snmp/snmpd.conf or: # find / -name snmpd.conf # more &lt;snmpd.conf file&gt; Identify any community names or user password configuration. If any community name or password is set to a default value such as "public", "private", "snmp-trap", or "password", or any value which does not meet DISA password requirements, this is a finding.

Fix: F-31908r1_fix

Change the default passwords. To change them, locate the file snmpd.conf. Edit the file. Locate the line system-group-read-community which has a default password of "public" and make the password something more secure and less guessable. Do the same for the lines reading system-group-write-community, read-community, write-community, trap and trap-community. Read the information in the file carefully. The trap is defining who to send traps to, for instance, by default. It is not a password, but the name of a host.

b
The snmpd.conf file must have mode 0600 or less permissive.
AC-6 - Medium - CCI-000225 - V-994 - SV-37696r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN005320
Vuln IDs
  • V-994
Rule IDs
  • SV-37696r1_rule
The snmpd.conf file contains authenticators and must be protected from unauthorized access and modification.System AdministratorECLP-1
Checks: C-36892r1_chk

Check the mode of the SNMP daemon configuration file. Procedure: Examine the default install location /etc/snmp/snmpd.conf or: # find / -name snmpd.conf # ls -lL &lt;snmpd.conf file&gt; If the snmpd.conf file has a mode more permissive than 0600, this is a finding.

Fix: F-31997r1_fix

Change the mode of the SNMP daemon configuration file to 0600. Procedure: # chmod 0600 <snmpd.conf>

b
Management Information Base (MIB) files must have mode 0640 or less permissive.
AC-6 - Medium - CCI-000225 - V-995 - SV-37698r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN005340
Vuln IDs
  • V-995
Rule IDs
  • SV-37698r1_rule
The ability to read the MIB file could impart special knowledge to an intruder or malicious user about the ability to extract compromising information about the system or network.System AdministratorECLP-1
Checks: C-36893r1_chk

Check the modes for all Management Information Base (MIB) files on the system. Procedure: # find / -name *.mib # ls -lL &lt;mib file&gt; Any file returned with a mode 0640 or less permissive is a finding.

Fix: F-32000r1_fix

Change the mode of MIB files to 0640. Procedure: # chmod 0640 <mib file>

b
Public directories must be the only world-writable directories and world-writable files must be located only in public directories.
CM-6 - Medium - CCI-000366 - V-1010 - SV-37645r1_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN002480
Vuln IDs
  • V-1010
Rule IDs
  • SV-37645r1_rule
World-writable files and directories make it easy for a malicious user to place potentially compromising files on the system. The only authorized public directories are those temporary directories supplied with the system or those designed to be temporary file repositories. The setting is normally reserved for directories used by the system and by users for temporary file storage, (e.g., /tmp), and for directories requiring global read/write access.System AdministratorECSC-1
Checks: C-36841r1_chk

Check the system for world-writable files. Procedure: # find / -perm -2 -a \( -type d -o -type f \) -exec ls -ld {} \; If any world-writable files are located, except those required for system operation such as /tmp and /dev/null, this is a finding.

Fix: F-31679r1_fix

Remove or change the mode for any world-writable file on the system not required to be world-writable. Procedure: # chmod o-w <file> Document all changes

a
Inetd or xinetd logging/tracing must be enabled.
AU-3 - Low - CCI-000134 - V-1011 - SV-37439r1_rule
RMF Control
AU-3
Severity
Low
CCI
CCI-000134
Version
GEN003800
Vuln IDs
  • V-1011
Rule IDs
  • SV-37439r1_rule
Inetd or xinetd logging and tracing allows the system administrators to observe the IP addresses connecting to their machines and what network services are being sought. This provides valuable information when trying to find the source of malicious users and potential malicious users.System AdministratorECSC-1
Checks: C-36111r1_chk

The /etc/xinetd.conf file and each file in the /etc/xinetd.d directory file should be examined for the following: Procedure: log_type = SYSLOG authpriv log_on_success = HOST PID USERID EXIT log_on_failure = HOST USERID If xinetd is running and logging is not enabled, this is a finding.

Fix: F-31357r1_fix

Edit each file in the /etc/xinetd.d directory and the /etc/xinetd.conf file to contain: log_type = SYSLOG authpriv log_on_success = HOST PID USERID EXIT log_on_failure = HOST USERID The /etc/xinetd.conf file contains default values that will hold true for all services unless individually modified in the service's xinetd.d file. To make the new settings effective, restart the xinetd service: # service xinetd restart

c
The system must be configured to only boot from the system boot device.
CM-6 - High - CCI-000366 - V-1013 - SV-37986r1_rule
RMF Control
CM-6
Severity
High
CCI
CCI-000366
Version
GEN008600
Vuln IDs
  • V-1013
Rule IDs
  • SV-37986r1_rule
The ability to boot from removable media is the same as being able to boot into single user, or maintenance, mode without a password. This ability could allow a malicious user to boot the system and perform changes with the potential to compromise or damage the system. It could also allow the system to be used for malicious purposes by a malicious anonymous user.System AdministratorECSC-1
Checks: C-37289r1_chk

Determine if the system is configured to boot from devices other than the system startup media. If so, this is a finding.

Fix: F-32526r1_fix

Configure the system to only boot from system startup media. Procedure: On systems with a BIOS or system controller use the BIOS interface at startup to remove all but the proper boot device from the boot device list.

b
The X server must have the correct options enabled.
CM-6 - Medium - CCI-000366 - V-1021 - SV-37207r1_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN000000-LNX00360
Vuln IDs
  • V-1021
Rule IDs
  • SV-37207r1_rule
Without the correct options enabled, the Xwindows system would be less secure and there would be no screen timeout.System Administrator
Checks: C-35896r1_chk

Verify the options of the running Xwindows server are correct. Procedure: Get the running xserver information # ps -ef |grep X If the response contains /usr/bin/Xorg:0 /usr/bin/Xorg:0 -br -audit 0 -auth /var/gdm/:0.Xauth -nolisten tcp vt7 this is indicative of Xorg starting through gdm. This is the default on RHEL. Examine the Xorg line: If the "-auth" option is missing this would be a finding. If the "-audit" option is missing or not set to 4, this is a finding. If the "-s" option is missing or greater than 15, this is a finding. If the response to the grep contains X:0 /usr/bin/X:0 this indicates the X server was started with the xinit command with no associated .xserverrc in the home directory of the user. No options are selected by default. This is a finding. Otherwise if there are options on the X:0 line: If the "-auth" option is missing this is a finding If the "-audit" option is missing or not set to 4, this is a finding. If the "-s" option is missing or greater than 15, this is a finding.

Fix: F-31154r1_fix

Enable the following options: -audit (at level 4), -auth and -s with 15 minutes as the timeout value. Procedure for gdm: Edit /etc/gdm/custom.conf and add the following: [server-Standard] name=Standard server command=/usr/bin/Xorg -br -audit 4 -s 15 chooser=false handled=true flexible=true priority=0 Procedure for xinit: Edit or create a .xserverrc file in the users home directory containing the startup script for xinit. This script must have an exec line with at least these options: exec /usr/bin/X -audit 4 -s 15 -auth <Xauth file> & The <Xauth file> is created using the "xauth" command and is customarily located in the users home directory with the name ".Xauthority".

b
An X server must have none of the following options enabled: -ac, -core (except for debugging purposes), or -nolock.
CM-6 - Medium - CCI-000366 - V-1022 - SV-37217r2_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN000000-LNX00380
Vuln IDs
  • V-1022
Rule IDs
  • SV-37217r2_rule
These options will detract from the security of the Xwindows system.System Administrator
Checks: C-35904r2_chk

If the "xorg-x11-server-Xorg" package is not installed, this is not applicable. Verify the options of the running Xwindows server are correct. Procedure: Get the running xserver information # ps -ef |grep X If the response contains /usr/bin/Xorg:0 /usr/bin/Xorg:0 -br -audit 0 -auth /var/gdm/:0.Xauth -nolisten tcp vt7 this is indicative of Xorg starting through gdm. This is the default window manager on RHEL. If the "-ac" option is found, this is a finding. If the "-core" option is found, this is a finding. If the "-nolock" option is found, this is a finding. If the response to the grep contains X:0 /usr/bin/X:0 Examine the X:0 line: If the "-ac" option is found, this is a finding. If the "-core" option is found, this is a finding. If the "-nolock" option is found, this is a finding.

Fix: F-31162r1_fix

Disable the unwanted options: Procedure: For gdm: Remove the -ac, -core and -nolock options by creating a "command" entry in the /etc/gdm/custom.conf file with the options removed. For Xwindows started by xinit: Create or modify the .xserverrc script in the users home directory to remove the -ac, -core and -nolock options from the exec /usr/bin/X command.

b
The system must not run an Internet Network News (INN) server.
CM-7 - Medium - CCI-000381 - V-1023 - SV-37899r1_rule
RMF Control
CM-7
Severity
Medium
CCI
CCI-000381
Version
GEN006240
Vuln IDs
  • V-1023
Rule IDs
  • SV-37899r1_rule
INN servers access Usenet newsfeeds and store newsgroup articles. INN servers use the Network News Transfer Protocol (NNTP) to transfer information from the Usenet to the server and from the server to authorized remote hosts. If this function is necessary to support a valid mission requirement, its use must be authorized and approved in the system accreditation package.Information Assurance OfficerSystem AdministratorECSC-1
Checks: C-37125r1_chk

# ps -ef | egrep "innd|nntpd" If an Internet Network News server is running, this is a finding.

Fix: F-32393r1_fix

Disable the INN server.

b
The /etc/access.conf file must be owned by root.
AC-6 - Medium - CCI-000225 - V-1025 - SV-37224r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN000000-LNX00400
Vuln IDs
  • V-1025
Rule IDs
  • SV-37224r1_rule
The /etc/access.conf file contains entries restricting access from the system console by authorized System Administrators. If the file is owned by a user other than root, it could compromise the system.System AdministratorECLP-1
Checks: C-35912r1_chk

Check access configuration ownership: # ls -lL /etc/security/access.conf If this file exists and is not owned by root, this is a finding.

Fix: F-31171r1_fix

Follow the correct configuration parameters for access configuration file. Use the chown command to configure it properly. (for example: # chown root /etc/security/access.conf ).

b
The Samba Web Administration Tool (SWAT) must be restricted to the local host or require SSL.
AC-17 - Medium - CCI-001436 - V-1026 - SV-37870r1_rule
RMF Control
AC-17
Severity
Medium
CCI
CCI-001436
Version
GEN006080
Vuln IDs
  • V-1026
Rule IDs
  • SV-37870r1_rule
SWAT is a tool used to configure Samba. It modifies Samba configuration, which can impact system security, and must be protected from unauthorized access. SWAT authentication may involve the root password, which must be protected by encryption when traversing the network. Restricting access to the local host allows for the use of SSH TCP forwarding, if configured, or administration by a web browser on the local system.System AdministratorEBRP-1
Checks: C-37085r3_chk

SWAT is a tool for configuring Samba and should only be found on a system with a requirement for Samba. If SWAT is used, it must be utilized with SSL to ensure a secure connection between the client and the server. Procedure: # grep -H "bin/swat" /etc/xinetd.d/*|cut -d: -f1 |xargs grep "only_from" If the value of the "only_from" line in the "xinetd.d" file which starts "/usr/sbin/swat" is not "localhost" or the equivalent, this is a finding.

Fix: F-32357r2_fix

Disable SWAT or require SWAT is only accessed via SSH. Procedure: If SWAT is not needed for operation of the system remove the SWAT package: # rpm -qa|grep swat Remove "samba-swat" or "samba3x-swat" depending on which one is installed # rpm --erase samba-swat or # rpm --erase samba3x-swat If SWAT is required but not at all times disable it when it is not needed. Modify the /etc/xinetd.d file for "swat" to contain a "disable = yes" line. To access using SSH: Follow vendor configuration documentation to create an stunnel for SWAT.

b
The /etc/smb.conf file must be owned by root.
AC-6 - Medium - CCI-000225 - V-1027 - SV-37871r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN006100
Vuln IDs
  • V-1027
Rule IDs
  • SV-37871r1_rule
The /etc/smb.conf file allows access to other machines on the network and grants permissions to certain users. If it is owned by another user, the file may be maliciously modified and the Samba configuration could be compromised.System AdministratorECLP-1
Checks: C-37087r1_chk

Check the ownership of the /etc/samba/smb.conf file. Procedure: # ls -l /etc/samba/smb.conf If an smb.conf file is not owned by root, this is a finding.

Fix: F-32360r1_fix

Change the ownership of the smb.conf file. Procedure: # chown root smb.conf

b
The /etc/smb.conf file must have mode 0644 or less permissive.
AC-6 - Medium - CCI-000225 - V-1028 - SV-37875r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN006140
Vuln IDs
  • V-1028
Rule IDs
  • SV-37875r1_rule
If the "smb.conf" file has excessive permissions, the file may be maliciously modified and the Samba configuration could be compromised.System AdministratorECLP-1
Checks: C-37094r1_chk

Check the mode of the smb.conf file. Procedure: # ls -lL /etc/samba/smb.conf If the "smb.conf" has a mode more permissive than 0644, this is a finding.

Fix: F-32370r1_fix

Change the mode of the smb.conf file to 0644 or less permissive. Procedure: # chmod 0644 smb.conf.

b
The /etc/smbpasswd file must be owned by root.
AC-6 - Medium - CCI-000225 - V-1029 - SV-37879r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN006160
Vuln IDs
  • V-1029
Rule IDs
  • SV-37879r1_rule
If the "smbpasswd" file is not owned by root, it may be maliciously accessed or modified, potentially resulting in the compromise of Samba accounts.System AdministratorECLP-1
Checks: C-37105r1_chk

Check the ownership of the "smbpasswd" file. # ls -l /etc/samba/passdb.tdb /etc/samba/secrets.tdb If the "smbpasswd" file is not owned by root, this is a finding.

Fix: F-32373r1_fix

Use the chown command to configure the files maintained by smbpasswd. For instance: # chown root /etc/samba/passdb.tdb /etc/samba/secrets.tdb

b
The smb.conf file must use the "hosts" option to restrict access to Samba.
AC-6 - Medium - CCI-000225 - V-1030 - SV-37887r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN006220
Vuln IDs
  • V-1030
Rule IDs
  • SV-37887r1_rule
Samba increases the attack surface of the system and must be restricted to communicate only with systems requiring access.System AdministratorECSC-1
Checks: C-37113r1_chk

Examine the "smb.conf" file. # more /etc/samba/smb.conf If the "hosts" option is not present to restrict access to a list of authorized hosts and networks, this is a finding.

Fix: F-32381r1_fix

Edit the "/etc/samba/smb.conf" file and set the "hosts" option to permit only authorized hosts to access Samba.

b
Users must not be able to change passwords more than once every 24 hours.
IA-5 - Medium - CCI-000198 - V-1032 - SV-37239r1_rule
RMF Control
IA-5
Severity
Medium
CCI
CCI-000198
Version
GEN000540
Vuln IDs
  • V-1032
Rule IDs
  • SV-37239r1_rule
The ability to change passwords frequently facilitates users reusing the same password. This can result in users effectively never changing their passwords. This would be accomplished by users changing their passwords when required and then immediately changing it to the original value. System AdministratorECSC-1
Checks: C-35931r1_chk

Check the minimum time period between password changes for each user account is 1 day. # cat /etc/shadow | cut -d ':' -f 4 | grep -v 1 If any results are returned, this is a finding.

Fix: F-31186r1_fix

Change the minimum time period between password changes for each user account to 1 day. # passwd -n 1 <user name>

c
Root passwords must never be passed over a network in clear text form.
IA-5 - High - CCI-000197 - V-1046 - SV-37150r2_rule
RMF Control
IA-5
Severity
High
CCI
CCI-000197
Version
GEN001100
Vuln IDs
  • V-1046
Rule IDs
  • SV-37150r2_rule
If a user accesses the root account (or any account) using an unencrypted connection, the password is passed over the network in clear text form and is subject to interception and misuse. This is true even if recommended procedures are followed by logging on to a named account and using the su command to access root.System Administrator
Checks: C-35865r2_chk

Determine if root has logged in over an unencrypted network connection. Examine /etc/syslog.conf to confirm the location to which "authpriv" messages are being sent. # grep authpriv.* /etc/syslog.conf Once the file is determined, perform the following command: # grep password &lt;file&gt; | more Look for any lines that do not have sshd as the associated service. If root has logged in over the network and sshd is not running, this is a finding.

Fix: F-31120r1_fix

Enable SSH on the system and use it for all remote connections used to attain root access

b
The system must not permit root logins using remote access programs such as ssh.
IA-2 - Medium - CCI-000770 - V-1047 - SV-37156r1_rule
RMF Control
IA-2
Severity
Medium
CCI
CCI-000770
Version
GEN001120
Vuln IDs
  • V-1047
Rule IDs
  • SV-37156r1_rule
Even though communications are encrypted, an additional layer of security may be gained by extending the policy of not logging directly on as root. In addition, logging in with a user-specific account preserves the audit trail.System AdministratorECPA-1
Checks: C-35864r1_chk

Determine if the SSH daemon is configured to permit root logins. Procedure: # grep -v "^#" /etc/ssh/sshd_config | grep -i permitrootlogin If the PermitRootLogin entry is not found or is not set to "no", this is a finding.

Fix: F-31118r1_fix

Edit the sshd_config file and set the PermitRootLogin option to "no".

b
Audio devices must have mode 0660 or less permissive.
AC-6 - Medium - CCI-000225 - V-1048 - SV-37566r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN002320
Vuln IDs
  • V-1048
Rule IDs
  • SV-37566r1_rule
Audio and video devices that are globally accessible have proven to be another security hazard. There is software that can activate system microphones and video devices connected to user workstations and/or X terminals. Once the microphone has been activated, it is possible to eavesdrop on otherwise private conversations without the victim being aware of it. This action effectively changes the user's microphone into a bugging device.System AdministratorECLP-1
Checks: C-36215r1_chk

Check the mode of audio devices. # ls -lL /dev/audio* /dev/snd/* If the mode of audio devices are more permissive than 660, this is a finding.

Fix: F-31476r1_fix

Change the mode of audio devices. # chmod 0660 <audio device>

b
Audio devices must be owned by root.
AC-6 - Medium - CCI-000225 - V-1049 - SV-37575r2_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN002340
Vuln IDs
  • V-1049
Rule IDs
  • SV-37575r2_rule
Audio and video devices globally accessible have proven to be another security hazard. There is software that can activate system microphones and video devices connected to user workstations and/or X terminals. Once the microphone has been activated, it is possible to eavesdrop on otherwise private conversations without the victim being aware of it. This action effectively changes the user's microphone into a bugging device.System Administrator
Checks: C-36393r1_chk

Check the owner of audio devices. # ls -lL /dev/audio* /dev/snd/* If the owner of any audio device file is not root, this is a finding.

Fix: F-31611r2_fix

Edit the /etc/security/console.perms.d/50-default.perms file and comment the following line: <console> 0600 <sound> 0660 root.audio

b
The /etc/access.conf file must have a privileged group owner.
AC-6 - Medium - CCI-000225 - V-1054 - SV-37227r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN000000-LNX00420
Vuln IDs
  • V-1054
Rule IDs
  • SV-37227r1_rule
Depending on the access restrictions of the /etc/access.conf file, if the group owner were not a privileged group, it could endanger system security.System AdministratorECLP-1
Checks: C-35917r1_chk

Check access configuration group ownership: # ls -lL /etc/security/access.conf If this file exists and has a group-owner that is not a privileged user, this is a finding.

Fix: F-31174r1_fix

Use the chgrp command to ensure the group owner is root, sys, or bin. (for example: # chgrp root /etc/security/access.conf ).

b
The /etc/security/access.conf file must have mode 0640 or less permissive.
AC-6 - Medium - CCI-000225 - V-1055 - SV-37243r2_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN000000-LNX00440
Vuln IDs
  • V-1055
Rule IDs
  • SV-37243r2_rule
If the access permissions are more permissive than 0640, system security could be compromised.System Administrator
Checks: C-35930r1_chk

Check access configuration mode: # ls -lL /etc/security/access.conf If this file exists and has a mode more permissive than 0640, this is a finding.

Fix: F-31190r1_fix

Use the chmod command to set the permissions to 0640. (for example: # chmod 0640 /etc/security/access.conf ).

b
The /etc/smb.conf file must be group-owned by root, bin, sys, or system.
AC-6 - Medium - CCI-000225 - V-1056 - SV-37873r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN006120
Vuln IDs
  • V-1056
Rule IDs
  • SV-37873r1_rule
If the group owner of the "smb.conf" file is not root or a system group, the file may be maliciously modified and the Samba configuration could be compromised.System AdministratorECLP-1
Checks: C-37089r1_chk

Check the group ownership of the "smb.conf" file. Procedure: # ls -lL /etc/samba/smb.conf If the "smb.conf" file is not group-owned by root, bin, sys, or system, this is a finding.

Fix: F-32365r1_fix

Change the group owner of the smb.conf file. Procedure: # chgrp root smb.conf

b
The smbpasswd file must be group-owned by root.
AC-6 - Medium - CCI-000225 - V-1058 - SV-41574r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN006180
Vuln IDs
  • V-1058
Rule IDs
  • SV-41574r1_rule
If the smbpasswd file is not group-owned by root, the smbpasswd file may be maliciously accessed or modified, potentially resulting in the compromise of Samba accounts.System AdministratorECLP-1
Checks: C-40075r1_chk

Check "smbpasswd" ownership: # ls -lL /etc/samba/passdb.tdb /etc/samba/secrets.tdb If the "smbpasswd" file is not group-owned by root, this is a finding.

Fix: F-35231r1_fix

Use the chgrp command to ensure that the group owner of the smbpasswd file is root. For instance: # chgrp root /etc/samba/passdb.tdb /etc/samba/secrets.tdb

b
The smbpasswd file must have mode 0600 or less permissive.
AC-6 - Medium - CCI-000225 - V-1059 - SV-41575r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN006200
Vuln IDs
  • V-1059
Rule IDs
  • SV-41575r1_rule
If the smbpasswd file has a mode more permissive than 0600, the smbpasswd file may be maliciously accessed or modified, potentially resulting in the compromise of Samba accounts.System AdministratorECLP-1
Checks: C-40077r1_chk

Check the mode of files maintained using "smbpasswd". Procedure: # ls -lL /etc/samba/passdb.tdb /etc/samba/secrets.tdb If a "smbpasswd" maintained file has a mode more permissive than 0600, this is a finding.

Fix: F-35233r1_fix

Change the mode of the files maintained through smbpasswd to 0600. Procedure: # chmod 0600 /etc/samba/passdb.tdb /etc/samba/secrets.tdb

b
Audio devices must be group-owned by root, sys, bin, or system.
AC-6 - Medium - CCI-000225 - V-1061 - SV-37577r2_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN002360
Vuln IDs
  • V-1061
Rule IDs
  • SV-37577r2_rule
Without privileged group owners, audio devices will be vulnerable to being used as eaves-dropping devices by malicious users or intruders to possibly listen to conversations containing sensitive information.System Administrator
Checks: C-36404r2_chk

Check the group-owner of audio devices. Procedure: # ls -lL /dev/audio* /dev/snd/* If the group-owner of an audio device is not root, sys, bin, system, or audio this is a finding.

Fix: F-31613r2_fix

Change the group-owner of the audio device. Procedure: # chgrp <root, sys, bin, system, audio> <audio device>

a
The root shell must be located in the / file system.
CM-6 - Low - CCI-000366 - V-1062 - SV-37380r1_rule
RMF Control
CM-6
Severity
Low
CCI
CCI-000366
Version
GEN001080
Vuln IDs
  • V-1062
Rule IDs
  • SV-37380r1_rule
To ensure the root shell is available in repair and administrative modes, the root shell must be located in the / file system.System AdministratorECSC-1
Checks: C-36067r2_chk

Determine if root's shell executable resides on a dedicated file system. Procedure: Find the location of the root user's shell # grep "^root" /etc/passwd|cut -d: -f7|cut -d/ -f2 The result is the top level directory under / where the shell resides (e.g., usr) Check if it is on a dedicated file system. # grep /&lt;top level directory&gt; /etc/fstab If /&lt;top level directory&gt; is on a dedicated file system, this is a finding.

Fix: F-31311r1_fix

Change the root account's shell to one present on the / file system. Procedure: Edit /etc/passwd and change the shell for the root account to one present on the / file system (such as /bin/sh, assuming /bin is not on a separate file system). If the system does not store shell configuration in the /etc/passwd file, consult vendor documentation for the correct procedure for the system.

b
Graphical desktop environments provided by the system must automatically lock after 15 minutes of inactivity and the system must require users to re-authenticate to unlock the environment. Applications requiring continuous, real-time screen display (i.e., network management products) require the following and need to be documented with the IAO. -The logon session does not have administrator rights. -The display station (i.e., keyboard, monitor, etc.) is located in a controlled access area.
AC-11 - Medium - CCI-000057 - V-4083 - SV-48455r1_rule
RMF Control
AC-11
Severity
Medium
CCI
CCI-000057
Version
GEN000500
Vuln IDs
  • V-4083
Rule IDs
  • SV-48455r1_rule
If graphical desktop sessions do not lock the session after 15 minutes of inactivity, requiring re-authentication to resume operations, the system or individual data could be compromised by an alert intruder who could exploit the oversight. This requirement applies to graphical desktop environments provided by the system to locally attached displays and input devices as well as to graphical desktop environments provided to remote systems, including thin clients.System Administrator
Checks: C-45121r1_chk

If the "xorg-x11-server-Xorg" package is not installed, this is not applicable. For the Gnome screen saver, check the idle_activation_enabled flag. Procedure: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --get /apps/gnome-screensaver/idle_activation_enabled If this does not return "true" and a documented exception has not been made by the IAO, this is a finding.

Fix: F-26907r1_fix

For the Gnome screen saver, set the idle_activation_enabled flag. Procedure: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type bool --set /apps/gnome-screensaver/idle_activation_enabled true

b
The system must prohibit the reuse of passwords within five iterations.
IA-5 - Medium - CCI-000200 - V-4084 - SV-37323r3_rule
RMF Control
IA-5
Severity
Medium
CCI
CCI-000200
Version
GEN000800
Vuln IDs
  • V-4084
Rule IDs
  • SV-37323r3_rule
If a user, or root, used the same password continuously or was allowed to change it back shortly after being forced to change it to something else, it would provide a potential intruder with the opportunity to keep guessing at one user's password until it was guessed correctly.System Administrator
Checks: C-36015r4_chk

# ls /etc/security/opasswd If /etc/security/opasswd does not exist, then this is a finding. # grep password /etc/pam.d/system-auth| egrep '(pam_pwhistory.so|pam_unix.so|pam_cracklib.so)' | grep remember If the "remember" option in /etc/pam.d/system-auth is not 5 or greater, this is a finding. Check for system-auth-ac inclusions. # grep -c system-auth-ac /etc/pam.d/* If the system-auth-ac file is included anywhere # more /etc/pam.d/system-auth-ac | grep password | egrep '(pam_pwhistory.so|pam_unix.so|pam_cracklib.so)' | grep remember If in /etc/pam.d/system-auth-ac is referenced by another file and the "remember" option is not set to 5 or greater this is a finding.

Fix: F-31265r2_fix

Create the password history file. # touch /etc/security/opasswd # chown root:root /etc/security/opasswd # chmod 0600 /etc/security/opasswd Enable password history. If /etc/pam.d/system-auth references /etc/pam.d/system-auth-ac refer to the man page for system-auth-ac for a description of how to add options not configurable with authconfig. Edit /etc/pam.d/system-auth to include the remember option on any "password pam_unix" or "password pam_history" lines set to at least 5.

b
User start-up files must not execute world-writable programs.
AC-6 - Medium - CCI-000225 - V-4087 - SV-37433r3_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001940
Vuln IDs
  • V-4087
Rule IDs
  • SV-37433r3_rule
If start-up files execute world-writable programs, especially in unprotected directories, they could be maliciously modified to become trojans that destroy user files or otherwise compromise the system at the user, or higher, level. If the system is compromised at the user level, it is much easier to eventually compromise the system at the root and network level.System Administrator
Checks: C-36012r7_chk

Determine the world writable files on the system (Note: ignore all files under /proc): # find / -perm -002 -a -type f -exec ls -ld {} \; | &lt;more or redirect the output to a file&gt; # find / -perm -002 -a -type d -exec ls -ld {} \; | &lt;more or redirect the output to a file&gt; View the password file to determine where the home directories for users are: # more /etc/passwd Once the directory for the human users is determined, grep for the lists of world writable files and directories within the users’ home directories. An example would be: # grep /opt/app/bin/daemon /home/*/.* where /home is the directory for the human users on the system and /opt/app/bin/daemon is a world writable file.

Fix: F-31263r2_fix

Remove the world-writable permission of files referenced by local initialization scripts, or remove the references to these files in the local initialization scripts.

b
All system start-up files must be owned by root.
AC-6 - Medium - CCI-000225 - V-4089 - SV-37264r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001660
Vuln IDs
  • V-4089
Rule IDs
  • SV-37264r1_rule
System start-up files not owned by root could lead to system compromise by allowing malicious users or applications to modify them for unauthorized purposes. This could lead to system and network compromise.System AdministratorECLP-1
Checks: C-35954r1_chk

Check run control scripts' ownership. # ls -lL /etc/rc* /etc/init.d Alternatively: # find /etc -name "[SK][0-9]*"|xargs stat -L -c %U:%n If any run control script is not owned by root or bin, this is a finding.

Fix: F-31210r1_fix

Change the ownership of the run control script(s) with incorrect ownership. # find /etc -name "[SK][0-9]*"|xargs stat -L -c %U:%n|egrep -v "^root:"|cut -d: -f2|xargs chown root

b
All system start-up files must be group-owned by root, sys, bin, other, or system.
AC-6 - Medium - CCI-000225 - V-4090 - SV-37269r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001680
Vuln IDs
  • V-4090
Rule IDs
  • SV-37269r1_rule
If system start-up files do not have a group owner of root or a system group, the files may be modified by malicious users or intruders.System AdministratorECLP-1
Checks: C-35960r1_chk

Check run control scripts' group ownership. Procedure: # ls -lL /etc/rc* /etc/init.d Alternatively: # find /etc -name "[SK][0-9]*"|xargs stat -L -c %G:%n|egrep -v "^(root|sys|bin|other):" If any run control script is not group-owned by root, sys, bin, or other system groups, this is a finding.

Fix: F-31216r1_fix

Change the group ownership of the run control script(s) with incorrect group ownership. Procedure: # chgrp root <run control script> # find /etc -name "[SK][0-9]*"|xargs stat -L -c %G:%n|egrep -v "^(root|sys|bin|other):"|cut -d: -f2|xargs chgrp root

b
System start-up files must only execute programs owned by a privileged UID or an application.
AC-6 - Medium - CCI-000225 - V-4091 - SV-37270r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN001700
Vuln IDs
  • V-4091
Rule IDs
  • SV-37270r1_rule
System start-up files executing programs owned by other than root (or another privileged user) or an application indicating the system may have been compromised.System AdministratorDCSL-1
Checks: C-35962r1_chk

Determine the programs executed by system start-up files. Determine the ownership of the executed programs. # cat /etc/rc*/* /etc/init.d/* | more # ls -l &lt;executed program&gt; Alternatively: # for FILE in `egrep -r "/" /etc/rc.* /etc/init.d|awk '/^.*[^\/][0-9A-Za-z_\/]*/{print $2}'|egrep "^/"|sort|uniq`;do if [ -e $FILE ]; then stat -L -c '%U:%n' $FILE;fi;done This provides a list of files referenced by initialization scripts and their associated UIDs. If any file is run by an initialization file and is not owned by root, sys, bin, or in rare cases, an application account, this is a finding.

Fix: F-31218r1_fix

Change the ownership of the file executed from system startup scripts to root, bin, sys, or other. # chown root <executed file>

b
System BIOS or system controllers supporting password protection must have administrator accounts/passwords configured, and no others.
AC-3 - Medium - CCI-000213 - V-4246 - SV-37925r1_rule
RMF Control
AC-3
Severity
Medium
CCI
CCI-000213
Version
GEN008620
Vuln IDs
  • V-4246
Rule IDs
  • SV-37925r1_rule
A system's BIOS or system controller handles the initial startup of a system and its configuration must be protected from unauthorized modification. When the BIOS or system controller supports the creation of user accounts or passwords, such protections must be used and accounts/passwords only assigned to system administrators. Failure to protect BIOS or system controller settings could result in Denial of Service or compromise of the system resulting from unauthorized configuration changes.System AdministratorECSC-1
Checks: C-37163r1_chk

On systems with a BIOS or system controller, verify a supervisor or administrator password is set. If a password is not set, this is a finding. If the BIOS or system controller supports user-level access in addition to supervisor/administrator access, determine if this access is enabled. If so, this is a finding.

Fix: F-4157r2_fix

Access the system's BIOS or system controller. Set a supervisor/administrator password if one has not been set. Disable a user-level password if one has been set.

c
The system must not use removable media as the boot loader.
CM-6 - High - CCI-000366 - V-4247 - SV-41534r1_rule
RMF Control
CM-6
Severity
High
CCI
CCI-000366
Version
GEN008640
Vuln IDs
  • V-4247
Rule IDs
  • SV-41534r1_rule
Malicious users with removable boot media can gain access to a system configured to use removable media as the boot loader.System AdministratorECSC-1
Checks: C-2057r2_chk

Ask the SA if the system uses removable media for the boot loader. If it does, this is a finding.

Fix: F-4158r2_fix

Configure the system to use a bootloader installed on fixed media.

c
For systems capable of using GRUB, the system must be configured with GRUB as the default boot loader unless another boot loader has been authorized, justified, and documented using site-defined procedures.
CM-6 - High - CCI-000366 - V-4248 - SV-42186r1_rule
RMF Control
CM-6
Severity
High
CCI
CCI-000366
Version
GEN008660
Vuln IDs
  • V-4248
Rule IDs
  • SV-42186r1_rule
GRUB is a versatile boot loader used by several platforms that can provide authentication for access to the system or boot loader.System AdministratorECAR-1, ECAR-2, ECAR-3
Checks: C-40580r1_chk

Determine if the system uses the GRUB boot loader; # ls -l /boot/grub/grub.conf If no grub.conf file exists, and the bootloader on the system has not been authorized, justified, and documented, this is a finding.

Fix: F-35823r1_fix

Configure the system to use the GRUB bootloader or document, justify, and authorize the alternate bootloader.

c
The system boot loader must require authentication.
AC-3 - High - CCI-000213 - V-4249 - SV-37933r1_rule
RMF Control
AC-3
Severity
High
CCI
CCI-000213
Version
GEN008700
Vuln IDs
  • V-4249
Rule IDs
  • SV-37933r1_rule
If the system's boot loader does not require authentication, users with console access to the system may be able to alter the system boot configuration or boot the system into single user or maintenance mode, which could result in Denial of Service or unauthorized privileged access to the system.System AdministratorIAIA-1, IAIA-2
Checks: C-37191r1_chk

Check the "/boot/grub/grub.conf" or "/boot/grub/menu.lst" files. # more /boot/grub/menu.lst Check for a password configuration line, such as: password --md5 &lt;password-hash&gt; This line should be just below the line beginning with "timeout". Please note &lt;password-hash&gt; will be replaced by the actual MD5 encrypted password. If the password line is not in either of the files, this is a finding. For any bootloader other than GRUB which has been authorized, justified and documented for use on the system refer to the vendor documentation on password support. If the bootloader does not support encrypted passwords, this is a finding.

Fix: F-32425r1_fix

The GRUB console boot loader can be configured to use an MD5 encrypted password by adding password --md5 password-hash to the "/boot/grub/grub.conf" file. Use "/sbin/grub-md5-crypt" to generate MD5 passwords from the command line.

b
The system's boot loader configuration file(s) must have mode 0600 or less permissive.
AC-6 - Medium - CCI-000225 - V-4250 - SV-37942r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN008720
Vuln IDs
  • V-4250
Rule IDs
  • SV-37942r1_rule
File permissions greater than 0600 on boot loader configuration files could allow an unauthorized user to view or modify sensitive information pertaining to system boot instructions.System AdministratorECLP-1
Checks: C-37221r2_chk

Check /boot/grub/grub.conf permissions: # ls -lL /boot/grub/grub.conf If /boot/grub/grub.conf has a mode more permissive than 0600, then this is a finding. For any bootloader other than GRUB which has been authorized, justified and documented for use on the system refer to the vendor documentation for the location of the configuration file. If the bootloader configuration file has a mode more permissive than 0600, this is a finding.

Fix: F-32433r1_fix

Change the mode of the grub.conf file to 0600. # chmod 0600 /boot/grub/grub.conf

c
If the system boots from removable media, it must be stored in a safe or similarly secured container.
SC-32 - High - CCI-001208 - V-4255 - SV-4255r2_rule
RMF Control
SC-32
Severity
High
CCI
CCI-001208
Version
GEN008680
Vuln IDs
  • V-4255
Rule IDs
  • SV-4255r2_rule
Storing the boot loader on removable media in an insecure location could allow a malicious user to modify the systems boot instructions or boot to an insecure operating system.System AdministratorInformation Assurance OfficerPESS-1
Checks: C-2079r2_chk

Ask the SA if the system boots from removable media. If so, ask if the boot media is stored in a secure container when not in use. If it is not, this is a finding.

Fix: F-4166r2_fix

Store the system boot media in a secure container when not in use.

c
The system must not have special privilege accounts, such as shutdown and halt.
AC-6 - High - CCI-000225 - V-4268 - SV-37181r1_rule
RMF Control
AC-6
Severity
High
CCI
CCI-000225
Version
GEN000000-LNX00320
Vuln IDs
  • V-4268
Rule IDs
  • SV-37181r1_rule
If special privilege accounts are compromised, the accounts could provide privileges to execute malicious commands on a system.System AdministratorIAAC-1
Checks: C-35884r1_chk

Perform the following to check for unnecessary privileged accounts: # grep "^shutdown" /etc/passwd # grep "^halt" /etc/passwd # grep "^reboot" /etc/passwd If any unnecessary privileged accounts exist this is a finding.

Fix: F-31139r1_fix

Remove any special privilege accounts, such as shutdown and halt, from the /etc/passwd and /etc/shadow files using the "userdel" or "system-config-users" commands.

b
The system must not have unnecessary accounts.
AC-2 - Medium - CCI-000012 - V-4269 - SV-38176r1_rule
RMF Control
AC-2
Severity
Medium
CCI
CCI-000012
Version
GEN000290
Vuln IDs
  • V-4269
Rule IDs
  • SV-38176r1_rule
Accounts providing no operational purpose provide additional opportunities for system compromise. Unnecessary accounts include user accounts for individuals not requiring access to the system and application accounts for applications not installed on the system.System AdministratorIAAC-1
Checks: C-37560r2_chk

Check the system for unnecessary user accounts. Procedure: # more /etc/passwd Obtain a list of authorized accounts from the IAO. If any unnecessary accounts are found on the system, this is a finding.

Fix: F-32804r1_fix

Remove all unnecessary accounts from the /etc/passwd file before connecting a system to the network. Other accounts that are associated with a service not in use should also be removed.

b
The /etc/news/incoming.conf (or equivalent) must have mode 0600 or less permissive.
AC-6 - Medium - CCI-000225 - V-4273 - SV-37901r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN006260
Vuln IDs
  • V-4273
Rule IDs
  • SV-37901r1_rule
Excessive permissions on the "incoming.conf" file may allow unauthorized modification which could lead to Denial-of-Service to authorized users or provide access to unauthorized users.System AdministratorECLP-1
Checks: C-37127r1_chk

RHEL uses the InternetNewsDaemon (innd) news server. The file corresponding to "/etc/news/hosts.nntp" is "/etc/news/incoming.conf". Check the permissions for "/etc/news/incoming.conf". # ls -lL /etc/news/incoming.conf If "/etc/news/incoming.conf" has a mode more permissive than 0600, this is a finding.

Fix: F-32395r1_fix

Change the mode of the "/etc/news/incoming.conf" file to 0600. # chmod 0600 /etc/news/incoming.conf

b
The /etc/news/infeed.conf (or equivalent) must have mode 0600 or less permissive.
AC-6 - Medium - CCI-000225 - V-4274 - SV-37712r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN006280
Vuln IDs
  • V-4274
Rule IDs
  • SV-37712r1_rule
Excessive permissions on the "" file may allow unauthorized modification which could lead to Denial of Service to authorized users or provide access to unauthorized users.System AdministratorECLP-1
Checks: C-36913r1_chk

RHEL uses the InternetNewsDaemon (innd) news server. The file that corresponds to "/etc/news/hosts.nntp.nolimit" is "/etc/news/infeed.conf". Check the permissions for "/etc/news/infeed.conf". # ls -lL /etc/news/infeed.conf If "/etc/news/infeed.conf" has a mode more permissive than 0600, this is a finding.

Fix: F-32122r1_fix

Change the mode of "/etc/news/infeed.conf" to 0600. # chmod 0600 /etc/news/infeed.conf

b
The /etc/news/readers.conf (or equivalent) must have mode 0600 or less permissive.
AC-6 - Medium - CCI-000225 - V-4275 - SV-37714r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN006300
Vuln IDs
  • V-4275
Rule IDs
  • SV-37714r1_rule
Excessive permissions on the readers.conf file may allow unauthorized modification which could lead to Denial of Service to authorized users or provide access to unauthorized users.System AdministratorECLP-1
Checks: C-36918r1_chk

Check the permissions for "/etc/news/readers.conf". # ls -lL /etc/news/readers.conf If /etc/news/readers.conf has a mode more permissive than 0600, this is a finding.

Fix: F-32155r1_fix

Change the mode of the /etc/news/readers.conf file to 0600. # chmod 0600 /etc/news/readers.conf

b
The /etc/news/passwd.nntp file (or equivalent) must have mode 0600 or less permissive.
AC-6 - Medium - CCI-000225 - V-4276 - SV-37731r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN006320
Vuln IDs
  • V-4276
Rule IDs
  • SV-37731r1_rule
File permissions more permissive than 0600 for "/etc/news/passwd.nntp" may allow access to privileged information by system intruders or malicious users.System AdministratorECLP-1
Checks: C-36928r1_chk

Check "/etc/news/passwd.nntp" permissions: # ls -lL /etc/news/passwd.nntp If "/etc/news/passwd.nntp" has a mode more permissive than 0600, this is a finding.

Fix: F-32193r1_fix

Change the mode of the "/etc/news/passwd.nntp" file. # chmod 0600 /etc/news/passwd.nntp

b
Files in /etc/news must be owned by root or news.
AC-6 - Medium - CCI-000225 - V-4277 - SV-37735r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN006340
Vuln IDs
  • V-4277
Rule IDs
  • SV-37735r1_rule
If critical system files are not owned by a privileged user, system integrity could be compromised.System AdministratorECLP-1
Checks: C-36931r1_chk

Check the ownership of the files in "/etc/news". Procedure: # ls -al /etc/news If any files are not owned by root or news, this is a finding.

Fix: F-32195r1_fix

Change the ownership of the files in "/etc/news" to root or news. Procedure: # chown root /etc/news/*

b
The files in /etc/news must be group-owned by root or news.
AC-6 - Medium - CCI-000225 - V-4278 - SV-37737r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN006360
Vuln IDs
  • V-4278
Rule IDs
  • SV-37737r1_rule
If critical system files do not have a privileged group-owner, system integrity could be compromised.System AdministratorECLP-1
Checks: C-36933r1_chk

Check "/etc/news" files group ownership: Procedure: # ls -al /etc/news If "/etc/news" files are not group-owned by root or news, this is a finding.

Fix: F-32198r1_fix

Change the group-owner of the files in "/etc/news" to root or news. Procedure: # chgrp root /etc/news/*

c
The SSH daemon must be configured to only use the SSHv2 protocol.
AC-17 - High - CCI-001436 - V-4295 - SV-37818r2_rule
RMF Control
AC-17
Severity
High
CCI
CCI-001436
Version
GEN005500
Vuln IDs
  • V-4295
Rule IDs
  • SV-37818r2_rule
SSHv1 is not a DoD-approved protocol and has many well-known vulnerability exploits. Exploits of the SSH daemon could provide immediate root access to the system.System Administrator
Checks: C-37020r1_chk

Locate the sshd_config file: # more /etc/ssh/sshd_config Examine the file. If the variables 'Protocol 2,1' or 'Protocol 1' are defined on a line without a leading comment, this is a finding. If the SSH server is F-Secure, the variable name for SSH 1 compatibility is 'Ssh1Compatibility', not 'protocol'. If the variable 'Ssh1Compatiblity' is set to 'yes', then this is a finding.

Fix: F-32288r2_fix

Edit the sshd_config file and set the "Protocol" setting to "2". If using the F-Secure SSH server, set the "Ssh1Compatibility" setting to "no". Restart the SSH daemon. # /sbin/service sshd restart

b
Remote consoles must be disabled or protected from unauthorized access.
AC-17 - Medium - CCI-000070 - V-4298 - SV-37376r1_rule
RMF Control
AC-17
Severity
Medium
CCI
CCI-000070
Version
GEN001000
Vuln IDs
  • V-4298
Rule IDs
  • SV-37376r1_rule
The remote console feature provides an additional means of access to the system which could allow unauthorized access if not disabled or properly secured. With virtualization technologies, remote console access is essential as there is no physical console for virtual machines. Remote console access must be protected in the same manner as any other remote privileged access method.System AdministratorECSC-1
Checks: C-36063r1_chk

Check /etc/securetty # more /etc/securetty If the file does not exist, or contains more than "console" or a single "tty" device this is a finding.

Fix: F-31307r1_fix

Create if needed and set the contents of /etc/securetty to a "console" or "tty" device. # echo console > /etc/securetty or # echo tty1 > /etc/securetty

b
The system clock must be synchronized to an authoritative DoD time source.
AU-8 - Medium - CCI-001492 - V-4301 - SV-37402r1_rule
RMF Control
AU-8
Severity
Medium
CCI
CCI-001492
Version
GEN000240
Vuln IDs
  • V-4301
Rule IDs
  • SV-37402r1_rule
To assure the accuracy of the system clock, it must be synchronized with an authoritative time source within DoD. Many system functions, including time-based login and activity restrictions, automated reports, system logs, and audit records depend on an accurate system clock. If there is no confidence in the correctness of the system clock, time-based functions may not operate as intended and records may be of diminished value. Authoritative time sources include authorized time servers within the enclave that synchronize with upstream authoritative sources. Specific requirements for the upstream synchronization of network time protocol (NTP) servers are covered in the Network Other Devices STIG. For systems located on isolated or closed networks, it is not necessary to synchronize with a global authoritative time source. If a global authoritative time source is not available to systems on an isolated network, a local authoritative time source must be established on this network and used by the systems connected to this network. This is necessary to provide the ability to correlate events and allow for the correct operation of time-dependent protocols between systems on the isolated network. If the system is completely isolated (i.e., it has no connections to networks or other systems), time synchronization is not required as no correlation of events between systems will be necessary. If the system is completely isolated, this requirement is not applicable.System AdministratorECSC-1
Checks: C-36085r1_chk

Check if NTP running: # ps -ef | egrep "xntpd|ntpd" Check if "ntpd -qg" scheduled to run: # grep "ntpd -qg" /var/spool/cron/* # grep "ntpd -qg" /etc/cron.d/* # grep "ntpd -qg" /etc/cron.daily/* # grep "ntpd -qg" /etc/cron.hourly/* # grep "ntpd -qg" /etc/cron.monthly/* # grep "ntpd -qg" /etc/cron.weekly/* If NTP is running or "ntpd -qg" is found: # more /etc/ntp.conf Confirm the timeservers and peers or multicast client (as applicable) are local or authoritative U.S. DoD sources appropriate for the level of classification which the network operates. If a non-local/non-authoritative time-server is used, this is a finding.

Fix: F-31332r2_fix

Use an authoritative local time server or a time server operated by the U.S. government. Ensure all systems in the facility feed from one or more local time servers which feed from the authoritative U.S. government time server.

b
The root file system must employ journaling or another mechanism ensuring file system consistency.
CP-10 - Medium - CCI-000553 - V-4304 - SV-37398r1_rule
RMF Control
CP-10
Severity
Medium
CCI
CCI-000553
Version
GEN003640
Vuln IDs
  • V-4304
Rule IDs
  • SV-37398r1_rule
File system journaling, or logging, can allow reconstruction of file system data after a system crash, preserving the integrity of data that may have otherwise been lost. Journaling file systems typically do not require consistency checks upon booting after a crash, which can improve system availability. Some file systems employ other mechanisms to ensure consistency also satisfying this requirement.System AdministratorECAR-1, ECAR-2, ECAR-3
Checks: C-36083r1_chk

Logging should be enabled for those types of file systems not turning on logging by default. Procedure: # mount JFS, VXFS, HFS, XFS, reiserfs, EXT3 and EXT4 all turn logging on by default and will not be a finding. The ZFS file system uses other mechanisms to provide for file system consistency, and will not be a finding. For other file systems types, if the root file system does not support journaling this is a finding. If the 'nolog' option is set on the root file system that does support journaling, this is a finding.

Fix: F-31330r1_fix

Implement file system journaling for the root file system, or use a file system with other mechanisms to ensure file system consistency. If the root file system supports journaling, enable it. If the file system does not support journaling or another mechanism to ensure file system consistency, a migration to a different file system will be necessary.

b
The system must not run Samba unless needed.
AC-17 - Medium - CCI-001436 - V-4321 - SV-37867r1_rule
RMF Control
AC-17
Severity
Medium
CCI
CCI-001436
Version
GEN006060
Vuln IDs
  • V-4321
Rule IDs
  • SV-37867r1_rule
Samba is a tool used for the sharing of files and printers between Windows and UNIX operating systems. It provides access to sensitive files and, therefore, poses a security risk if compromised.System AdministratorECSC-1
Checks: C-37082r1_chk

Check the system for a running Samba server. Procedure: # ps -ef |grep smbd If the Samba server is running, ask the SA if the Samba server is operationally required. If it is not, this is a finding.

Fix: F-32354r1_fix

If there is no functional need for Samba and the daemon is running, disable the daemon by killing the process ID as noted from the output of ps -ef |grep smbd. The samba package should also be removed or not installed if there is no functional requirement. Procedure: rpm -qa |grep samba This will show whether "samba" or "samba3x" is installed. To remove: rpm --erase samba or rpm --erase samba3x

b
The /etc/sysctl.conf file must be owned by root.
AC-6 - Medium - CCI-000225 - V-4334 - SV-37253r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN000000-LNX00480
Vuln IDs
  • V-4334
Rule IDs
  • SV-37253r1_rule
The sysctl.conf file specifies the values for kernel parameters to be set on boot. These settings can affect the system's security.System AdministratorECLP-1
Checks: C-35944r1_chk

Check /etc/sysctl.conf ownership. # ls -lL /etc/sysctl.conf If /etc/sysctl.conf is not owned by root, this is a finding.

Fix: F-31200r1_fix

Use the chown command to change the owner of /etc/sysctl.conf to root: # chown root /etc/sysctl.conf

b
The /etc/sysctl.conf file must be group-owned by root.
AC-6 - Medium - CCI-000225 - V-4335 - SV-37257r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN000000-LNX00500
Vuln IDs
  • V-4335
Rule IDs
  • SV-37257r1_rule
The sysctl.conf file specifies the values for kernel parameters to be set on boot. These settings can affect the system's security.System AdministratorECLP-1
Checks: C-35947r1_chk

Check /etc/sysctl.conf group ownership: # ls -lL /etc/sysctl.conf If /etc/sysctl.conf is not group-owned by root, this is a finding.

Fix: F-31203r1_fix

Use the chgrp command to change the group owner of /etc/sysctl.conf to root: # chgrp root /etc/sysctl.conf

b
The /etc/sysctl.conf file must have mode 0600 or less permissive.
AC-6 - Medium - CCI-000225 - V-4336 - SV-37258r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN000000-LNX00520
Vuln IDs
  • V-4336
Rule IDs
  • SV-37258r1_rule
The sysctl.conf file specifies the values for kernel parameters to be set on boot. These settings can affect the system's security.System AdministratorECLP-1
Checks: C-35948r1_chk

Check /etc/sysctl.conf permissions: # ls -lL /etc/sysctl.conf If /etc/sysctl.conf has a mode more permissive than 0600, this is a finding.

Fix: F-31204r1_fix

Use the chmod command to change the mode of the /etc/sysctl.conf file. # chmod 0600 /etc/sysctl.conf

c
The Linux NFS Server must not have the insecure file locking option.
AC-6 - High - CCI-000225 - V-4339 - SV-37316r1_rule
RMF Control
AC-6
Severity
High
CCI
CCI-000225
Version
GEN000000-LNX00560
Vuln IDs
  • V-4339
Rule IDs
  • SV-37316r1_rule
Insecure file locking could allow for sensitive data to be viewed or edited by an unauthorized user.System AdministratorIAIA-1, IAIA-2
Checks: C-36008r1_chk

Determine if an NFS server is running on the system by: # ps -ef |grep nfsd If an NFS server is running, confirm it is not configured with the insecure_locks option by: # exportfs -v The example below would be a finding: /misc/export speedy.example.com(rw,insecure_locks)

Fix: F-4250r3_fix

Remove the "insecure_locks" option from all NFS exports on the system. Procedure: Edit /etc/exports and remove all instances of the insecure_locks option. Re-export the file systems to make the setting take effect. # exportfs -a

c
The x86 CTRL-ALT-DELETE key sequence must be disabled.
CM-6 - High - CCI-000366 - V-4342 - SV-37327r1_rule
RMF Control
CM-6
Severity
High
CCI
CCI-000366
Version
GEN000000-LNX00580
Vuln IDs
  • V-4342
Rule IDs
  • SV-37327r1_rule
Undesirable reboots can occur if the CTRL-ALT-DELETE key sequence is not disabled. Such reboots may cause a loss of data or loss of access to critical information.System AdministratorECSC-1
Checks: C-36030r2_chk

Verify that reboot using the CTRL-ALT-DELETE key sequence has been disabled by performing: # grep ctrlaltdel /etc/inittab If the line returned does not specify "/usr/bin/logger", or is not commented out, this is a finding.

Fix: F-31276r1_fix

Ensure the CTRL-ALT-DELETE key sequence has been disabled and attempts to use the sequence are logged. In the /etc/inittab file replace: ca::ctrlaltdel:/sbin/shutdown -t3 -r now with ca:nil:ctrlaltdel:/usr/bin/logger -p security.info "Ctrl-Alt-Del was pressed"

b
The Linux PAM system must not grant sole access to admin privileges to the first user who logs into the console.
AC-6 - Medium - CCI-000225 - V-4346 - SV-37339r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN000000-LNX00600
Vuln IDs
  • V-4346
Rule IDs
  • SV-37339r1_rule
If an unauthorized user has been granted privileged access while logged in at the console, the security posture of a system could be greatly compromised. Additionally, such a situation could deny legitimate root access from another terminal.System AdministratorECPA-1
Checks: C-2225r2_chk

Ensure the pam_console.so module is not configured in any files in /etc/pam.d by: # cd /etc/pam.d # grep pam_console.so * Or # ls -la /etc/security/console.perms If either the pam_console.so entry or the file /etc/security/console.perms is found then this is a finding.

Fix: F-4257r3_fix

Configure PAM to not grant sole access of administrative privileges to the first user logged in at the console. Identify any instances of pam_console. # cd /etc/pam.d # grep pam_console.so * For any files containing an un-commented reference to pam_console.so, edit the file and remove or comment out the reference. Remove the console.perms file if it exists: # rm /etc/security/console.perms

b
Audit logs must be rotated daily.
CM-6 - Medium - CCI-000366 - V-4357 - SV-37945r1_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN002860
Vuln IDs
  • V-4357
Rule IDs
  • SV-37945r1_rule
Rotate audit logs daily to preserve audit file system space and to conform to the DoD/DISA requirement. If it is not rotated daily and moved to another location, then there is more of a chance for the compromise of audit data by malicious users.System AdministratorECSC-1
Checks: C-37230r1_chk

Check for any crontab entries that rotate audit logs. Procedure: # crontab -l If such a cron job is found, this is not a finding. Otherwise, query the SA. If there is a process automatically rotating audit logs, this is not a finding. If the SA manually rotates audit logs, this is a finding, because if the SA is not there, it will not be accomplished. If the audit output is not archived daily, to tape or disk, this is a finding. This can be ascertained by looking at the audit log directory and, if more than one file is there, or if the file does not have today's date, this is a finding.

Fix: F-32436r1_fix

Configure a cron job or other automated process to rotate the audit logs on a daily basis.

b
The cron.deny file must have mode 0600 or less permissive.
AC-6 - Medium - CCI-000225 - V-4358 - SV-27362r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003200
Vuln IDs
  • V-4358
Rule IDs
  • SV-27362r1_rule
If file permissions for cron.deny are more permissive than 0600, sensitive information could be viewed or edited by unauthorized users. System AdministratorECLP-1
Checks: C-28506r1_chk

Check the mode of the cron.deny file. # ls -lL /etc/cron.deny If the cron.deny file does not exist this is not a finding. If the cron.deny file exists and the mode is more permissive than 0600, this is a finding.

Fix: F-24608r1_fix

Change the mode of the cron.deny file. # chmod 0600 /etc/cron.deny

a
Cron programs must not set the umask to a value less restrictive than 077.
AC-6 - Low - CCI-000225 - V-4360 - SV-37489r1_rule
RMF Control
AC-6
Severity
Low
CCI
CCI-000225
Version
GEN003220
Vuln IDs
  • V-4360
Rule IDs
  • SV-37489r1_rule
The umask controls the default access mode assigned to newly created files. A umask of 077 limits new files to mode 700 or less permissive. Although umask is often represented as a 4-digit octal number, the first digit representing special access modes is typically ignored or required to be 0.trueIf a cron program sets the umask to 000 or does not restrict the world-writable permission, this becomes a CAT I finding.System AdministratorECCD-1, ECCD-2
Checks: C-36148r1_chk

Determine if there are any crontabs by viewing a long listing of the directory. If there are crontabs, examine them to determine what cron jobs exist. Check for any programs specifying an umask more permissive than 077: Procedure: # ls -lL /var/spool/cron # ls -lL /etc/cron.d /etc/cron.daily /etc/cron.hourly /etc/cron.monthly /etc/cron.weekly or # ls -lL /etc/cron.*|grep -v deny # cat &lt;crontab file&gt; # grep umask &lt;cron program&gt; If there are no cron jobs present, this vulnerability is not applicable. If any cron job contains an umask more permissive than 077, this is a finding.

Fix: F-31397r1_fix

Edit cron script files and modify the umask to 077.

b
The cron.allow file must be owned by root, bin, or sys.
AC-6 - Medium - CCI-000225 - V-4361 - SV-27369r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003240
Vuln IDs
  • V-4361
Rule IDs
  • SV-27369r1_rule
If the owner of the cron.allow file is not set to root, bin, or sys, the possibility exists for an unauthorized user to view or to edit sensitive information.System AdministratorECLP-1
Checks: C-28513r1_chk

# ls -lL /etc/cron.allow If the cron.allow file is not owned by root, sys, or bin, this is a finding.

Fix: F-24614r1_fix

# chown root /etc/cron.allow

b
The "at" directory must have mode 0755 or less permissive.
AC-6 - Medium - CCI-000225 - V-4364 - SV-37521r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003400
Vuln IDs
  • V-4364
Rule IDs
  • SV-37521r1_rule
If the "at" directory has a mode more permissive than 0755, unauthorized users could be allowed to view or to edit files containing sensitive information within the "at" directory. Unauthorized modifications could result in Denial of Service to authorized "at" jobs.System AdministratorECLP-1
Checks: C-36181r1_chk

Check the mode of the "at" directory. Procedure: # ls -ld /var/spool/at If the directory mode is more permissive than 0755, this is a finding.

Fix: F-31433r1_fix

Change the mode of the "at" directory to 0755. Procedure: # chmod 0755 <at directory>

b
The at directory must be owned by root, bin, sys, daemon, or cron.
AC-6 - Medium - CCI-000225 - V-4365 - SV-37527r2_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003420
Vuln IDs
  • V-4365
Rule IDs
  • SV-37527r2_rule
If the owner of the "at" directory is not root, bin, or sys, unauthorized users could be allowed to view or edit files containing sensitive information within the directory.System Administrator
Checks: C-36186r2_chk

Check the ownership of the "at" directory: Procedure: # ls -ld /var/spool/at If the directory is not owned by root, sys, bin, daemon, or cron, this is a finding.

Fix: F-31441r1_fix

Change the owner of the "at" directory to root, bin, sys, or system. Procedure: # chown <root or other system account> <"at" directory>

b
"At" jobs must not set the umask to a value less restrictive than 077.
AC-6 - Medium - CCI-000225 - V-4366 - SV-37531r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003440
Vuln IDs
  • V-4366
Rule IDs
  • SV-37531r1_rule
The umask controls the default access mode assigned to newly created files. A umask of 077 limits new files to mode 700 or less permissive. Although umask is often represented as a 4-digit number, the first digit representing special access modes is typically ignored or required to be 0.trueInformation Assurance OfficerSystem AdministratorECCD-1, ECCD-2
Checks: C-36190r1_chk

Determine what "at" jobs exist on the system. Procedure: # ls /var/spool/at If there are no "at" jobs present, this is not applicable. Determine if any of the "at" jobs or any scripts referenced execute the "umask" command. Check for any umask setting more permissive than 077. # grep umask &lt;at job or referenced script&gt; If any "at" job or referenced script sets umask to a value more permissive than 077, this is a finding.

Fix: F-31445r1_fix

Edit "at" jobs or referenced scripts to remove "umask" commands that set umask to a value less restrictive than 077.

b
The at.allow file must be owned by root, bin, or sys.
AC-6 - Medium - CCI-000225 - V-4367 - SV-37533r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003460
Vuln IDs
  • V-4367
Rule IDs
  • SV-37533r1_rule
If the owner of the at.allow file is not set to root, bin, or sys, unauthorized users could be allowed to view or edit sensitive information contained within the file.System AdministratorECLP-1
Checks: C-36192r1_chk

# ls -lL /etc/at.allow If the at.allow file is not owned by root, sys, or bin, this is a finding.

Fix: F-31448r1_fix

Change the owner of the at.allow file. # chown root /etc/at.allow

b
The at.deny file must be owned by root, bin, or sys.
AC-6 - Medium - CCI-000225 - V-4368 - SV-37535r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003480
Vuln IDs
  • V-4368
Rule IDs
  • SV-37535r1_rule
If the owner of the at.deny file is not set to root, bin, or sys, unauthorized users could be allowed to view or edit sensitive information contained within the file.System AdministratorECLP-1
Checks: C-36194r1_chk

# ls -lL /etc/at.deny If the at.deny file is not owned by root, sys, or bin, this is a finding.

Fix: F-31451r1_fix

Change the owner of the at.deny file. # chown root /etc/at.deny

b
The traceroute command owner must be root.
AC-6 - Medium - CCI-000225 - V-4369 - SV-37463r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003960
Vuln IDs
  • V-4369
Rule IDs
  • SV-37463r1_rule
If the traceroute command owner has not been set to root, an unauthorized user could use this command to obtain knowledge of the network topology inside the firewall. This information may allow an attacker to determine trusted routers and other network information potentially leading to system and network compromise.System AdministratorECLP-1
Checks: C-36129r1_chk

# ls -lL /bin/traceroute If the traceroute command is not owned by root, this is a finding.

Fix: F-31373r1_fix

Change the owner of the traceroute command to root. Example: # chown root /bin/traceroute

b
The traceroute command must be group-owned by sys, bin, root, or system.
AC-6 - Medium - CCI-000225 - V-4370 - SV-37464r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN003980
Vuln IDs
  • V-4370
Rule IDs
  • SV-37464r1_rule
If the group owner of the traceroute command has not been set to a system group, unauthorized users could have access to the command and use it to gain information regarding a network's topology inside of the firewall. This information may allow an attacker to determine trusted routers and other network information potentially leading to system and network compromise.System AdministratorECLP-1
Checks: C-36130r1_chk

Check the group ownership of the traceroute file. Procedure: # ls -lL /bin/traceroute If the traceroute command is not group-owned by root, sys, bin, or system, this is a finding.

Fix: F-31375r1_fix

Change the group-owner of the traceroute command to root. Procedure: # chgrp root /bin/traceroute

b
The traceroute file must have mode 0700 or less permissive.
AC-6 - Medium - CCI-000225 - V-4371 - SV-37465r1_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN004000
Vuln IDs
  • V-4371
Rule IDs
  • SV-37465r1_rule
If the mode of the traceroute executable is more permissive than 0700, malicious code could be inserted by an attacker and triggered whenever the traceroute command is executed by authorized users. Additionally, if an unauthorized user is granted executable permissions to the traceroute command, it could be used to gain information about the network topology behind the firewall. This information may allow an attacker to determine trusted routers and other network information potentially leading to system and network compromise.System AdministratorECLP-1
Checks: C-36131r1_chk

# ls -lL /bin/traceroute If the traceroute command has a mode more permissive than 0700, this is a finding.

Fix: F-31376r1_fix

Change the mode of the traceroute command. # chmod 0700 /bin/traceroute

c
Administrative accounts must not run a web browser, except as needed for local service administration.
AC-6 - High - CCI-000225 - V-4382 - SV-37469r2_rule
RMF Control
AC-6
Severity
High
CCI
CCI-000225
Version
GEN004220
Vuln IDs
  • V-4382
Rule IDs
  • SV-37469r2_rule
If a web browser flaw is exploited while running as a privileged user, the entire system could be compromised. Specific exceptions for local service administration should be documented in site-defined policy. These exceptions may include HTTP(S)-based tools used for the administration of the local system, services, or attached devices. Examples of possible exceptions are HP's System Management Homepage (SMH), the CUPS administrative interface, and Sun's StorageTek Common Array Manager (CAM) when these services are running on the local system.System Administrator
Checks: C-36135r3_chk

Look in the root account home directory for a .mozilla directory. If none exists, this is not a finding. If there is one, verify with the root users and the IAO the intent of the browsing. If the browsing is not limited to authorized local services administration, this is a finding.

Fix: F-31380r1_fix

Enforce policy requiring administrative accounts use web browsers only for local service administration.

a
The SMTP service's SMTP greeting must not provide version information.
CM-6 - Low - CCI-000366 - V-4384 - SV-37505r2_rule
RMF Control
CM-6
Severity
Low
CCI
CCI-000366
Version
GEN004560
Vuln IDs
  • V-4384
Rule IDs
  • SV-37505r2_rule
The version of the SMTP service can be used by attackers to plan an attack based on vulnerabilities present in the specific version.System Administrator
Checks: C-36163r1_chk

To check for the version of either sendmail or Postfix being displayed in the greeting: # telnet localhost 25 If a version number is displayed, this is a finding.

Fix: F-31414r2_fix

Ensure sendmail or Postfix has been configured to mask the version information. Procedure for sendmail: Edit the /etc/mail/sendmail.mc file to mask the veresion number by editing the line with "dnl" as follows: define(`confSMTP_LOGIN_MSG', ` Mail Server Ready ; $b')dnl rebuild the sendmail.cf file. for Postfix: Examine the "smtpd_banner" line of /etc/postfix/main.conf and remove any "$mail_version" entry on it or comment the entire "smtpd_banner" line to use the default value which does not display the version information.

b
The system must not use .forward files.
CM-6 - Medium - CCI-000366 - V-4385 - SV-37506r3_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN004580
Vuln IDs
  • V-4385
Rule IDs
  • SV-37506r3_rule
The .forward file allows users to automatically forward mail to another system. Use of .forward files could allow the unauthorized forwarding of mail and could potentially create mail loops which could degrade system performance.System Administrator
Checks: C-36165r2_chk

Check forwarding capability from sendmail. Procedure: grep "O ForwardPath" /etc/mail/sendmail.cf If the entry contains a file path, this is a finding. Search for any .forward in users home directories on the system by: # for pwline in `cut -d: -f1,6 /etc/passwd`; do homedir=`echo ${pwline}|cut -d: -f2`;username=`echo ${pwline} | cut -d: -f1`;echo $username `stat -c %n $homedir/.forward 2&gt;null`; done|egrep "\.forward" If any users have a .forward file in their home directory, this is a finding.

Fix: F-31416r3_fix

Disable forwarding for sendmail and remove .forward files from the system Procedure: Edit the /etc/mail/sendmail.mc file to change the ForwardPath entry to a null path by adding the line define(`confFORWARD_PATH',`') rebuild the sendmail.cf file. If the /etc/mail/sendmail.mc file does not exist, the sendmail.cf file should be updated directly. Remove all .forward files on the system # find / -name .forward -delete

c
Anonymous FTP accounts must not have a functional shell.
AC-6 - High - CCI-000225 - V-4387 - SV-37549r2_rule
RMF Control
AC-6
Severity
High
CCI
CCI-000225
Version
GEN005000
Vuln IDs
  • V-4387
Rule IDs
  • SV-37549r2_rule
If an anonymous FTP account has been configured to use a functional shell, attackers could gain access to the shell if the account is compromised.System Administrator
Checks: C-36203r2_chk

Check the shell for the anonymous FTP account. Procedure: # cat /etc/passwd | grep -i "^ftp:" | awk -F":" '{print$7}' If the seventh field is empty (the entry ends with a ':') or if the seventh field does not contain one of the following, this is a finding: /bin/false /dev/null /usr/bin/false /bin/true /sbin/nologin

Fix: F-31462r1_fix

Configure anonymous FTP accounts to use a non-functional shell. If necessary, edit the /etc/passwd file to remove any functioning shells associated with the ftp account and replace them with non-functioning shells, such as /dev/null.

b
If the system is a Network Management System (NMS) server, it must only run the NMS and any software required by the NMS.
SC-32 - Medium - CCI-001208 - V-4392 - SV-37708r1_rule
RMF Control
SC-32
Severity
Medium
CCI
CCI-001208
Version
GEN005380
Vuln IDs
  • V-4392
Rule IDs
  • SV-37708r1_rule
Installing extraneous software on a system designated as a dedicated Network Management System (NMS) server poses a security threat to the system and the network. Should an attacker gain access to the NMS through unauthorized software, the entire network may be susceptible to malicious activity.System AdministratorDCPA-1
Checks: C-36903r1_chk

Ask the SA if this is an NMS server. If it is an NMS server, then ask what other applications run on it. If there is anything other than network management software and DBMS software used only for the storage and inquiry of NMS data, this is a finding.

Fix: F-32073r1_fix

Ensure only authorized software is loaded on a designated NMS server. Authorized software is limited to the NMS software itself, a database management system for the NMS server if necessary, and network management software.

b
The /etc/syslog.conf file must be owned by root.
AC-6 - Medium - CCI-000225 - V-4393 - SV-37707r2_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN005400
Vuln IDs
  • V-4393
Rule IDs
  • SV-37707r2_rule
If the /etc/syslog.conf file is not owned by root, unauthorized users could be allowed to view, edit, or delete important system messages handled by the syslog facility.System Administrator
Checks: C-36904r2_chk

Check /etc/syslog.conf or /etc/rsyslog.conf ownership: For syslog: # ls -lL /etc/syslog.conf For rsyslog: # ls -lL /etc/rsyslog.conf If /etc/syslog.conf or /etc/rsyslog.conf is not owned by root, this is a finding.

Fix: F-32061r2_fix

Use the chown command to set the owner to root. # chown root /etc/syslog.conf Or: # chown root /etc/rsyslog.conf

b
The /etc/syslog.conf file must be group-owned by root, bin, sys, or system.
AC-6 - Medium - CCI-000225 - V-4394 - SV-37711r2_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-000225
Version
GEN005420
Vuln IDs
  • V-4394
Rule IDs
  • SV-37711r2_rule
If the group owner of /etc/syslog.conf is not root, bin, or sys, unauthorized users could be permitted to view, edit, or delete important system messages handled by the syslog facility.System Administrator
Checks: C-36910r2_chk

Check /etc/syslog.conf or /etc/rsyslog.conf group ownership. Procedure: # ls -lL /etc/syslog.conf Or: # ls -lL /etc/syslog.conf If /etc/syslog.conf or /etc/rsyslog.conf is not group owned by root, sys, bin, or system, this is a finding.

Fix: F-32088r2_fix

Procedure: # chgrp root /etc/syslog.conf Or # chgrp root /etc/rsyslog.conf

b
The system must only use remote syslog servers (log hosts) that is justified and documented using site-defined procedures.
CM-6 - Medium - CCI-000366 - V-4395 - SV-37812r2_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN005460
Vuln IDs
  • V-4395
Rule IDs
  • SV-37812r2_rule
If a remote log host is in use and it has not been justified and documented with the IAO, sensitive information could be obtained by unauthorized users without the SA's knowledge. A remote log host is any host to which the system is sending syslog messages over a network.trueInformation Assurance OfficerSystem Administrator
Checks: C-37014r2_chk

Examine the syslog.conf or rsyslog.conf file for any references to remote log hosts. # grep -v "^#" /etc/syslog.conf | grep '@' Or: # grep -v "^#" /etc/rsyslog.conf | grep '@' Destination locations beginning with an '@' represent log hosts. If the log host name is a local alias such as "loghost", consult the /etc/hosts or other name databases as necessary to obtain the canonical name or address for the log host. Determine if the host referenced is a log host documented using site-defined procedures. If an undocumented log host is referenced, this is a finding.

Fix: F-32281r1_fix

Remove or document the referenced undocumented log host.

b
The system must be configured with a default gateway for IPv4 if the system uses IPv4, unless the system is a router.
CM-6 - Medium - CCI-000366 - V-4397 - SV-37918r1_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
GEN005560
Vuln IDs
  • V-4397
Rule IDs
  • SV-37918r1_rule
If a system has no default gateway defined, the system is at increased risk of man-in-the-middle, monitoring, and Denial of Service attacks.System AdministratorECSC-1
Checks: C-37145r1_chk

Check the system for an IPv4 default route. If the system is a VM host and acts as a router solely for the benefit of its client systems, then this rule is not applicable. Procedure: # netstat -r |grep default If a default route is not defined, this is a finding.

Fix: F-32410r1_fix

Set a default gateway for IPv4.

b
A system used for routing must not run other network services or applications.
SC-32 - Medium - CCI-001208 - V-4398 - SV-37924r2_rule
RMF Control
SC-32
Severity
Medium
CCI
CCI-001208
Version
GEN005580
Vuln IDs
  • V-4398
Rule IDs