跳过导航链接 | |
退出打印视图 | |
![]() |
Oracle Solaris 管理:安全服务 Oracle Solaris 11 Information Library (简体中文) |
每个审计标记都有一个标记类型标识符,后跟标记的特定数据。下表显示了每个标记的标记名称以及简短说明。为了与先前的 Solaris 发行版兼容,将维护过时的标记。
表 29-1 用于审计的审计标记
|
以下标记已过时:
liaison
host
tid
有关过时标记的信息,请参见包括标记的发行版参考资料。
审计记录始终以 header 标记开始。header 标记指示审计记录在审计迹中的开始位置。对于可归属事件,subject 和 process 标记引用导致事件发生的进程的值。对于无归属事件,process 标记引用系统。
acl 标记采用两种形式来记录有关适用于 ZFS 文件系统的访问控制条目 (Access Control Entry, ACE) 和适用于 UFS 文件系统的访问控制列表 (Access Control List, ACL) 的信息。
记录 UFS 文件系统的 acl 标记时,praudit -x 命令将显示如下字段:
<acl type="1" value="root" mode="6"/>
记录 ZFS 数据集的 acl 标记时,praudit -x 命令将显示如下字段:
<acl who="root" access_mask="default" flags="-i,-R" type="2"/>
argument 标记包含有关系统调用参数的信息:系统调用的参数号、参数值以及可选说明。该标记允许在审计记录中使用 32 位整数的系统调用参数。
praudit -x 命令按如下方式显示 argument 标记的字段:
<argument arg-num="2" value="0x5401" desc="cmd"/>
attribute 标记包含文件 vnode 中的信息。
attribute 标记通常与 path 标记同时出现。attribute 标记是在搜索路径期间生成的。如果出现路径搜索错误,则没有可用的 vnode 来获取必需的文件信息。因此,attribute 标记不包括在审计记录中。praudit -x 命令按如下方式显示 attribute 标记的字段:
<attribute mode="20620" uid="root" gid="tty" fsid="0" nodeid="9267" device="108233"/>
cmd 标记记录与命令关联的参数列表和环境变量的列表。
praudit -x 命令显示 cmd 标记的字段:下面是一个截断的 cmd 标记。由于显示的原因进行了换行。
<cmd><arge>WINDOWID=6823679</arge> <arge>COLORTERM=gnome-terminal</arge> <arge>...LANG=C</arge>...<arge>HOST=machine1</arge> <arge>LPDEST=printer1</arge>...</cmd>
exec_args 标记记录 exec() 系统调用的参数。
praudit -x 命令按如下方式显示 exec_args 标记的字段:
<exec_args><arg>/usr/bin/sh</arg><arg>/usr/bin/hostname</arg></exec_args>
注 - 仅当 argv 审计策略选项处于活动状态时,才输出 exec_args 标记。
exec_env 标记记录 exec() 系统调用的当前环境变量。
praudit -x 命令显示 exec_env 标记的字段。由于显示的原因进行了换行。
<exec_env><env>_=/usr/bin/hostname</env> <env>LANG=C</env><env>PATH=/usr/bin:/usr/ucb</env> <env><env>LOGNAME=jdoe</env><env>USER=jdoe</env> <env>DISPLAY=:0</env><env>SHELL=/bin/csh</env> <env>HOME=/home/jdoe</env><env>PWD=/home/jdoe</env><env>TZ=US/Pacific</env> </exec_env>
注 - 仅当 arge 审计策略选项处于活动状态时,才输出 exec_env 标记。
file 标记是一种特殊标记,它可在停用旧文件时标记新审计文件的开始以及旧审计文件的结束。初始 file 标记识别审计迹中的上一个文件。最终 file 标记识别审计迹中的下一个文件。这些标记一起将连续的审计文件“链接”成一个审计迹。
praudit -x 命令显示 file 标记的字段。由于显示的原因进行了换行。
<file iso8601="2009-04-08 14:18:26.200 -07:00"> /var/audit/machine1/files/20090408211826.not_terminated.machine1</file>
fmri 标记记录了故障管理资源指示器 (fault management resource indicator, FMRI) 的用法。有关更多信息,请参见 smf(5) 手册页。
praudit -x 命令显示 fmri 标记的内容:
<fmri service_instance="svc:/system/cryptosvc"</fmri>
group 标记记录进程凭证中的组项。
praudit -x 命令按如下方式显示 groups 标记的字段:
<group><gid>staff</gid><gid>other</gid></group>
header 标记的特殊之处在于,它标记审计记录的开始。header 标记与 trailer 标记组合使用,将记录中的所有其他标记括在一起。
在极少的情况下,header 标记可能会包含一个或多个事件修饰符:
header,52,2,system booted,na,mach1,2011-10-10 10:10:20.564 -07:00
header,120,2,exit(2),sp,mach1,2011-10-10 10:10:10.853 -07:00
praudit 命令按如下方式显示 header 标记:
header,756,2,execve(2),,machine1,2010-10-10 12:11:10.209 -07:00
praudit -x 命令在审计记录开始显示 header 标记的字段。由于显示的原因进行了换行。
<record version="2" event="execve(2)" host="machine1" iso8601="2010-10-10 12:11:10.209 -07:00">
ip address 标记包含 Internet 协议地址(IP 地址)。IP 地址以 IPv4 或 IPv6 格式显示。IPv4 地址使用 4 个字节。IPv6 地址使用 1 个字节来表示地址类型,使用 16 个字节来表示地址。
praudit -x 命令按如下方式显示 ip address 标记的内容:
<ip_address>machine1</ip_address>
ip port 标记包含 TCP 或 UDP 端口地址。
praudit 命令按如下方式显示 ip port 标记:
ip port,0xf6d6
ipc 标记包含调用者用于标识特殊 IPC 对象的 System V IPC 消息句柄、信号句柄或共享内存句柄。
注 - IPC 对象标识符不符合审计标记的上下文无关性质。没有可唯一标识 IPC 对象的全局名称。IPC 对象由其句柄标识。这些句柄仅当 IPC 对象处于活动状态时才有效。但是,IPC 对象的标识应该不存在问题。很少用到 System V IPC 机制,并且这些机制全部共享相同的审计类。
下表显示了 IPC 对象类型字段的可能值。这些值在 /usr/include/bsm/audit.h 文件中定义。
表 29-2 IPC 对象类型字段的值
|
praudit -x 命令按如下方式显示 ipc 标记的字段:
<IPC ipc-type="shm" ipc-id="15"/>
IPC_perm 标记包含 System V IPC 访问权限的副本。该标记将被添加到由 IPC 共享内存事件、IPC 信号事件和 IPC 消息事件生成的审计记录中。
praudit -x 命令显示 IPC_perm 标记的字段。由于显示的原因进行了换行。
<IPC_perm uid="jdoe" gid="staff" creator-uid="jdoe" creator-gid="staff" mode="100600" seq="0" key="0x0"/>
从与 IPC 对象关联的 IPC_perm 结构取得这些值。
path 标记包含对象的访问路径信息。
praudit -x 命令显示 path 标记的内容:
<path>/export/home/srv/.xsession-errors</path>
path_attr 标记包含对象的访问路径信息。访问路径指定了 path 标记对象下的属性文件对象的顺序。系统调用存取属性文件,如 openat()。有关属性文件对象的更多信息,请参见 fsattr(5) 手册页。
praudit 命令显示 path_attr 标记如下:
path_attr,1,attr_file_name
privilege 标记记录进程中的特权使用情况。不对基本集中的特权记录 privilege 标记。如果已通过管理操作从基本集中删除了特权,则会记录该特权的使用。有关特权的更多信息,请参见特权(概述)
praudit -x 命令显示 privilege 标记的字段。
<privilege set-type="Inheritable">ALL</privilege>
process 标记包含有关与进程关联的用户(如信号接收者)的信息。
praudit -x 命令显示 process 标记的字段。由于显示的原因进行了换行。
<process audit-uid="-2" uid="root" gid="root" ruid="root" rgid="root" pid="567" sid="0" tid="0 0 0.0.0.0"/>
return 标记包含系统调用的返回状态 (u_error) 以及进程返回值 (u_rval1)。
return 标记始终作为系统调用的内核生成审计记录的一部分返回。在应用程序审计中,此标记指示退出状态以及其他返回值。
praudit 命令按如下方式显示系统调用的 return 标记:
return,failure: Operation now in progress,-1
praudit -x 命令按如下方式显示 return 标记的字段:
<return errval="failure: Operation now in progress" retval="-1/">
sequence 标记包含一个序列号。每次向审计迹添加一条审计记录,序列号就增加一个数字。该标记用于调试。
praudit -x 命令显示 sequence 标记的内容:
<sequence seq-num="1292"/>
注 - 仅当 seq 审计策略选项处于活动状态时,才输出 sequence 标记。
socket 标记包含描述 Internet 套接字的信息。在某些实例中,标记仅包括远程端口和远程 IP 地址。
praudit 命令按如下方式显示该 socket 标记实例:
socket,0x0002,0x83b1,localhost
展开的标记可添加信息,包括套接字类型和本地端口信息。
praudit -x 命令按如下方式显示该 socket 标记实例。由于显示的原因进行了换行。
<socket sock_domain="0x0002" sock_type="0x0002" lport="0x83cf" laddr="example1" fport="0x2383" faddr="server1.Subdomain.Domain.COM"/>
subject 标记描述执行或尝试执行某项操作的用户。格式与 process 标记的格式相同。
subject 标记始终作为系统调用的内核生成审计记录的一部分返回。praudit 命令按如下方式显示 subject 标记:
subject,jdoe,root,root,root,root,1631,1421584480,8243 65558 machine1
praudit -x 命令显示 subject 标记的字段。由于显示的原因进行了换行。
<subject audit-uid="jdoe" uid="root" gid="root" ruid="root" rgid="root" pid="1631" sid="1421584480" tid="8243 65558 machine1"/>
text 标记包含一个文本字符串。
praudit -x 命令显示 text 标记的内容:
<text>booting kernel</text>
header 和 trailer 这两个标记的特殊之处在于,它们将审计记录的各个结束点区分开来,并将所有其他标记括在一起。header 标记指示审计记录的开头。trailer 标记指示审计记录的结尾。trailer 标记是可选标记。仅当已设置 trail 审计策略选项时,才能将 trailer 标记添加为每条记录的最后一个标记。
在 trailer 打开的情况下生成审计记录时,auditreduce 命令可以验证 trailer 是否正确指回记录 header。trailer 标记支持向后查找审计迹。
trailer,136
use of authorization 标记记录授权使用。
praudit 命令按如下方式显示 use of authorization 标记:
use of authorization,solaris.role.delegate
XXXX<use_of_authorization result="successful use of auth">solaris.role.delegate</use_of_auth>
use of privilege 标记记录特权使用。
praudit -x 命令按如下方式显示 use of privilege 标记的字段:
<use_of_privilege result="successful use of priv">proc_setid</use_of_privilege>
user 标记记录用户名和用户 ID。如果用户名不同于调用者,则出现此标记。
praudit -x 命令按如下方式显示 user 标记的字段:
<user uid="123456" username="tester1"/>
xclient 标记包含到 X 服务器的客户机连接数目。
praudit -x 命令按如下方式显示 xlient 标记的内容:
<X_client>15</X_client>
zonename 标记记录发生审计事件的区域。字符串 "global" 指示审计事件发生在全局区域。
praudit -x 命令显示 zonename 标记的内容:
<zone name="graphzone"/>