本文主要是介绍Linux audit 安全审计干货,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
- 简介
- 一丶审计规则(Auditctl 和 audit.rules)
- 二丶配置文件(auditd.conf)
- 三丶报告工具(aureport)
- 四丶事件查找(ausearch)
简介
简单来说,修改两个配置文件(/etc/audit/audit.rules 和/etc/audit/auditd.conf ),然后通过aureport和ausearch生成和分析数据。要使用安全审计系统可采用下面的步骤:内核选项勾选和安装软件包(上篇文章已介绍)。添加审计规则,修改配置文件,然后启用 audit 守护进程进行日志记录,最后生成审计日志来分析数据。
Linux audit 架构示意图
项目 | 说明 |
---|---|
User | 记录用户空间中产生的事件 |
Task | 跟踪应用程序的子进程(fork) |
Exit | 当一个系统调用结束时判断是否记录该调用 |
Exclude | 删除(过滤)不合格事件 |
auditctl | 即时控制审计守护进程行为的工具 |
/etc/audit/audit.rules | 记录审计规则的文件 |
aureport | 查看和生成审计报告的工具 |
ausearch | 查找审计事件的工具 |
auditspd | 转发事件通知给其他应用程序,而不是写入到审计日志文件中 |
autrace | 一个用于跟踪进程的命令 |
/etc/audit/auditd.conf | auditd工具的配置文件 |
一丶审计规则(Auditctl 和 audit.rules)
可以先用 auditctl -h,查看auditctl命令使用规则
auditctl [选项] filter,action -S syscall -F condition -k label
-S 表示系统调用号或名字
-F 表示规则域。
-k 表示设置审计规则上的过滤关键
项目 | 可选参数 | 说明 |
---|---|---|
filter | user,exit,task,exclude | 哪个内核规则匹配过滤器应用在事件中 |
action | always, never | 是否审核事件 |
syscall | all, open | 所有的系统调用都可以在/usr/include/asm/unistd_64.h 文件中找到 |
condition | euid=0, arch=b64 | 进一步修改规则与特定架构、组 ID、进程 ID 和其他内容为基础的事件相匹配 |
label | 任意文字 | 标记审核事件并检索日志 |
audit 审计规则分成三个部分:
-
控制规则:用于更改审计系统本身的配置/设置。
-D #删除所有当前装载的审核规则#
-b 8192 #在内核中设定最大数量的已存在的审核缓冲区为 8Mb#
-e 2 #锁定审核配置# -
文件系统规则:文件或目录监视,可以审核对特定文件或目录的任何类型的访问。
用auditctl命令,监控文件,系统行为
规则格式:-w 路径 -p 权限:r — 读取文件或者目录。w — 写入文件或者目录。x — 运行文件或者
这篇关于Linux audit 安全审计干货的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!