赞
踩
Linux 提供了用来记录系统安全信息的审计系统,使用 audit 系统可以在应用程序执行期间获取比如发生错误的时间,哪个文件导致错误以及原因,什么进程导致了错误等等信息。
Linux内核拥有包括记录系统调用和文件访问等的日志记录事件的能力,管理员可以检查这些日志,确定是否存在安全漏洞,比如多次失败的登录尝试,或者用户对系统文件不成功的访问等。
1、Linux 内核中的几种系统调用
2、Linux 用户空间审计系统由 auditd、audispd、auditctl、autrace、ausearch 和 aureport 等应用程序组成
3、audit架构说明
4、使用安全审计系统
5、audit 和 syslog 日志系统的关系
1、安装 audit
#yum install audit*.* -y
也可以选择源码安装
2、audit 配置文件
#设置日志文件
log_file = /var/log/audit/audit.log
#设置日志文件轮询的数目,它是 0~99 之间的数
#如果设置为小于 2,则不会循环日志
#如果没有设置 num_logs 值,它就默认为 0,意味着从来不循环日志文件
num_logs = 5
#设置日志文件是否使用主机名称,一般选 NONE
name_format = NONE
#设置日志文件大小,以兆字节表示的最大日志文件容量
max_log_file = 6
#设置日志文件到达最大值后的动作,这里选择 ROTATE(轮询)
max_log_file_action = ROTATE
3、auditctl 命令
auditctl [ ] filter, action -S syscall -F condition -k label
#filter可选user,exit,task,exclude 详细说明哪个内核规则匹配过滤器应用在事件中,可选中之一为与规则匹配的过滤器
#action可选always,never 是否审核事件 always表示是 never表示否
#syscall可选all,2,open等 所有的系统调用都可以在/usr/include/asm/unistd_64.h文件中找到,许多系统调用都能形成一个规则
#condition可选euid=0, arch=b64 详细说明其他选项,进一步修改规则来与以特定架构,组ID,进程ID和其他内容为基础的事件相匹配
#label可选任意文字 标记审核事件并检索日志
#-S 表示系统调用号或名字 -F 表示规则域 -k 表示设置审计规则上的过滤关键
4、audit 审计规则
audit 审计规则分成三个部分
auditctl -w /etc/passwd -p wa
auditctl -w /etc/hosts -p wa -k hosts_change
#file 是用户自己设置的一个规则名字
auditctl -a always,exit -F arch=b64 -F auid=10001 -S open -k file
通过 auditctl 命令添加的规则不是永久有效的,重新启动后有效的,可以将命令添加到文件/etc/audit/rules.d/audit.rules 中
5、auditd 守护进程
service auditd start #启动
service auditd stop #停止
systemctl enable auditd #自启动
service auditd restart #重启
service auditd reload #重加载配置
service auditd rotate #旋转日志文件
service auditd resume #推迟审核事件日志之后重新开始
service auditd status #显示运行状态
6、aureport生成审计消息的报表
示例
aureport #生成汇总报表
aureport -ts 9:00 -te 18:00 -f –i #生成一段特定时间内的报告
aureport -u --failed --summary –i #生成所有用户失败事件的总结报告
aureport -s -i --summary #生成系统调用事件报告
7、ausearch搜索记录
audit 系统附带了一个功能强大的工具,称为 ausearch 搜索审计日志,使用 ausearch可以过滤和搜索事件类型,还可以通过将数值转换为更加直观的值(如系统调用或用户名)来解释事件
示例
ausearch --messag e USER _LO G IN --success no --i nterpret #搜索系统登录失败
ausearch -m ADD _USER -m DEL_USER -m ADD _GROUP -m USER _CHAUT HTOK -m D EL_GROUP -m CHGRP_ID -m ROLE_ASSIGN -m ROLE_REMOVE -i #搜索所有的账户,群组,角色变更
ausearch --start 04/27/2019 --end 04/29/2019 no w -m SYSCALL -sv no –i #搜寻从指定时间段的失败的系统调用
ausearch -k key | less #使用关键字(key)搜索审计事件记录(使用关键字可提高效率,但需要建立关键字审计规则)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。