AIX 中audit 和syslog

本文转载自:http://blog.itpub.net/28673746/viewspace-1152215/

 

安全审计包括两部分:一是:audit 子系统,二是:日志系统syslog, 他们的关系如下:

audit子系统专门用来记录安全信息,用于对系统安全事件的追溯;
syslog日志系统用来记录系统中的各种信息,如安全、调试、运行信息等
如果audit没有运行,linux内核就将安全审计信息传递给syslog日志系统。
 
一、 AIX 系统的安全审计介绍
/etc/security/audit/config  audit的配置文件
/etc/security/audit/events   对系统行为的审计
/etc/security/audit/objects  对系统对象的审计
相关介绍:
1.Mode
定义信息采集的模式(二进制/流),如:
 
2.Events
系统定义的行为,例如password_change等;
 
3.Classes
定义一个类,包括多个事件;
 
4.Objects
对文件,监控文件的读写,执行操作
 
1. /etc/security/audit/config 介绍
 
start:
binmode = on (开启了二进制模式)
streammode = off 
bin:
trail = /audit/trail  
bin1 = /audit/bin1   (二进制模式下,审计log存放的位置)
bin2 = /audit/bin2
binsize = 10240
cmds = /etc/security/audit/bincmds
freespace = 65536
stream:
cmds = /etc/security/audit/streamcmds(流模式)
classes: (classes: 定义的类,预定义的类有:general, objects, SRC, kernel, files, SVIPC, mail, cron和TCPIP)
general = USER_SU,PASSWORD_Change,FILE_Unlink,FILE_Link,FILE_Rename,FS_Chdir,FS_Chroot,PORT_Locked,PORT_Change,FS_Mkdir,FS_Rmdir
   (/etc/security/audit/events中定义的事件被归类为general)
objects = S_ENVIRON_WRITE,S_GROUP_WRITE,S_LIMITS_WRITE,S_LOGIN_WRITE,S_PASSWD_READ,S_PASSWD_WRITE,S_USER_WRITE,AUD_CONFIG_WR
   (/etc/security/audit/objects中定义的事件归类为objects)
SRC = SRC_Start,SRC_Stop,SRC_Addssys,SRC_Chssys,SRC_Delssys,SRC_Addserver,SRC_Chserver,SRC_Delserver
        kernel = PROC_Create,PROC_Delete,PROC_Execute,PROC_RealUID,PROC_AuditID,PROC_RealGID,PROC_Environ,PROC_SetSignal,PROC_Limits,PROC_SetPri
files = FILE_Open,FILE_Read,FILE_Write,FILE_Close,FILE_Link,FILE_Unlink,FILE_Rename
 svipc = MSG_Create,MSG_Read,MSG_Write,MSG_Delete,MSG_Owner,MSG_Mode,SEM_Create,SEM_Op,SEM_Delete,SEM_Owner,SEM_Mode,SHM_Create,SHM_Open,SHM_Close,SHM_Owner,SHM_Mode
mail = SENDMAIL_Config,SENDMAIL_ToFile
cron = AT_JobAdd,AT_JobRemove,CRON_JobAdd,CRON_JobRemove,CRON_Start,CRON_Finish
tcpip = TCPIP_config,TCPIP_host_id,TCPIP_route,TCPIP_connect,TCPIP_data_out,TCPIP_data_in,TCPIP_access,TCPIP_set_time,TCPIP_kconfig,TCPIP_kroute,TCPIP_kconnect,TCPIP_kdata_out,TCPIP_kdata_in,TCPIP_kcreate
ipsec = IPSEC_chtun,IPSEC_export,IPSEC_gentun,IPSEC_imptun,IPSEC_lstun,IPSEC_mktun,IPSEC_rmtun,IPSEC_chfilt,IPSEC_expfilt,IPSEC_genfilt,IPSEC_trcbuf,IPSEC_impfilt,IPSEC_lsfilt,IPSEC_mkfilt,IPSEC_mvfilt,IPSEC_rmfilt,IPSEC_unload,IPSEC_stat,IKE_tnl_creat,IKE_tnl_delet,IPSEC_p1_nego,IPSEC_p2_nego,IKE_activat_cmd,IKE_remove_cmd
lvm = LVM_AddLV,LVM_KDeleteLV,LVM_ExtendLV,LVM_ReduceLV,LVM_KChangeLV,LVM_AvoidLV,LVM_MissingPV,LVM_AddPV,LVM_AddMissPV,LVM_DeletePV,LVM_RemovePV,LVM_AddVGSA,LVM_DeleteVGSA,LVM_SetupVG,LVM_DefineVG,LVM_KDeleteVG,LVM_ChgQuorum,LVM_Chg1016,LVM_UnlockDisk,LVM_LockDisk,LVM_ChangeLV,LVM_ChangeVG,LVM_CreateLV,LVM_CreateVG,LVM_DeleteVG,LVM_DeleteLV,LVM_VaryoffVG,LVM_VaryonVG
ldapserver = LDAP_Bind,LDAP_Unbind,LDAP_Add,LDAP_Delete,LDAP_Modify,LDAP_Modifydn,LDAP_Search,LDAP_Compare
aacct=AACCT_On,AACCT_Off,AACCT_AddFile,AACCT_ResetFile,AACCT_RmFile,AACCT_SwtchFile,AACCT_TridOn,AACCT_TridOff,AACCT_SysIntOff,AACCT_SysIntSet,AACCT_PrIntOff,AACCT_PrIntSet,AACCT_SwtchProj,AACCT_AddProj,AACCT_RmProj,AACCT_PolLoad,AACCT_PolUnload,AACCT_NotChange,AACCT_NotifyOff
 
users: (该段中定义了使用类的用户,用户必须是可登录用户或default用户)
root = general(系统将会对root用户发生的general事件做纪录)
 
2./etc/security/audit/events介绍
events文件包含了audit系统所有的事件定义,以及用auditpr命令输出信息中部分格式化内容;
事件类别:kernel proc events ,audit, file system events, SVIPC system events, TCPIP user level, TCPIP kernel level,commands, LVM events,objects (files), miscellaneous ,SecureWay Directory Server, Certificate Authentication Services, RTIPC system events, Advanced Accounting system events, IPSEC user level等几个小类,审计内容很多,需要通过文件 /etc/security/audit/config中 classes进行选择要审计的事件。
 
3. /etc/security/audit/objects介绍
 
/etc/security/environ:
w = "S_ENVIRON_WRITE"
/etc/security/group:
w = "S_GROUP_WRITE"
/etc/security/limits:
w = "S_LIMITS_WRITE"
/etc/security/login.cfg:
w = "S_LOGIN_WRITE"
/etc/security/passwd:
r = "S_PASSWD_READ"
w = "S_PASSWD_WRITE"
/etc/security/user:
w = "S_USER_WRITE"
/etc/security/audit/config:
w = "AUD_CONFIG_WR"
 
4. 示例:
a. 分析
– 监控方法是长时间的监控,并且要求保留历史数据,因此建议采用BIN的采集模式
– 要求监控su,passwd操作,对应到audit系统中的USER_SU,PASSWORD_Change 事件
– 要求监控/home/test/test.ini 文件的读写操作,需要定义该对象的相关信息
– 要求监控test 用户删除文件操作,对应到audit系统的FILE_Unlink事件
– 要求启动,关闭及备份操作,可以通过crontab配合实现
b.配置/etc/security/audit/config
确定/audit有足够的空间,如果条件允许的话,为/audit单独建立文件系统修改采集模式,编辑config文件的start和bin节内容
start:
   binmode = on
   streammode = off
bin:
   trail = /audit/trail
   bin1 = /audit/bin1
   bin2 = /audit/bin2
   binsize = 10240
   cmds = /etc/security/audit/bincmds
   freespace = 65536
 
c. 配置/etc/security/audit/objects增加:
/home/test/test.ini:
w = "TEST_FILE_WR"
r = "TEST_FILE_RD"
d.配置/etc/security/audit/eventsobjects(files)节,增加:
*       /home/hebing/test.ini
TEST_FILE_WR  = printf "%s"
TEST_FILE_RD  = printf "%s"
e.配置/etc/security/audit/config中的审计事件,修改classes和users节
classes:
classone = USER_SU,PASSWORD_Change
classtwo = FILE_Unlink
objects = TEST_FILE_WR,TEST_FILE_RD
users:
test = classone,classtwo
default = classone
?解释:
类classone包含USER_SU,PASSWORD _Change两个事件,
类classtwo包含FILE_Unlink一个事件
当Audit系统启动后,Audit会对test用户的classone和classtwo类的事件进行监控,对别的用户,监控classone类中的事件;
对于审计对象而言,包含TEST_FILE_WR,TEST_FILE_RD两个,无论哪个用户,包括root 用户对它们的访问都会被纪录;
 
二、AIX中syslog的日志介绍
1. /etc/syslog详解
syslog日志系统分为:系统日志,安全日志,任务日志等
示例:
# example:
# "mail messages, at debug or higher, go to Log file. File must exist."
# "all facilities, at debug and higher, go to console"
# "all facilities, at crit or higher, go to all users"
#  mail.debug /usr/spool/mqueue/syslog
#  *.debug /dev/console
#  *.crit *
#  *.debug              /tmp/syslog.out     rotate size 100k files 4
#  *.crit               /tmp/syslog.out     rotate time 1d
# HACMP/ES for AIX Critical Messages
local0.crit /dev/console
# HACMP/ES for AIX Informational Messages
local0.info /usr/es/adm/cluster.log
# HACMP/ES for AIX Messages from Cluster Scripts
user.notice /usr/es/adm/cluster.log
# HACMP/ES for AIX Messages from Cluster Daemons
daemon.notice /usr/es/adm/cluster.log
解释:
# Log all kernel messages to the console.
# Logging much else clutters up the screen.
#kern.*                                                 /dev/console(内核日志信息)
 
# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
*.info;mail.none;news.none;authpriv.none;cron.none      /var/log/messages(info级别的信息)
 
# The authpriv file has restricted access.
authpriv.*                                              /var/log/secure (记录私有的安全管理日志信息)
 
# Log all the mail messages in one place.
mail.*                                                  -/var/log/maillog (记录所有邮件信息)
 
# Log cron stuff
cron.*                                                  /var/log/cron(记录计划任务)
 
# Everybody gets emergency messages
*.emerg                                                 *(记录紧急消息)
 
# Save news errors of level crit and higher in a special file.
uucp,news.crit                                          /var/log/spooler(记录UUCP和新闻等日志信息,系统中致命错误)
 
# Save boot messages also to boot.log
local7.*                                                /var/log/boot.log(本地保留使用)
2. 所有Log 的功能
系统的引导日志:/var/log/boot.log
核心启动日志:/var/log/dmesg 
kjournald starting.  Commit interval 5 seconds
EXT3 FS on sda1, internal journal
EXT3-fs: mounted filesystem with ordered data mode.
Adding 4184892k swap on /dev/sda5.  Priority:-1 extents:1 across:4184892k
系统报错日志:/var/log/messages(审计系统中出现的错误)
Jan  8 22:16:17 localhost dhclient: DHCPACK from 192.168.44.254
Jan  8 22:16:17 localhost dhclient: bound to 192.168.44.131 -- renewal in 877 seconds.
Jan  8 22:32:00 localhost dhclient: DHCPREQUEST on eth0 to 192.168.44.254 port 67
邮件系统日志:/var/log/maillog
FTP系统日志:/var/log/xferlog
安全信息和系统登录与网络连接的信息:/var/log/secure(记录ftp,sshd等网络连接信息,审计记录包括:事件日期与时间(Jan  8 23:25:12), 主体标识(主机名), 客体类型(sshd),具体操作(pam_unix(sshd:session): ),操作结果(session opened for user root by (uid=0)))
Jan  8 23:25:12 localhost sshd[19140]: Accepted password for root from 192.168.44.1 port 51992 ssh2
Jan  8 23:25:12 localhost sshd[19140]: pam_unix(sshd:session): session opened for user root by (uid=0)
Jan  9 00:14:00 localhost sshd[19140]: pam_unix(sshd:session): session closed for user root
Jan  9 00:14:18 localhost sshd[10355]: Accepted password for root from 192.168.44.1 port 52968 ssh2
Jan  9 00:14:18 localhost sshd[10355]: pam_unix(sshd:session): session opened for user root by (uid=0)
登录记录:/var/log/wtmp      记录登录者讯录,二进制文件,须用last来读取内容    who -u /var/log/wtmp 查看信息
News日志:/var/log/spooler
RPM软件包:/var/log/rpmpkgs
XFree86日志:/var/log/XFree86.0.log
cron(定制任务日志)日志:/var/log/cron
文件 /var/run/utmp 記錄著現在登入的用戶。
文件 /var/log/wtmp 記錄所有的登入和登出。
文件 /var/log/lastlog 記錄每個用戶最後的登入信息。
文件 /var/log/btmp 記錄錯誤的登入嘗試。
 
综上所述:
audit 审计所有系统与安全相关的事件,包括重要用户行为(users), 重要系统命令的使用(如events,objects等),但是是否能审计系统资源的异常使用??
 
syslog 审计所有信息,包括运行,安全等,也包括重要用户行为,
posted @ 2019-11-14 15:35  游走在六环  阅读(2117)  评论(0)    收藏  举报