audit:基于 Linux 审计框架的系统审计服务项目

用户可借助该项目实现系统调用审计与日志管理,其核心功能包括低开销的系统调用审计、灵活的日志输出控制(支持netlink和syslog),以及与SELinux等安全组件集成,提供可靠的内核审计信息。【此简介由AI生成】

Branch1Tags9
4838c183Add on Apr 11, 202526 commits
FilesLast commitLast update
chore(CI): Update call-chatOps.yml for /integrate2 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: upgrade to 3.0.9 * upgrade to 3.0.9 from upstream * make patch 'deepin-sw64-porting-0001.patch' adapt to this version log: upgrade 2 years ago
feat: support sw64. 1 year ago
feat: update audit to 1%3.1.2 2 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: Init commit init audit Log: 3 years ago
feat: Init commit init audit Log: 3 years ago
feat: Init commit init audit Log: 3 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: upgrade to 3.0.9 * upgrade to 3.0.9 from upstream * make patch 'deepin-sw64-porting-0001.patch' adapt to this version log: upgrade 2 years ago
feat: Init commit init audit Log: 3 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: Init commit init audit Log: 3 years ago
feat: Init commit init audit Log: 3 years ago
feat: Init commit init audit Log: 3 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: upgrade to 3.0.9 * upgrade to 3.0.9 from upstream * make patch 'deepin-sw64-porting-0001.patch' adapt to this version log: upgrade 2 years ago
feat: upgrade to 3.0.9 * upgrade to 3.0.9 from upstream * make patch 'deepin-sw64-porting-0001.patch' adapt to this version log: upgrade 2 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: upgrade to 3.0.9 * upgrade to 3.0.9 from upstream * make patch 'deepin-sw64-porting-0001.patch' adapt to this version log: upgrade 2 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: update audit to 1%3.1.2 2 years ago
feat: upgrade to 3.0.9 * upgrade to 3.0.9 from upstream * make patch 'deepin-sw64-porting-0001.patch' adapt to this version log: upgrade 2 years ago
feat: upgrade to 3.0.9 * upgrade to 3.0.9 from upstream * make patch 'deepin-sw64-porting-0001.patch' adapt to this version log: upgrade 2 years ago
feat: upgrade to 3.0.9 * upgrade to 3.0.9 from upstream * make patch 'deepin-sw64-porting-0001.patch' adapt to this version log: upgrade 2 years ago
feat: upgrade to 3.0.9 * upgrade to 3.0.9 from upstream * make patch 'deepin-sw64-porting-0001.patch' adapt to this version log: upgrade 2 years ago
feat: upgrade to 3.0.9 * upgrade to 3.0.9 from upstream * make patch 'deepin-sw64-porting-0001.patch' adapt to this version log: upgrade 2 years ago
feat: upgrade to 3.0.9 * upgrade to 3.0.9 from upstream * make patch 'deepin-sw64-porting-0001.patch' adapt to this version log: upgrade 2 years ago

以下是关于Linux审计框架的背景信息。

许可证

审计守护进程以GPL协议发布代码。其库文件libaudit.*和libauparse.*采用LGPL协议发布,以便与第三方软件链接使用。

构建说明

详见Install(.tmp)文件。

使用指南

请查阅audit、auditctl、audit.rules、ausearch及aureport的手册页。

讨论区

原始LKML讨论帖: https://marc.info/?t=107815888100001&r=1&w=2 https://marc.info/?t=107901570800002&r=1&w=2

设有Linux审计邮件列表,可讨论内核设计、配置或使用相关问题: http://www.redhat.com/mailman/listinfo/linux-audit

设计信息(较旧版本)

核心目标是以1)最低开销实现系统调用审计,2)避免与SELinux(及其他安全基础设施)功能重复。本框架可独立运行,但需配合其他安全组件才能实现如CAPP等功能。

框架分为两部分:始终启用的通用日志(audit.c)和可动态启停的系统调用审计(auditsc.c)。补丁包含security/selinux/avc.c的修改示例,展示如何将系统调用审计与其他审计事件识别代码集成。

日志机制: 1) 采用netlink套接字与用户空间通信。若有守护进程监听,所有消息通过netlink传输;否则默认通过printk写入syslog。 2) 支持基于消息速率或内存占用的选择性丢弃(当前未完全集成至selinux/avc.c,原有avc.c相关代码可移除)。 3) 内核组件生成部分审计记录时,片段会立即发送至用户空间,并自动标记该系统调用为"需审计",在调用退出时补充信息(若启用系统调用审计)。

系统调用审计流程: 1) 任务创建时分配审计上下文并关联至任务结构体。 2) 系统调用入口阶段,若存在审计上下文则记录调用编号和时间戳(不含参数)。 3) 拦截getname()和path_lookup()调用。这些例程在核心决策点被触发,避免重复复制数据(例如chroot("foo")因权限失败时,"foo"不会出现在审计记录中,因内核未实际解析该路径)。 4) 调用退出时,若标记为"需审计"(如SELinux生成AVC记录),则补充记录文件名和inode号(现有实现不返回完整路径以降低开销)。 5) 任务终止时销毁审计上下文。

在步骤1/2/4可进行简单过滤(如数据库角色UID可禁用审计以提升性能)。当前过滤机制简洁高效,复杂决策应依赖SELinux等组件完成。审计记录分片传输机制避免内核长期存储消息。

Introduction

用户可借助该项目实现系统调用审计与日志管理,其核心功能包括低开销的系统调用审计、灵活的日志输出控制(支持netlink和syslog),以及与SELinux等安全组件集成,提供可靠的内核审计信息。【此简介由AI生成】

Customize my domain

Downloads

0

Total downloads (including clone, pull, ZIP & release downloads), updated by T+1.

Languages

C51.4%
Makefile33.16%
Shell10.46%
Python3.53%
Roff Manpage0.7%