首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有通过linux审计事件进行审计。

没有通过linux审计事件进行审计。
EN

Unix & Linux用户
提问于 2017-01-25 15:34:14
回答 1查看 744关注 0票数 4

我们试图使用slack的围观工具来捕获/处理linux审计事件。更多信息:https://github.com/slackhq/go-audit

问题是linux审计正确地捕捉到了事件,但是这些事件没有被go审计捕获,也没有被go审计正确地输出。

示例go-audit文件已被修改为具有一条规则,用于捕获有关访问/opt/secil.txt文件的信息。

代码语言:javascript
复制
rules:
- -a exit,always -F path=/opt/secret.txt -F perm=wra -k test_changes

完整的go-审核配置文件在这里:https://gist.github.com/tom-chaoscube/fc2f14b448650ea4018620bbbf2c3345

在运行go-审核之后,我们可以看到这个规则已经成功地部署了:

代码语言:javascript
复制
# auditctl -l
-w /opt/secret.txt -p rwa -k test_changes

尝试访问该文件,可以在审计日志文件中看到审计记录:

代码语言:javascript
复制
$ cat secret.txt
# cat /var/log/audit/audit.log

type=SYSCALL msg=audit(1485357520.702:868): arch=c000003e syscall=2 success=yes exit=3 a0=7ffee46830dc a1=0 a2=1fffffffffff0000 a3=7ffee4681670 items=1 ppid=5199 pid=5469 auid=1000 uid=1000 gid=1000 euid=1000 suid=1000 fsuid=1000 egid=1000 sgid=1000 fsgid=1000 tty=pts5 ses=7 comm="cat" exe="/usr/bin/cat" subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 key="test_changes"
type=CWD msg=audit(1485357520.702:868):  cwd="/opt"
type=PATH msg=audit(1485357520.702:868): item=0 name="secret.txt" inode=26244598 dev=ca:01 mode=0100644 ouid=0 ogid=0 rdev=00:00 obj=unconfined_u:object_r:usr_t:s0 objtype=NORMAL

但是,当查看go审计的输出时,没有记录任何事件。我们已经尝试了go审计设置为输出到stdout,也尝试了一个文件。

运行一段时间进行审计,它似乎打开了一个NETLINK套接字,我认为它是与auditd的连接。还可以看到,一些数据是通过套接字接收的,与audit.log中的周期性条目保持一致,但是,当文件访问审计条目由auditd编写时,似乎没有收到任何数据。(不一定要直截了当地说)。

代码语言:javascript
复制
socket(PF_NETLINK, SOCK_RAW, 9)         = 4
bind(4, {sa_family=AF_NETLINK, pid=0, groups=00000000}, 12) = 0
setsockopt(4, SOL_SOCKET, SO_RCVBUF, [16384], 4) = 0
getsockopt(4, SOL_SOCKET, SO_RCVBUF, [32768], [4]) = 0
... ...
... ...
write(1, "Started processing events\n", 26) = 26
recvfrom(4, "L\0\0\0\2\0\0\0\1\0\0\0\261\25\0\0\357\377\377\3778\0\0\0\351\3\5\0\1\0\0\0"..., 8970, 0, {sa_family=AF_NETLINK, pid=0, groups=00000000}, [12]) = 76
futex(0xa0f1d0, FUTEX_WAIT, 0, NULL)    = 0

关于下列事项的任何建议:

  • 为什么审计不去处理这些事件?
  • 进一步的步骤,可以采取的调查,如果去审计真的收到事件信息跨套接字。(即采取步骤证明他们没有在审计方面迷路)

编辑:我已经在Ubunutu 16.10 (以及原始的Centos 7机器)上进行了本地尝试,并有相同的结果。

干杯。

EN

回答 1

Unix & Linux用户

发布于 2017-01-25 17:41:33

解决了。

这个问题的答案是,auditd仍然在系统上运行。

只需停止auditd并重新启动go审核,就可以接收到审计数据:

代码语言:javascript
复制
sudo service auditd stop
票数 4
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/340082

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档