使用 auditd 跟踪任何文件更改

使用 auditd 跟踪任何文件更改

我尝试配置 PCI REQ 10.5.5“在日志上使用文件完整性监控或更改检测软件”

用于auditd此,规则auditctl -w /tmp/testfile -p war完美发挥作用。

但是如果我尝试在文件上使用 stdout 重定向,就像echo "hi" >> /tmp/testfile 添加了行但audit.log没有任何变化。

有人知道如何使用记录文件中的所有更改吗auditd

答案1

我刚刚在 Centos 6.3 上尝试了此操作,得到了相同的结果。读取文件会触发 auditd,但使用 echo 附加操作不会触发。

包括 x 似乎有效。更改-p war-p warx,看看在 Ubuntu 上是否有效。

答案2

auditd 确实捕获了文件的更改,但它被记录为 bash 进行系统调用,不幸的是没有可识别的路径回到被更改的文件。

作为一种解决方法,对于每个监控文件的规则,我将文件包含在键名中。例如:

-w /etc/login.txt -p wa -k login.txt-modified

这样,触发的日志条目echo > login.txt将很容易找到。Red Hat 有一个关于此问题的未解决的 bug:

https://bugzilla.redhat.com/show_bug.cgi?id=1204937

答案3

我实际上不会单独使用 auditd 来实现这一点。对于我的 PCI 和 HIPAA 兼容系统,我过去常常auditd记录关键系统文件和功能的更改,但利用了助手或者绊线用于实际的文件完整性监控和报告。

相关内容