如何解析auditd日志中的audit_cmd?

如何解析auditd日志中的audit_cmd?

我有一些行auditd.log包含密钥,audit_cmd后跟一长串十六进制。

type=USER_CMD msg=audit(<TIMESTAMP>): pid=<PID> uid=<UID> auid=<AUID> ses=72940 subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 
msg='cwd="/home/<account>" cmd=2F62696E2F7368202D63206563686F204<HEX> terminal=pts/2 res=success' 

我该如何解析它?

注意:我可能并不总是在最初生成日志的计算机上(在某些情况下,我会查看已转发到 Elasticsearch 服务器的日志)。

答案1

auditd.log当我通过 SplunkUniversalForwarder 进行收集并在 Splunk 中进行调查时,我遇到了同样的问题。

作为 @汤姆·克里诺已经在下面提到和讨论了auditd execve 参数看起来像编码数据,命令字符串似乎是十六进制编码的 ASCII。

因此可以通过以下方式对其进行解码

echo "<HEX encoded ASCII string>" | xxd -r -p

稍后在远程日志收集器(即 Splunk)上(如果xxd安装了vim)。

对我来说更好的方法似乎是预处理日志ausearch -if audit.log -i并使用Splunk应用程序rlog.sh

相关内容