欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

等保测评2.0之Centos安全审计

来源:本站整理 作者:佚名 时间:2019-08-20 TAG: 我要投稿

一、说明
在进行等级保护测评时,需要检查主机的安全审计功能,这里就以等级保护2.0来说一说centos6在这方面的检测,以下是安全计算环境的安全审计控制点中的测评项。
二、测评项a

这里在初级教程中,让我们去查看系统日志服务和安全审计服务是否正常运行,但是这两者有什么关系以及具体有什么功能书里没说清楚。
2.1. audit和syslog的关系
网上的资料:
audit 主要用来记录安全信息,用于对系统安全事件的追溯;而 syslog 日志系统用来记录系统中的各种信息,如硬件警报和软件日志等。但是 syslog 属于应用层,没办法记录太多信息。audit 来记录内核信息,包括文件的读写,权限的改变等。
举个例子来说,就是audit会记录系统情况,syslog也会记录,但是syslog记录的信息不如audit更详细,至于它俩具体能记录啥,下文会说。
在实际使用中,audit和syslog几乎就是独立的,比如audit进程没运行,syslog不会受到影响,会正常记录信息。而syslog没有开,audit也不会受到影响,会正常记录信息。
2.2. 安全审计内核模块与安全审计守护进程
这一段我也不是很清楚其原理,所以说错了请谅解。
大概意思就是auditd内核模块与auditd守护进程,不是一回事。 auditd内核模块主要用来获取审计信息,而用户的auditd守护进程主要是从内核模块获取审计信息然后记录。 所以如果auditd内核模块没有起动,那么auditd守护进程启动了也没有任何用,用户定义的临时审计规则或永久审计规则都不会起效果,自然也不会记录任何信息(但注意,这个不会影响到syslog,syslog还是会正常记录信息的)。
我们可以通过auditctl -s命令查看auditd内核模块的状态:
[root@centos01 ~]# auditctl -s
AUDIT_STATUS: enabled=1 flag=1 pid=3232 rate_limit=0 backlog_limit=320 lost=0 backlog=0
里面的enabled的值即为auditd内核模块的状态,enabled为0则代表auditd内核模块没有启动,此时就像上文说的那样,系统不会记录任何信息。如果enabled为1,则代表auditd内核模块正常开启,此时可以正常收集信息。如果enabled为2,似乎是代表审计规则被锁定,不能修改升级规则。
而当enabled为1但auditd守护进程没有开启时,内核收集到的信息将会记录到写到/var/log/messages中。
当然,一般情况下不会出现这种状态,使用service auditd start或stop命令启动或停止auditd守护进程时,内核的状态和auditd守护进程的状态是一致的。 也就是start时,会开启auditd守护进程,同时auditd内核的enabled也会被设为1,stop时,也一样。
除非你使用auditctl -e命令特意去这么做:
[root@centos01 ~]# service auditd stop
停止 auditd:                                              [确定]
[root@centos01 ~]# auditctl -e 1
AUDIT_STATUS: enabled=1 flag=1 pid=0 rate_limit=0 backlog_limit=320 lost=0 backlog=0
[root@centos01 ~]# service auditd status
auditd 已停
此时,就出现了auditd内核模块未启动,但auditd守护进程启动的情况了。
2.3. 是否开启了安全审计功能
所以判断是否开启安全审计功能时,要顺带查看一下auditd内核模块的状态,至于syslog是否开启,我个人感觉还是以auditd为主,syslog开启了很好,没开启也无所谓。
2.4. 是否覆盖到每个用户和是否对重要行为、事件进行审计
我们可以通过auditctl -l查看现在运行着的审计规则(默认是无规则):
[root@centos01 ~]# auditctl -l
No rules
还可以通过查看/etc/audit/audit.rules文件,得到写在配置文件中的永久审计规则:
[root@centos01 ~]# cat /etc/audit/audit.rules
#This file contains the auditctl rules that are loaded
#whenever the audit daemon is started via the initscripts.
#The rules are simply the parameters that would be passed
#to auditctl.
#First rule - delete all
-D
#Increase the buffers to survive stress events.
#Make this bigger for busy systems
-b 320
#Feel free to add below this line. See auditctl man page
实际运行的规则和配置文件中写的规则有什么区别吗?对于实际运行的规则,你可以临时的增加、删除、修改(服务重启就恢复原样)。 而对于写在配置文件中的规则,如果你修改了配置文件却没有重启服务,那么你修改的也不会生效。
audit的审计规则大概有两类:一类是对文件的监控,一类是对系统调用的监控。
对于文件,可以定义审计规则监控对该文件的读、写、执行等操作,一旦发生,就会记录到日志文件中。 比如用以下命令对hosts文件的写和属性更改进行监控:
auditctl -w /etc/hosts -p wa
对于系统调用,可以定义审计规则对于命令的调用,比如用以下名监控对umask、chown命令的调用:
[root@centos01 ~]# auditctl -a exit,always -S umask -S chown
WARNING - 32/64 bit syscall mismatch, you should specify an arch
[root@centos01 ~]# auditctl -l
LIST_RULES: exit,always syscall=chown,umask
好,对于一个默认的、没有定义审计规则的系统,其实还是会记录一些东西的,我们可用aureport -i命令查看总览:
Summary Report
======================
Range of time in logs: 2019年03月12日 00:54:39.084 - 2019年07月26日 15:38:01.542
Selected time for report: 2019年03月12日 00:54:39 - 2019年07月26日 15:38:01.542
Number of changes in configuration: 67
Number of changes to accounts, groups, or roles: 172

[1] [2] [3] [4] [5] [6]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载