4.1.3.32 Ensure auditing of all privileged functions - setuid 64 bit

Information

The operating system must audit all executions of privileged functions.

Rationale:

Misuse of privileged functions, either intentionally or unintentionally by authorized users, or by unauthorized external entities that have compromised information system accounts, is a serious and ongoing concern and can have significant adverse impacts on organizations. Auditing the use of privileged functions is one way to detect such misuse and identify the risk from insider threats and the advanced persistent threat.

Solution

Configure the operating system to audit the execution of privileged functions.
Add or update the following rule in /etc/audit/rules.d/audit.rules:
Example: vim /etc/audit/rules.d/audit.rules
Note: The rules are duplicated to cover both 32-bit and 64-bit architectures. Only the lines appropriate for the system architecture must be configured.

-a always,exit -F arch=b32 -S execve -C uid!=euid -F euid=0 -k setuid
-a always,exit -F arch=b64 -S execve -C uid!=euid -F euid=0 -k setuid
-a always,exit -F arch=b32 -S execve -C gid!=egid -F egid=0 -k setgid
-a always,exit -F arch=b64 -S execve -C gid!=egid -F egid=0 -k setgid

The audit daemon must be restarted for the changes to take effect.

# service auditd restart

See Also

https://workbench.cisecurity.org/files/3636

Item Details

Category: ACCESS CONTROL

References: 800-53|AC-6(9), CCI|CCI-002234, CSCv7|6.2, Rule-ID|SV-204516r603261_rule, STIG-ID|RHEL-07-030360

Plugin: Unix

Control ID: 0025f5f78532613cdc16d01a0a34481b3519e34680fa45abdfa11124b36e602e