IMPORTANT: Auditing System Calls
Auditing system calls results in a high logging activity, which in turn puts a
heavy load on the kernel. With a kernel less responsive than usual, the system's
backlog and rate limits might well be exceeded. Carefully evaluate which system
calls to include in your audit rule set and adjust the log settings accordingly.
See
Section 30.2, “Configuring the Audit Daemon”
(page 379) for details on
how to tweak the relevant settings.
The access system call checks whether a process would be allowed to read, write or
test for the existence of a file or file system object. Using the
-F
filter flag, build rules
matching specific access calls in the format
-F a1=
access_mode
. Check
/usr/
include/fcntl.h
for a list of possible arguments to the access system call.
-a entry,always -S access -F a1=4
❶
-a entry,always -S access -F a1=6
❷
-a entry,always -S access -F a1=7
❸
❶
Audit the access system call, but only if the second argument of the system call
(
mode
) is
4
(
R_OK
). This rule filters for all access calls testing for sufficient write
permissions to a file or file system object accessed by a user or process.
❷
Audit the access system call, but only if the second argument of the system call
(
mode
) is
6
, meaning
4 OR 2
, which translates to
R_OK OR W_OK
. This rule
filters for access calls testing for sufficient read and write permissions.
❸
Audit the access system call, but only if the second argument of the system call
(
mode
) is
7
, meaning
4 OR 2 OR 1
, which translates to
R_OK OR W_OK
OR X_OK
. This rule filters for access calls testing for sufficient read, write, and
execute permissions.
The socketcall system call is a multiplexed system call. Multiplexed means that there
is only one system call for all possible calls and that libc passes the actual system call
to use as the first argument (
a0
). Check the manual page of socketcall for possible
system calls and refer to
/usr/src/linux/include/linux/net.h
for a list
of possible argument values and system call names. Audit supports filtering for specific
system calls using a
-F a0=
syscall_number
.
Introducing an Audit Rule Set
431
Summary of Contents for LINUX ENTERPRISE DESKTOP 11
Page 1: ...SUSE Linux Enterprise Server www novell com 11 March 17 2009 Security Guide...
Page 9: ...32 7 Managing Audit Event Records Using Keys 433 33 Useful Resources 435...
Page 10: ......
Page 29: ...Part I Authentication...
Page 30: ......
Page 55: ...Figure 4 2 YaST LDAP Server Configuration LDAP A Directory Service 41...
Page 126: ......
Page 127: ...Part II Local Security...
Page 128: ......
Page 158: ......
Page 173: ...Part III Network Security...
Page 174: ......
Page 194: ......
Page 197: ...Figure 16 2 Scenario 2 Figure 16 3 Scenario 3 Configuring VPN Server 183...
Page 210: ......
Page 228: ......
Page 229: ...Part IV Confining Privileges with Novell AppArmor...
Page 230: ......
Page 274: ......
Page 300: ......
Page 328: ......
Page 340: ......
Page 342: ......
Page 386: ......
Page 387: ...Part V The Linux Audit Framework...
Page 388: ......