审计术语和概念
第27 章• Solaris 审计(概述) 519
表27–1 Solaris 审计术语(续)
术语定义
Audit trail(审计
跟踪)
一个或多个审计文件的集合,用于存储运行审计服务的所有系统上的审计数据。
有关更多信息,请参见第583 页中的“审计跟踪”。
Preselection(预
选)
预选是指在启用审计服务之前选择要监视的审计类。预选的审计类的审计事件将
会在审计跟踪中出现。由于不会审计未预选的审计类,因此这些审计类的事件将
不会出现在审计跟踪中。后选工具auditreduce 命令将从审计跟踪中选择记录。
有关更多信息,请参见第521 页中的“审计类和预选”。
Public object(公
共对象)
公共对象是一个由root 用户拥有且任何人都可读取的文件。例如,/etc 目录和
/usr/bin 目录中的文件就是公共对象。不能审计只读事件的公共对象。例如,即
使预选了file_read (fr) 审计类,也不会审计公共对象的读取。您可以通过更改
public 审计策略选项来覆盖缺省值。
审计事件
可以审计与安全相关的系统操作。这些可审计的操作称为审计事件。审计事件在
/etc/security/audit_event 文件中列出。在此文件中,会根据事件编号、符号名称、简短
说明以及事件所属的审计类集定义每个审计事件。有关audit_event 文件的更多信息,请
参见audit_event(4) 手册页。
例如,以下项定义了exec() 系统调用的审计事件:
7:AUE_EXEC:exec(2):ps,ex
当您预选审计类ps 或审计类ex 进行审计时,将在审计跟踪中记录exec() 系统调用。
Solaris 审计可处理可归属事件和无归属事件。exec() 系统调用可归属到某个用户,因此可
将该调用视为可归属事件。而在内核中断级别发生的事件则为无归属事件。对用户进行验
证之前发生的事件也是无归属事件。na 审计类处理无归属审计事件。例如,引导系统便是
一个无归属事件。
113:AUE_SYSTEMBOOT:system booted:na
预选某个审计事件所属的类以进行审计时,会在审计跟踪中记录此事件。例如,预选ps 和
na 审计类以进行审计时,除其他事件之外,还会在审计跟踪中记录exec() 系统调用和系统
引导操作。
除Solaris 审计服务定义的审计事件之外,第三方应用程序也可以生成审计事件。审计事件
编号32768 到65535 适用于第三方应用程序。
审计术语和概念
520 系统管理指南:安全性服务• 2006 年9 月
审计类和预选
每个审计事件都属于一个或多个审计类。审计类是用于容纳大量审计事件的一种很方便的
容器。预选要审计的类时,可以指定应在审计跟踪中记录该类中的所有事件。可以预选系
统中的事件和特定用户启动的事件。运行审计服务之后,可以从预选类中动态添加或删除
审计类。
系统范围预选-在audit_control 文件的flags、naflags 以及plugin 行中指定系统范围
内的缺省值以进行审计。audit_control 文件在第575 页中的“audit_control 文件”中
介绍。另请参见audit_control(4) 手册页。
用户特定预选-在audit_user 数据库中针对个别用户指定除系统范围内的审计缺省值之
外的其他值。
审计预选掩码确定要针对用户审计的事件类。用户的审计预选掩码是系统范围内的缺省
值和针对用户指定的审计类的组合。有关更多详细信息,请参见第582 页中的“进程审
计特征”。
audit_user 数据库可以从本地管理,也可以通过名称服务来管理。Solaris Management
Console 可提供图形用户界面(graphical user interface, GUI) 来管理此数据库。有关详细信
息,请参见audit_user(4) 手册页。
动态预选-将审计类指定为auditconfig 命令的参数,以便从进程或会话中添加或删除
这些审计类。有关更多信息,请参见auditconfig(1M) 手册页。
可以使用后选命令auditreduce 从预选审计记录中选择记录。有关更多信息,请参见第524
页中的“检查审计跟踪”和auditreduce(1M) 手册页。
审计类在/etc/security/audit_class 文件中定义。每个项都包含类的审计掩码、类的名
称,以及类的描述性名称。例如,在audit_class 文件中ps 和na 类的定义为:
0x00100000:ps:process start/stop
0x00000400:na:non-attribute
有32 种可能的审计类。其中包括两个全局类:all 和no。这些审计类将在audit_class(4)
手册页中介绍。
可以配置审计事件到类的映射。可以从类中删除事件、向类中添加事件,以及创建新类以
包含选定事件。有关过程,请参见第544 页中的“如何更改审计事件的类成员关系”。
审计记录和审计标记
每条审计记录记录一个审计事件的发生。此记录包含操作执行者、受影响的文件、已尝试
执行的操作以及操作发生的时间和位置等信息。以下示例给出了一条login 审计记录:
header,81,2,login - local,,2003-10-13 11:23:31.050 -07:00
subject,root,root,other,root,other,378,378,0 0 example_system
审计术语和概念
第27 章• Solaris 审计(概述) 521
text,successful login
return,success,0
为每个审计事件保存的信息类型由一组审计标记进行定义。每次为事件创建审计记录时,
记录中都会包含为事件定义的部分或全部标记。事件的性质确定要记录的标记。在前面的
示例中,每行都以审计标记的名称开头。名称后跟审计标记的内容。login 审计记录共由四
种审计标记组成。
有关每个审计标记结构的详细说明和praudit 输出示例,请参见第585 页中的“审计标记格
式”。有关审计标记的二进制流的说明,请参见audit.log(4) 手册页。
审计文件
审计记录收集在审计日志中。Solaris 审计为审计日志提供两种输出模式。称为审计文件的
日志以二进制格式存储审计记录。系统或站点的审计文件组提供完整的审计记录。完整的
审计记录称为审计跟踪。
syslog 实用程序收集并存储审计记录的文本版本的摘要。syslog 记录不是完整的记录。以
下示例给出了login 审计记录的syslog 项:
Oct 13 11:24:11 example_system auditd: [ID 6472 audit.notice] \
login - login ok session 378 by root as root:other
一个站点可以使用两种格式存储审计记录。可以配置站点中的系统,使其可以使用二进制
模式,或者可以同时使用这两种模式。下表对二进制审计记录和syslog 审计记录进行了比
较。
表27–2 二进制审计记录和syslog 审计记录的比较
功能二进制记录syslog 记录
协议写入文件系统将UDP用于远程日志
数据类型二进制文本
记录长度无限制每条审计记录最多1024 个字符
位置存储在本地磁盘上以及使用NFS 挂载的
目录中
存储在syslog.conf 文件中指定的位置
配置方式编辑audit_control 文件,并保护NFS
挂载审计目录
编辑audit_control 文件,编辑
syslog.conf 文件
审计术语和概念
522 系统管理指南:安全性服务• 2006 年9 月
表27–2 二进制审计记录和syslog 审计记录的比较(续)
功能二进制记录syslog 记录
读取方式通常,以批处理模式读取
XML格式的浏览器输出
实时读取,或者通过为syslog 创建的
脚本进行搜索
纯文本输出
完整性保证完整,并且以正确的顺序显示不能保证完整
时间标记格林威治标准时间(Greenwich Mean
Time, GMT)
被审计的系统时间
二进制记录提供最高的安全性和最大的范围。二进制输出满足安全证书的要求,例如公共
标准受控制访问保护配置(Controlled Access Protection Profile, CAPP)。这些记录将写入被保
护不受窥探的文件系统中。在单独的系统上,将收集所有二进制记录并按顺序显示它们。
当某个审计跟踪内的各系统跨时间区域分布时,便可使用二进制日志中的GMT时间标记进
行精确比较。使用praudit -x 命令可在浏览器中查看XML 格式的记录。还可以使用脚本来
解析XML输出。
相反,syslog 记录可以提供更大的便利性和灵活性。例如,您可以从各种源收集syslog 数
据。此外,当您监视syslog.conf 文件中的audit.notice 事件时,syslog 实用程序会记录
一条带有当前时间标记的审计记录摘要。您可以使用为来自各种源(包括工作站、服务
器、防火墙,以及路由器)的syslog 消息开发的管理和分析工具。可以实时查看记录,并
将其存储在远程系统中。
通过使用syslog.conf 远程存储审计记录,可以保护日志数据免遭攻击者改动或删除。另一
方面,远程存储审计记录时,这些记录容易遭受拒绝服务、伪装源地址等网络攻击。此
外,UDP会丢包或无序发送包。syslog 项的限制为1024 个字符,所以可能截断日志中的某
些审计记录。在单独的系统上,并非收集所有的审计记录。可能不会按顺序显示记录。由
于每条审计记录都使用本地系统的日期和时间进行标记,因此不能根据时间标记为多个系
统构造审计跟踪。
有关审计日志的更多信息,请参阅以下内容:
audit_syslog(5) 手册页
audit.log(4) 手册页
第539 页中的“如何配置syslog 审计日志”
审计存储
审计目录以二进制格式保留审计文件。典型安装使用许多审计目录。所有审计目录的内容
组成了审计跟踪。审计记录按以下顺序存储在审计目录中:
主审计目录-正常情况下放置系统审计文件的目录
辅助审计目录-主审计目录已满或不可用时放置系统审计文件的目录
最后使用的目录-主审计目录和所有辅助审计目录都不可用时使用的本地审计目录
审计术语和概念
第27 章• Solaris 审计(概述) 523
这些目录在audit_control 文件中指定。列表中早于此目录的目录已满时才会使用该目录。
有关带有目录项列表的audit_control 注释文件的信息,请参见示例29–3。
检查审计跟踪
审计服务提供用于合并和减少审计跟踪文件的命令。auditreduce 命令可以合并审计跟踪中
的审计文件。此命令还可以过滤文件以查找特定事件。praudit 命令读取二进制文件。
praudit 命令的选项提供适合借助脚本和浏览器显示的输出。
Solaris 10 发行版中的Solaris 审计增强功能
从Solaris 9 发行版开始,已将以下功能引入Solaris 审计中:
Solaris 审计可以使用syslog 实用程序以文本格式存储审计记录。有关介绍,请参见第
522 页中的“审计文件”。有关设置audit_control 文件以使用syslog 实用程序的信
息,请参见第539 页中的“如何配置syslog 审计日志”。
praudit 命令具有另外一种输出格式XML。XML是标准的可移植、可处理格式。XML格
式使得输出能够在浏览器中读取,并为报告的XML脚本提供数据源。praudit 命令的-x
选项在第572 页中的“praudit 命令”中介绍。
已重新构造缺省的审计类集。审计元类为更加细分的审计类提供了一种保护。有关缺省
类集列表的信息,请参见第580 页中的“审计类的定义”。
bsmconv 命令不再禁用Stop-A 键。可以审计Stop-A 事件。
审计记录中的时间标记以ISO 8601 格式报告。有关标准的信息,请访问
。
添加了三个审计策略选项:
public-不再审计只读事件的公共对象。由于不再审计公共文件,因而审计日志的大
小将显著减小。对敏感文件的读取尝试将更容易监视。有关公共对象的更多信息,
请参见第519 页中的“审计术语和概念”。
perzone- perzone 策略具有广泛的影响。在每个区域中运行单独的审计守护进程。
此守护进程使用特定于相应区域的审计配置文件。审计队列也特定于该区域。有关
详细信息,请参见auditd(1M) 和auditconfig(1M) 手册页。有关区域的更多信息,
请参见第579 页中的“审计和Solaris Zones”。有关策略的更多信息,请参见第528
页中的“如何在区域中规划审计”。
zonename-其中发生的审计事件包括在审计记录中的Solaris 区域的名称。有关区域
的更多信息,请参见第579 页中的“审计和Solaris Zones”。有关何时使用选项的介
绍,请参见第531 页中的“确定审计策略”。
添加了五个审计标记:
cmd 标记记录参数列表和与命令关联的环境变量的列表。有关更多信息,请参见第589
页中的“cmd 标记”。
path_attr 标记记录path 标记对象下的属性文件对象的序列。有关更多信息,请参见
第594 页中的“path_attr 标记”。
Solaris 10 发行版中的Solaris 审计增强功能
524 系统管理指南:安全性服务• 2006 年9 月
privilege 标记记录进程中使用的权限。有关更多信息,请参见第595 页中的
“privilege 标记”。
uauth 标记记录在命令或操作中使用的授权。有关更多信息,请参见第600 页中的
“uauth 标记”。
zonename 标记记录发生审计事件的非全局区域的名称。zonename 审计策略选项确定
zonename 标记是否包括在审计记录中。有关更多信息,请参见第601 页中的
“zonename 标记”。
有关概述信息,请参见第579 页中的“审计和Solaris Zones”。要了解有关区域的信
息,请参见《System Administration Guide: Solaris Containers-Resource Management and
Solaris Zones》中的第二部分,“Zones”。
Solaris 10 发行版中的Solaris 审计增强功能
第27 章• Solaris 审计(概述) 525
526
规划Solaris 审计
本章介绍如何针对Solaris 安装设置审计服务。特别是,本章介绍了您在启用审计服务之前
需要考虑的问题。以下是本章中规划信息的列表:
第527 页中的“规划Solaris 审计(任务列表)”
第531 页中的“确定审计策略”
第533 页中的“控制审计成本”
第534 页中的“有效审计”
有关审计的概述,请参见第27 章。有关在站点上配置审计的过程,请参见第29 章。有关参
考信息,请参见第30 章。
规划Solaris 审计(任务列表)
以下任务列表介绍了规划磁盘空间及要记录的事件时所需执行的主要任务。
任务参考
确定非全局区域的审计策略第528 页中的“如何在区域中规划审计”
规划审计跟踪的存储空间第529 页中的“如何规划审计记录的存储”
确定要审计的对象及内容第529 页中的“如何规划要审计的对象及内容”
规划Solaris 审计(任务)
您需要选择审计的活动类型,同时需要收集有用的审计信息。审计文件不断增大,可能会
很快占满可用空间,因此应该分配足够的磁盘空间。您还需要仔细规划要审计的对象及内
容。
28 第2 8 章
527
如何在区域中规划审计
如果您的系统实现了区域,则可以进行两种审计配置:
可以单独配置非全局区域。
可以在全局区域中为所有区域配置审计。
确定是否要在非全局区域中自定义审计。
如果不想在非全局区域中自定义审计,请转至步骤2。
如果要在非全局区域中自定义审计,请考虑以下事项:
还必须配置全局区域。
要根据非全局区域中的审计配置文件收集审计记录,必须在全局区域中设置perzone
审计策略。
注– 如果使用自定义名称服务文件实现非全局区域,则应设置perzone 审计策略选
项。名称服务文件包括/etc/password、/etc/shadow 和nsswitch.conf。有关不设置
perzone 选项的信息,请参见第579 页中的“审计和Solaris Zones”。
区域中的审计配置文件由此区域的审计守护进程读取。
每个区域都运行自己的审计守护进程,具有自己的审计队列,并收集自己的审计日
志。这些操作由计算机集中执行。
各个区域都可以设置除perzone 和ahlt 以外的所有策略选项。这些策略选项在全局
区域中设置。
如果在每个区域中自定义审计配置文件,应使用第529 页中的“如何规划要审计的对象
及内容”规划每个区域。可以跳过第一步。还必须使用第529 页中的“如何规划审计记
录的存储”规划每个区域。
确定是否需要单映像审计跟踪。
单映像审计跟踪将正在审计的系统视为一台计算机。全局区域会在系统上运行唯一的审计
守护进程,并收集每个区域的审计日志。仅可在全局区域中自定义审计配置文件。
此配置将所有区域视为单一系统的一部分。要区分区域审计记录,可以设置zonename 策
略。然后,可以使用auditreduce 命令,按区域来选择审计事件。有关示例,请参见
auditreduce(1M) 手册页。
要规划单映像审计跟踪,请使用第529 页中的“如何规划要审计的对象及内容”进行规
划。从第一步开始。还必须使用第529 页中的“如何规划审计记录的存储”规划每个区
域。
1
2
规划Solaris 审计(任务)
528 系统管理指南:安全性服务• 2006 年9 月
如何规划审计记录的存储
审计跟踪需要专用文件空间。审计文件的专用文件空间必须可用且安全。各个系统都应具
有多个为审计文件配置的审计目录。作为首要任务之一,在任何系统上启用审计之前,都
应决定如何配置审计目录。以下过程介绍了规划审计跟踪存储时要解决的问题。
如果要实现非全局区域,请在使用此过程之前完成第528 页中的“如何在区域中规划审计
”。
确定您站点所需的审计量。
针对审计跟踪平衡磁盘空间可用性和站点的安全需求。
有关如何在保持站点安全的同时降低空间需求,以及如何设计审计存储的指南,请参见第533
页中的“控制审计成本”和第534 页中的“有效审计”。
确定要审计的系统。
在这些系统上,至少为一个本地审计目录分配空间。有关如何指定审计目录的信息,请参
见示例29–3。
确定要存储审计文件的系统。
确定要保存主审计目录和辅助审计目录的服务器。有关为审计目录配置磁盘的示例,请参
见第547 页中的“如何创建审计文件的分区”。
命名审计目录。
创建计划使用的所有审计目录的列表。有关命名约定,请参见第583 页中的“二进制审计
文件名称约定”。
确定哪些系统要使用哪些审计目录。
创建一个列表,显示哪个系统应使用哪个审计目录。此列表有助于您平衡审计活动。有关
图解,请参见图30–1 和图30–2。
如何规划要审计的对象及内容
如果要实现非全局区域,请在使用此过程之前完成第528 页中的“如何在区域中规划审计
”。
确定是否需要单映像审计跟踪。
如果计划以不同的方式审计各个系统,请从下一步开始。应该针对每个系统完成其余的规
划步骤。
单映像审计跟踪将正在审计的系统视为一台计算机。要为某个站点创建单映像审计跟踪,
安装中的每个系统都应进行如下配置:
与其他所有系统使用相同的audit_warn、audit_event 、audit_class 和audit_startup
文件。
阅读(439) | 评论(0) | 转发(0) |