审计跟踪 Linux|Centos|RHEL|Ubuntu|Debian 上的所有命令

Linux系统 0 1306 佚名 收藏

在 Linux shell 中执行以下命令以跟踪 Linux 系统运行时的所有命令执行事件,而无需重新启动auditd服务。

# auditctl -a exit,always -F arch=b32 -S execve -k allcmds
# auditctl -a exit,always -F arch=b64 -S execve -k allcmds

/etc/audit/rules.d/audit.rules通过在文件中添加以下使上述规则永久化。

# Track all commands
-a exit,always -F arch=b32 -S execve -k allcmds
-a exit,always -F arch=b64 -S execve -k allcmds

重新启动 auditd服务并验证配置。

# service auditd restart
# auditctl -l
-a always,exit -F arch=b32 -S execve -F key=allcmds
-a always,exit -F arch=b64 -S execve -F key=allcmds

以下是用于跟踪或监视特定用户的 Linux shell 上的所有命令或排除特定用户并监视所有用户的特殊审计规则。

审计/跟踪由root用户执行的所有命令
# To 
auditctl -a exit,always -F arch=b64 -F euid=0 -S execve -k root-cmds
auditctl -a exit,always -F arch=b32 -F euid=0 -S execve -k root-cmds

审计/跟踪任何用户的所有命令,但不包括root用户

auditctl -a exit,always -F arch=b64 -F euid!=0 -S execve -k allcmds
auditctl -a exit,always -F arch=b32 -F euid!=0 -S execve -k allcmds
or 
auditctl -a exit,always -F arch=b64 -F euid>0 -S execve -k allcmds
auditctl -a exit,always -F arch=b32 -F euid>0 -S execve -k allcmds

审核日志验证

# ausearch -k allcmds
time->Sun Sep 15 01:10:16 2019
type=PROCTITLE msg=audit(1568490016.998:272): proctitle="date"
type=PATH msg=audit(1568490016.998:272): item=1 name="/lib64/ld-linux-x86-64.so.2" inode=79069 dev=fd:00 mode=0100755 ouid=0 ogid=0 rdev=00:00 obj=system_u:object_r:ld_so_t:s0 objtype=NORMAL cap_fp=0000000000000000 cap_fi=0000000000000000 cap_fe=0 cap_fver=0
type=PATH msg=audit(1568490016.998:272): item=0 name="/usr/bin/date" inode=12591834 dev=fd:00 mode=0100755 ouid=0 ogid=0 rdev=00:00 obj=system_u:object_r:bin_t:s0 objtype=NORMAL cap_fp=0000000000000000 cap_fi=0000000000000000 cap_fe=0 cap_fver=0
type=CWD msg=audit(1568490016.998:272):  cwd="/root"
type=EXECVE msg=audit(1568490016.998:272): argc=1 a0="date"
type=SYSCALL msg=audit(1568490016.998:272): arch=c000003e syscall=59 success=yes exit=0 a0=89e970 a1=8b6ed0 a2=81cf10 a3=7ffd0723e5e0 items=2 ppid=1591 pid=1984 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=pts0 ses=1 comm="date" exe="/usr/bin/date" subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 key="allcmds"

上面的输出通知 root 用户执行了date命令。


相关推荐:

网友留言:

您需要 登录账户 后才能发表评论

我要评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
验证码