type=SYSCALL msg=audit(1419222323.628:510): arch=40000003 syscall=10 success=yes exit=0 a0=bfc0ceec a1=0 a2=bfc0ceec a3=897764c items=2 ppid=2978 pid=2994 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=pts0 ses=4294967295 comm="chfn" exe="/usr/bin/chfn" key=(null)
我们可以看到,在指定的时间,/etc/passwd ** 被root用户(uid =0, gid=0)在/root目录下修改。/etc/passwd 文件是使用/usr/bin/chfn** 访问的。
键入 man chfn 可以查看有关chfn更多的信息。
下面我们看另外一个例子。
我们已经配置auditd去监控目录 /production/ 了。这是个新目录。所以我们用ausearch去查看日志的时候会发现什么都没有。
下一步,使用root账户的ls命令列出 /production/ 下的文件信息。再次使用ausearch后,将会显示一些信息。
time->Mon Dec 22 14:18:28 2014 type=PATH msg=audit(1419232708.344:527): item=0 name="/production/" inode=797104 dev=08:01 mode=040755 ouid=0 ogid=0 rdev=00:00 nametype=NORMAL type=CWD msg=audit(1419232708.344:527): cwd="/root" type=SYSCALL msg=audit(1419232708.344:527): arch=40000003 syscall=295 success=yes exit=3 a0=ffffff9c a1=95761e8 a2=98800 a3=0 items=1 ppid=3033 pid=3444 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=pts0 ses=4294967295 comm="ls" exe="/bin/ls" key=(null)
和上一个一样,可以得出root账户使用ls命令访问了/production/目录,ls命令的文件目录是 /bin/ls
查看审计报告一旦定义审计规则后,它会自动运行。过一段时间后,我们可以看看auditd是如何帮我们跟踪审计的。
Auditd提供了另一个工具叫 aureport 。从名字上可以猜到, aureport 是使用系统审计日志生成简要报告的工具。
我们已经配置auditd去跟踪/etc/passwd文件。auditd参数设置后一段时间后,audit.log 文件就创建出来了。
生成审计报告,我们可以使用aureport工具。不带参数运行的话,可以生成审计活动的概述。
$ sudo aureport
如上,报告包含了大多数重要区域的信息。
上图可以看出有 3 次授权失败。 使用aureport,我们可以深入查看这些信息。
使用以下命令查看授权失败的详细信息:
$ sudo aureport -au
从上图可以看出,由两个用户在特定的时间授权失败。
如果我们想看所有账户修改相关的事件,可以使用-m参数。
$ sudo aureport -m
Auditd 配置文件我们已经添加如下规则:
$ sudo auditctl -w /etc/passwd -p rwxa
$ sudo auditctl -w /production/
现在,如果确信这些规则可以正常工作,我们可以将其添加到/etc/audit/audit.rules中使得规则永久有效。以下介绍如何将他们添加到/etc/audit/audit.rules中去。
最后,别忘了重启auditd守护程序
# /etc/init.d/auditd restart
或
# service auditd restart
总结