基于角色管理的安全审计方法及系统的制作方法

文档序号:7967031阅读:300来源:国知局
专利名称:基于角色管理的安全审计方法及系统的制作方法
技术领域
本发明涉及一种作为重要的网络安全产品之一的网络安全审计系统(NSASNetwork Security Audit System)的关键组成部分——基于角色管理的安全审计方法及系统。
背景技术
NSAS安装在被保护的网段中,其监听网卡工作在混杂模式下,通过对网络数据的实时采集和分析,可以实现对用户网络环境中关键业务主机的访问进行监视、审计和保护。为了方便叙述,这里首先给出几个相关概念主体发出访问操作、存取要求的主动方,通常指用户或用户的进程;客体被调用的程序或欲存取的数据;保护主机用户网络环境内运行着重要服务,需要对其访问进行控制的服务器;规则集一系列规定了主体访问行为的规则的集合;访问控制策略一套用以确定主体是否对客体拥有访问权限的规则。
NSAS的关键技术在于制定灵活而完备的访问控制策略,使得用户可以按照规定的权限访问被保护的网络资源,并依据访问控制策略对用户的行为进行审计。目前NSAS普遍采用自主型的访问控制机制(DACDiscretionaryAccess Control),它是根据访问者和(或)它所属组的身份来控制对客体目标的授权访问。它由系统管理员为每个用户及用户组分配一定的访问权限,一旦访问者的身份得到确认,该用户就对保护资源拥有相应的读写权限。这种方法实现简单,却具有如下局限性(1)授权管理复杂,灵活性低。DAC模型将主体和客体直接绑定在一起,授权时需要对每对(主体,客体)指定访问许可。这样当主体和客体的数量达到较高的数量级之后,授权工作将非常困难。当主体职能发生变化时,需要进行大量的授权更改工作。
(2)难以实现对保护资源的细粒度访问控制。细粒度的访问控制是指在方法、属性或内容层次上对访问进行授权,例如对于HTTP协议,细粒度要能做到对访问时采用的应用层命令、访问的URL地址、网页中包含的关键字等进行访问控制。DAC模型中的授权是直接分配给主体的,而现实中相当多的细粒度权限问题因其独特性而不具通用意义,为此必须针对该权限构造专有的用户组,这就增加了授权管理的工作量。

发明内容
本发明的目的是设计一种基于角色管理的安全审计方法及系统,它提供了一个安全审计策略,该策略根据访问控制的需求对用户划分不同的角色,对客体的访问许可被封装在角色中,用户被指派到角色,在角色的基础上实现对网络资源的保护和访问审计,并提供良好的用户可定义接口,便于开发者和用户现场维护。
本发明所述的基于角色管理的安全审计方法,是在监控网络数据的基础上,依据审计策略对主体的访问行为进行审计,从而达到对客体进行保护的目的,并根据管理员设定的规则记录TCP会话内容,以便事后取证分析。
该方法包括如下步骤(1)定义用户指定具有访问权限的主体;(2)定义保护主机和服务定义监控网段内需保护的主机,以及该主机上需监控和审计的服务,相当于客体;(3)定义访问规则根据不同的应用层协议,基于应用层命令制定细粒度的访问规则;(4)定义角色指定某些用户可以进行满足某类访问规则的操作;(5)审计引擎对网络数据进行监控,记录TCP会话内容,根据策略允许或中断对保护资源的访问。
下面对每个步骤的操作进行详细说明定义用户用户代表了一个可访问受保护资源的主体,任何能够在监控网络内进行访问的主体都要首先将其定义为用户,否则审计引擎将直接中断其访问请求。可以设置3种类型的用户1)信任用户信任用户与静态IP地址相关联,例如可以定义IP地址为192.168.0.1的用户为信任用户。
2)信任子网信任子网与静态IP地址范围相关联,例如可以定义IP地址为192.168.0.0,子网掩码为255.255.255.0的网段为信任子网。
3)认证用户该类用户需要在正式访问业务前通过认证中心的认证,否则访问将被阻断。认证时需要采用管理员签发的存储了数字证书的USB令牌。
定义保护主机和服务保护主机和服务代表了监控网络内受保护的客体,任何需要保护的资源都要首先将其定义为保护主机和保护服务,否则审计引擎将不对非其进行访问控制和安全审计。
保护主机可以是一个单独的地址,如IP地址为192.168.0.10,子网掩码为255.255.255.255的单主机;也可以是一个连续的子网段,如IP地址为192.168.0.208,子网掩码为255.255.255.240的网段。保护服务是保护主机上运行的服务进程,它与一个特定的端口相关,例如定义HTTP服务为保护服务,则针对80端口的访问将会受到引擎的保护。
定义访问规则访问规则指定了主体对客体的操作限制。为了更加精确地审计主体的操作行为,支持对HTTP、FTP、TELNET、SMTP、POP3、MS SQL SERVER、SYBASE SQL SERVER、ORACLE、NETBIOS等9种协议制定基于应用层协议命令的细粒度访问规则。例如针对HTTP协议可定义规则,规定主体访问的URL中包含/news/目录;或者针对FTP协议定义规则,规定主体删除文件时不包含“*.doc”类型的文件。
定义角色角色是人们现实生活中的身份在网络空间的映射,它既是用户的集合,又是访问控制策略的集合。它由以下两方面组成1)访问控制策略与访问规则相关,规定了符合某类访问规则的操作的响应方式。例如已定义了规则1和规则2,可制定策略使得对符合规则1的访问放行,对符合规则2的访问阻断。
2)所属用户与用户相关,规定了哪些用户可按上述访问控制策略访问保护资源。例如已定义了用户1和用户2,如果只允许用户1进行该类访问,则需将用户1添加到该角色。
审计引擎访问控制工作流程审计引擎并行接入到保护网络中,它监听并捕获网络上的数据,对访问保护资源的数据进行报文重组、协议分析和事件匹配。在此基础上,按照上述基于角色管理的审计策略对保护资源的操作进行访问控制,满足访问控制策略的操作将被允许,其他越权访问将被及时中断。具体流程可见附图1。
一种基于角色管理的安全审计系统,该系统包括一个计算机主机,一个或多个终端服务器,数据存储装置,网卡,以及数据输入装置和输出装置,该系统包含还有用户定义单元,定义一个允许访问保护资源的主体,它可以是一个信任用户、信任子网或基于数字证书的强认证用户;保护主机和服务定义单元,定义监控网段内受保护的客体,它由保护主机和该主机上运行的服务组成;访问规则定义单元,可基于应用层命令制定细粒度的访问规则;角色定义单元,定义哪些用户可以进行满足哪种类型访问规则的操作;审计引擎访问控制单元,用于捕获网络中的原始报文,对数据包进行重组、分析和事件匹配,根据定义的规则对受保护资源的操作进行访问控制。
该方法的先进之处在于
1.可以通过保护主机和服务明确审计系统需保护的重点资源。审计引擎只关注对保护主机上已定义的服务的访问请求,如果某台主机不再需要保护,或者对该主机某服务的访问不再需要审计,将其从对应的列表中删除即可。
2.可以制定完备的访问控制策略。由于实现了主体和客体之间的分离,通过角色可以制定复杂而灵活的访问控制策略。例如对于属于同一个用户组的用户A和用户B,已经定义了规则a和规则b,通过将角色1指派给用户A,角色2指派给用户B,同时将规则a分配给角色1,规则b分配给角色2,就能达到同类用户不同控制规则的目的。
3.可以快速调整主体职能的变化。例如当用户A的职能发生了变化,从一般用户升级为高级用户,只需将其从一般用户对应的角色中删除,添加到高级用户对应的角色中即可完成转变。
4.可以实现细粒度的访问控制。在审计访问控制单元协议解析的基础上,可以针对应用层命令制定访问控制规则,从而增强审计力度。例如可以规定用户A在进行数据库操作时,当访问动作为“更新记录(update)”,不能对表名中包含“netids”关键字的表进行操作。


图1审计单元访问控制流程图。
具体实施例方式
访问控制规则举例定义IP为192.168.0.1的主机为保护主机,其开放的FTP服务为保护服务。定义三个用户UserA,UserB和UserC,三个用户的地址为192.168.0.11~192.168.0.13。则1)定义规则集RAdmin为管理FTP服务规则集,其中包括上传文件(put、mput)、创建目录(mkdir)等应用层命令;定义规则集RAccess为访问FTP服务规则集,其中只包括查看(ls)、切换目录(cd)、下载(get、mget)等应用层命令。
2)如果允许UserA管理保护主机上的FTP服务,则在FTP服务下添加角色RoleA,其策略定义为允许RAdmin,其用户为UserA。
3)如果允许UserB和UserC作为普通用户访问保护主机上的FTP服务,则在FTP服务下添加角色RoleB,其策略定义为允许RAccess,其用户为UserB、UserC。
4)如果需要将UserB的权限提升,使其可以管理FTP服务,则将其从RoleB的用户中删除,加入到RoleA的用户中。
5)如果需要禁止UserC对FTP服务的访问,则将其从RoleB中删除。
访问控制单元处理流程访问控制单元在启动时需要生成3个链表首先读入所有的用户定义,用一个用户链保存起来;然后读入所有的保护主机、服务和服务下定义的角色,用一个3层的角色链保存起来;最后对策略集进行解析,将所有的策略集组成一个策略链。
访问控制单元的处理过程可参照图1。当监控到一个访问请求时,访问控制单元首先检查该请求的源IP地址,在用户链中查找其是否是已定义的可信用户。如果未找到该地址,则发起端是未经认证的用户,审计引擎将直接阻断该访问。
如果通过了用户审查,审计引擎将根据访问请求的目的IP和目的端口,在角色链中查找该服务是否是受保护的服务。如果未找到该服务,说明是可信用户访问非保护服务,审计引擎将直接放行;否则在角色链中查找该服务的角色中是否包含该用户,如果包含则进入下一级审查,否则是信任用户访问未授权服务,审计引擎将直接阻断该访问。
审计引擎对数据包进行报文重组,根据操作的具体内容进行事件匹配。然后根据该角色的角色ID和规则ID,在策略链表中查找对该操作的响应方式,并按规定的响应方式对该操作进行阻断、审计或报警,结束一个审计流程。
权利要求
1.一种基于角色管理的安全审计方法,其特征在于是在监控网络数据的基础上,依据基于角色的审计策略对主体的访问行为进行审计,对客体进行保护,并根据管理员设定的规则记录TCP会话内容,以便事后取证分析;该方法包括如下步骤(1)定义用户指定具有访问权限的主体;(2)定义保护主机和服务定义监控网段内需保护的主机,以及该主机上需监控和审计的服务,相当于客体;(3)定义访问规则根据不同的应用层协议,基于应用层命令制定细粒度的访问规则;(4)定义角色指定某些用户可以进行满足某类访问规则的操作;(5)审计引擎对网络数据进行监控,记录TCP会话内容,根据策略允许或中断对保护资源的访问。
2.一种基于角色管理的安全审计系统,该系统包括一个计算机主机,一个或多个终端服务器,数据存储装置,网卡,以及数据输入装置和输出装置,其特征在于它还包括一个用户定义单元,定义一个允许访问保护资源的主体,它可以是一个信任用户、信任子网或基于数字证书的强认证用户;保护主机和服务定义单元,定义监控网段内受保护的主机和该主机上运行的服务组成;访问规则定义单元,可基于应用层命令制定细粒度的访问规则;角色定义单元,定义哪些用户可以进行满足哪种类型访问规则的操作;引擎访问控制单元,用于捕获网络中的原始报文,对数据包进行重组、分析和事件匹配,根据定义的规则对受保护资源的操作进行访问控制。
3.根据权利要求2所述的一种基于角色管理的安全审计系统,其特征在于访问规则中可以基于角色定义实现灵活的访问控制策略,具体包括(1)角色包含两方面的内容访问控制策略集和用户。策略集指定了该角色能够进行的操作,用户指定了该角色的范围;(2)需要首先定义规则集和用户,然后通过将规则集包含在访问控制策略集中,将角色指派给特定的用户,完成角色定义。
4.根据权利要求2所述的一种基于角色管理的安全审计系统,其特征在于可以对HTTP、FTP、TELNET、SMTP、POP3、MS SQLSERVER、SYBASE SQL SERVER、ORACLE、NETBIOS等9种协议制定基于应用层协议命令的细粒度访问规则。
全文摘要
本发明涉及一种作为重要的网络安全产品之一的网络安全审计系统(NSASNetwork Security Audit System)的核心关键技术——基于角色管理的安全审计方法及系统。特征是在监控网络数据的基础上,依据基于角色的审计策略对主体的访问行为进行审计,对客体进行保护,并根据管理员设定的规则记录TCP会话内容,以便事后取证分析。该系统可以定义信任用户、信任子网、认证用户三类用户,可以指定需要保护的主机和主机上需要保护的服务,可以根据应用层协议制定细粒度的访问规则,可以根据对保护资源访问控制的需要制定角色,将已定义的访问规则封装到角色中,将角色指派给已定义的用户,对受保护的资源实现基于角色的安全审计。
文档编号H04L9/32GK1953454SQ20061011410
公开日2007年4月25日 申请日期2006年10月27日 优先权日2006年10月27日
发明者叶润国, 牟宪波, 焦玉峰, 杨立纯, 周涛 申请人:北京启明星辰信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1