首页> 中国专利> 基于J2EE中间件规范的容忍入侵应用服务器及容忍入侵方法

基于J2EE中间件规范的容忍入侵应用服务器及容忍入侵方法

摘要

本发明公开了一种基于J2EE中间件规范的容忍入侵应用服务器,该服务器包括容忍入侵扩展集成框架、容忍入侵策略逻辑组件、安全群组通信管理器、安全群组通信系统及应用服务器基础平台,该容忍入侵策略逻辑组件与容忍入侵扩展集成框架采用松散耦合,并通过J2EE应用服务器内置的拦截器实现对J2EE应用服务器基础平台容忍入侵功能的透明扩展;该容忍入侵策略逻辑组件与安全群组通信管理器通过API接口进行交互;安全群组通信系统工作在J2EE应用服务器基础平台的组通信层,并通过安全群组通信管理器分别与J2EE应用服务器基础平台和容忍入侵策略逻辑组件进行交互。本发明实现了容侵与J2EE应用服务功能的有效集成,相比其它同类服务器本发明具有显著的安全性与可生存性。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2012-01-25

    未缴年费专利权终止 IPC(主分类):H04L9/00 授权公告日:20100127 终止日期:20101120 申请日:20071120

    专利权的终止

  • 2010-01-27

    授权

    授权

  • 2008-06-04

    实质审查的生效

    实质审查的生效

  • 2008-04-09

    公开

    公开

说明书

技术领域

本发明属于计算机技术领域,具体地说是一种基于J2EE规范的应用服务器及容忍入侵方法,用于对J2EE应用服务器的功能进行扩展,以实现自适应容忍入侵功能在中间件层面上的无缝集成。

背景技术

中间件已经广泛成功应用于政府、交通、金融、证券、保险、税务、电信、移动、教育、军事等行业或领域的信息化建设,并成为大型应用系统建设不可缺少的一环。随着国家信息化建设的不断深入,市场对中间件产品的需求在不断增加,特别是嵌入有容忍入侵等安全保障功能的中间件产品有其巨大的需求。所谓容忍入侵,既不是如何设计出绝对安全的系统,也不是限制或阻止恶意攻击者对系统脆弱性的利用或攻击,而是指当系统在受到攻击时,即使某些部分或部件已经受到破坏或被恶意攻击者操控时,设法保证系统仍能触发一些防止安全失效的机制,以继续提供核心的或基本的服务,维护系统的基本功能。一个完整的容忍入侵机制至少包括容忍入侵方法、容忍机制的触发机制两个方面的内容。容忍入侵方法,包括各种类型的传统容错方法及入侵处理方法。相关的容错方法主要包括:对象复制技术(主动复制、被动复制、半主动复制等)、秘密共享与门限密码方法;入侵处理方法主要包括:回滚、恢复、阻塞等;容忍机制的触发机制,主要采用的是基于表决机制的触发策略,包括多数表决、带权值表决、中值表决等,触发机制用于发现对系统的攻击行为。

现有技术中构建容忍入侵系统一般包括两种途径,一种是在原有系统上进行修改;二是构建全新的系统。这两种形式的构建时常存在一些明显的问题,例如针对已有的现货商用COTS系统在增加容忍入侵功能时,通常需要对原有系统进行大量修改,工作量很大;又如在构建全新的容忍入侵业务系统时,要针对不同的业务类型和性能需求进行不同的个性化设计和开发,不仅影响系统或部件的可重用性,而且要消耗大量的人力和物力。

目前市场上有关J2EE应用服务器的软件产品,比如IBM WebSphere,BEAWebLogic和开放源代码的JBoss等,如图2.A所示。虽然内置了安全服务如认证及授权等,为用户提供了一定程度的安全服务保证,但是在服务可生存性方面还存在着不同程度的欠缺。以往容忍入侵中间件系统的设计也提出过一些,但是多以CORBA中间件作为基础平台,由于CORBA本身庞大而复杂,技术和标准的更新相对较慢,正逐渐被J2EE中间件所取代;并且这些容忍入侵中间件的设计普遍存在着可集成性、可插拔性和可扩展性差的缺陷。例如美国国防高级研究计划署DARPA资助下,GreggTally、Brent Whitmore等人设计开发了一个容忍入侵的分布式对象系统-ITDOS,Gregg Tally,Brent Whitmore,etc.Intrusion Tolerant Distributed Object Systems:ProjectSummary.DARPA Information Survivability Conference and Exposition-Volume II.25-27 January,2000,Hilton Head:149-151;Amjad Umar,、Farooq Anjum等人设计开发了一个智能的补偿中间件ICM,Umar.A,Anjum.F,Ghosh.A,Zbib.R.Intrusion tolerantmiddleware.DARPA Information Survivability Conference & Exposition II,2001.DISCEX′01.Proceedings.Anaheim,CA,USA:242-256 vol.2。其中ITDOS是从系统级容忍入侵入手,分别在客户端与服务器端设置代理防火墙防范DOS攻击,并使用了拜占庭一致性协商、表决技术对攻击行为进行防范。ITDOS的不足之处是功能结构固定,容忍入侵方法除了有限几种几乎不可更改,并且由于把一部分容忍入侵功能放在了客户端导致整个系统的安全性降低,也使得ITDOS在使用上存在着一定的局限性。ICM是为了补偿COTS中间件的容忍入侵特性而引入到COTS架构中的一种新的组件。采用的技术主要有FRS(Fragmentation-Redundancy-Scattering,分割-冗余-分散)以及门限密码方案,为了实现与COTS中间件以及高层应用之间的交互,ICM提供了高层API与低层API,同时还定义了入侵触发器以及知识库用于各种情况下的入侵行为的识别,该结构通过拦截器向系统中加入容忍入侵服务功能,而设计的调度程序则用来具体实现容忍入侵的功能调用。但是由于容忍入侵功能部分与COTS中间件其它部分在结构上存在紧密耦合关系使得容忍入侵功能的加入有些呆板且不具集成性,如果要更改系统的容忍入侵功能就必须重新修改拦截器。Michael G. Merideth,ArunIyengar,Thomas Mikalsen,Stefan Tai,Isabelle Rouvellou,Priya Narasimhan,Thema:Byzantine-Fault-Tolerant Middleware for Web-Service Applications,Proceedings of the24th IEEE Symposium on Reliable Distributed Systems(SRDS′05),p.131-142,October26-28,2005中报道了Carnegie Mellon的研究人员在美国军方资助下开发的一种基于WEB技术的容忍入侵中间件-Thema,Thema由客户端Library(Thema-C2RS)、BFT服务Library(Thema-RS)和外部服务Library(Thema-US)三个部分构成,其中每一部分通过SOAP协议进行通信,C2RS、RS以及US主要用于请求响应信息的捆绑,BFT服务器则用于执行拜占庭一致性协商,Thema通过执行拜占庭一致性协商来增强Web服务的可生存性,Thema的不足和ITDOS有些相似,在实现容忍入侵功能时也需要客户端参与。此外,还有一些容忍入侵中间件方面的学术论文,但这些已有技术基本都是对相关概念的阐述或展望,没有实际的系统设计及开发细节。

发明的内容

为克服上述已有技术的不足,本发明的目的之一是提供一种基于J2EE中间件规范的容忍入侵应用服务器,使得容忍入侵功能能够无缝地嵌入到现有J2EE应用服务器中;目的之二是提供一种基于J2EE中间件规范的容忍入侵方法,使得在即使部分应用服务器遭受入侵或失效时,仍能继续为合法用户提供正常的或是降级的服务,以保证服务的可生存性。

本发明的目的是这样实现的:

一、容忍入侵应用服务器

本发明的容忍入侵应用服务器是构建在J2EE中间件规范的基础上,包括:容忍入侵扩展集成框架、容忍入侵策略逻辑组件、安全群组通信管理器、安全群组通信系统及J2EE应用服务器基础平台,该容忍入侵策略逻辑组件与容忍入侵扩展集成框架采用松散耦合,两者之间使用API接口完成交互,并通过J2EE应用服务器内置的拦截器实现对J2EE应用服务器基础平台容忍入侵功能的透明扩展;该容忍入侵策略逻辑组件与安全群组通信管理器通过API接口进行交互;安全群组通信系统工作在J2EE应用服务器基础平台的组通信层,并通过安全群组通信管理器分别与J2EE应用服务器基础平台和容忍入侵策略逻辑组件进行交互,实现安全群组通信和群组成员管理。

所述的容忍入侵扩展集成框架采用分层的结构,上层是容忍入侵管理者接口层,底层是容忍入侵服务提供者接口层,该容忍入侵管理者接口层将容忍入侵策略逻辑组件注册为容忍入侵服务提供者,同时通过其接口向应用服务器拦截器提供容忍入侵服务的查询及调用功能,该容忍入侵服务提供者接口层向容忍入侵管理者接口层提供具体的容忍入侵功能,实现与容忍入侵策略逻辑组件的交互。

所述的容忍入侵策略逻辑组件包括:

请求过滤器,用于阻止前端客户向应用服务器端的非法调用请求,该请求过滤器的输出作为复制管理器的输入;

复制管理器,用于对前端客户的合法请求进行复制,并转发给组内可服务的应用服务器执行,可服务的应用服务器成员信息由安全群组通信系统及表决器提供;

表决器,用于从输入的多个请求处理结果中协商选出一个或多个作为正确的输出,并将各应用服务器对请求的处理情况反馈回复制管理器及重构与恢复管理器;

负载均衡管理器,根据预定的负载阀值对应用服务器集群进行负载的均衡分配;

重构与恢复管理器,根据表决器提供的应用服务器的故障信息,恢复与更新故障部件到当前正确状态;

主席选举管理器,用于在应用服务器群组中协商随机产生主应用服务器,并将选举结果通知组内其它成员;

安全审计管理器,用于系统操作日志的记录,提取导致应用服务器发生故障的攻击行为特征,并通过通告此行为特征更新群组内所有成员的攻击特征库。

所述的安全群组通信系统替换原有J2EE应用服务器的群组通信系统,通过内置的认证、密钥协商及访问控制机制,实现群组成员身份的合法性认证、群组成员安全的加入与离开、消息的安全可靠发送与接收,以及处理节点失效和网络分割问题。

所述的安全群组通信管理器由本地服务状态监控和白板两大功能模块组成,本地服务状态监控包括:

过载监控,以固定时间间隔对本地应用服务器的负载情况进行监控,如果本地服务器负载超过设定阀值,将触发应用服务器集群内各成员负载均衡管理器工作;

日志监控,用于对群组内各成员服务器的日志记录进行监控,即以固定时间间隔将本地日志记录发送到主应用服务器的表决器进行表决,并通过表决器的表决结果发现异常的日志记录,目的是发现内部人员对应用服务器的日志进行篡改或破坏行为;通过日志监控来实时更新各应用服务器的服务状态表,主应用服务器以此确定哪些应用服务器处于可服务状态,哪些应用服务器处于不可服务状态如屏蔽状态。

白板,包括发送缓冲器及接收缓冲器,发送缓冲器用于接收本地应用服务器要发送的消息并将其发送到群组中,接受缓冲器用于接收群组内其它应用服务器成员发送的消息,并将其提交给目的组件。

二、容忍入侵方法

本发明的容忍入侵方法,包括如下过程:

1.将多个基于J2EE中间件规范的容忍入侵应用服务器组成容忍入侵服务器集群,各容忍入侵应用服务器作为集群内的组成员;

2.集群内的各组成员的主席选举管理器依据安全群组通信系统提供的在线成员信息,在集群中协商产生主应用服务器;

3.新产生的主应用服务器向集群中的其它组成员即从应用服务器,发送主席通告消息,告知所有从应用服务器当前的主席名称;

4.主应用服务器对来自客户端的请求进行过滤,对非法、无效请求进行阻止,对合法请求进行复制并转发给各个从应用服务器处理;

5.从应用服务器将请求处理结果发送到主应用服务器的表决器处进行表决,将表决出的正确结果反馈回客户端,对于出现异常处理结果的应用服务将其视为故障服务器,表决器将此部分信息在集群中进行异常通告;

6.从应用服务器对接收到的异常通告按照两种方式处理:当通告中包含大多数从应用服务器时,表明主应用服务器自身可能发生异常,将隔离当前主应用服务器并触发新一轮的主席选举;当通告中包含的从应用服务器数目不超过大多数时,各被通告的从应用服务器将通过安全群组通信系统的群组成员管理机制将本机从集群中隔离,并触发自身的重构与恢复管理器进行恢复,使其重新加入到集群中。

上述容忍入侵的方法,其中所述的主应用服务器对来自客户端的请求进行过滤,按如下过程进行:

(1)主应用服务器内置的安全机制对来自客户端的请求进行验证,并将通过验证的请求送达拦截器,由该拦截器转发给请求过滤器;

(2)请求过滤器根据过滤配置表及攻击特征库对来自客户端的非法请求进行阻止,并将合法的请求转发给主应用服务器的复制管理器进行复制,并发送到安全群组通信管理器的发送缓冲器,由该发送缓冲器通过安全群组通信系统发送到其它从应用服务器中

 本发明具有如下优点:

(1)实现了对J2EE应用服务器容忍入侵功能的透明扩展。

本发明由于容忍入侵扩展集成框架及容忍入侵策略逻辑组件是通过J2EE应用服务器内置拦截器机制实现对J2EE应用服务器的容忍入侵功能的扩展,因而无需改变J2EE应用服务器原有的结构,既可保证J2EE应用服务器容忍入侵功能的透明加入和稳定运行,又不影响原有应用服务器的功能。

(2)实现了容忍入侵功能的可集成性、可插拔性、可扩展性。

本发明由于采用将容忍入侵扩展集成框架通过应用服务器的配置文件实现自定义的容忍入侵机制,实现了容忍入侵功能的可集成性与可扩展性,将自定义的容忍入侵机制在应用服务器中注册为服务,并通过应用服务器系统的JNDI查询机制实现拦截器与容忍入侵功能服务的动态关联,故可对容忍入侵服务功能进行加载和卸载,实现自定义容忍入侵机制的可插拔性。

(3)通过一次安装就可实现容忍入侵策略逻辑组件的永久运行。

本发明由于将容忍入侵扩展集成框架与容忍入侵策略逻辑组件保持松散耦合关系,大大简化了容忍入侵策略逻辑组件的开发过程与复杂度,而且可实现容忍入侵扩展集成框架只要一次安装就可以保持容忍入侵策略逻辑组件永久运行,而且可随时修改或更换容忍入侵策略逻辑组件。

(4)兼有J2EE企业计算与容忍入侵功能。

本发明由于采用直接在J2EE应用服务器内部实现容忍入侵功能,使得J2EE应用服务器不仅具备J2EE企业计算而且具备应用服务的容忍入侵功能。

(5)结构简单,维护方便,成体低廉。

本发明与其它类似的容忍入侵系统设计方案相比,由于没有单独设计容忍入侵代理,而是将所有代理功能包括前端客户请求的拦截、复制及转发都由主应用服务器完成,且主应用服务器与其它从应用服务器在结构上相同可以互换,因而极大简化了整个应用服务器集群的结构复杂性,维护也相对方便;同时由于在应用服务器基础架构之上通过拦截器实现容忍入侵功能的透明扩展,与其它需要在操作系统级或底层通信级单独实现容忍入侵功能类似方案相比,极大地减少了容忍入侵J2EE应用服务器的开发使用成本。

附图说明

图1为本发明应用服务器结构示意图;

图2为扩展前、后的J2EE应用服务器结构比较示意图;

图3为本发明容忍入侵扩展集成框架示意图;

图4为本发明容忍入侵策略逻辑组件中的请求过滤器结构示意图;

图5为本发明容忍入侵策略逻辑组件中的重构与恢复管理器结构示意图;

图6为本发明容忍入侵策略逻辑组件中的复制管理器结构示意图;

图7为本发明容忍入侵策略逻辑组件中的安全审计结构示意图;

图8为本发明安全群组通信管理器示意图;

图9为本发明容忍入侵方法示意图;

图10为本发明容忍入侵数据流程示意图。

具体实施方式

一.设计思路

如背景技术中所述,已有的J2EE应用服务器存在如下不足:

1.虽然J2EE应用服务器具备认证与授权两大安全服务功能,但这种安全服务功能仅保证单台应用服务器不被非授权用户访问,而不能实现整个应用服务器集群的容忍入侵。当一台服务器出现故障时,应用服务器的失效后援机制通常仅将客户的请求转移到下一台正常的服务器中,并由该台应用服务器继续向客户提供服务。因此现有J2EE应用服务器缺乏整体的联动的自适应的故障容忍机制。

2.现有J2EE应用服务器内置的群组通信系统在处理网络分割、节点失效时存在偏差;由于在群组通信层缺乏相应的安全机制,因此不能保证群组内消息的完整性、机密性,以及组成员的安全加入及离开,也不能阻止非法用户对组内成员的访问。

为了解决上述问题,本发明利用现有的容忍入侵技术对J2EE应用服务器进行容忍入侵功能的扩展,使之具备自适应的容忍入侵服务功能,具体如下:

针对问题一,在J2EE应用服务器内部,由于现有J2EE应用服务器的拦截器结构有利于向应用服务器中引入第三方服务功能而不影响J2EE应用服务器本身的服务,因此本发明可基于此种机制将容忍入侵服务功能透明加入到J2EE应用服务器中使之成为具有容忍入侵的J2EE应用服务器。同时为了使发明的容忍入侵J2EE应用服务器具备容忍入侵功能的可扩展性、可集成性及可插拔性功能特点,在J2EE应用服务器系统内部设计:容忍入侵扩展集成框架、容忍入侵策略逻辑组件及安全群组通信管理器三个部件。安全群组通信管理器负责容忍入侵策略逻辑组件与底层群组通信系统的交互,完成本地应用服务器过载监控与日志监控;容忍入侵扩展集成框架主要实现底层的一些通用服务,如与应用服务器其它部件的交互并提供统一标准的容忍入侵功能调用接口;容忍入侵策略逻辑组件实现具体的容忍入侵机制包括:容忍入侵的触发机制及容忍方法。利用J2EE应用服务器的服务配置文件用户可以实现自定义集成设计的容忍入侵策略逻辑组件,运行时容忍入侵扩展集成框架将这些组件在应用服务器中注册为服务,并通过J2EE应用服务器的JNDI查询机制实现应用服务器拦截器与容忍入侵服务功能的动态关联,因此用户可以方便地对容忍入侵服务功能进行加载和卸载,实现自定义容忍入侵服务的可插拔性;容忍入侵扩展集成框架的设计则进一步保证了容忍入侵机制的可集成性和可扩展性。

针对问题二,在J2EE应用服务器的组通信层即群组通信系统所在层,使用安全的群组通信系统替换J2EE应用服务器原有的群组通信系统。

现有的商用J2EE应用服务器集成了群组通信系统如JGroup,但是功能不够强大,如在处理网络分割、节点失效、组成员的安全加入与离开、消息的完整性及机密性保护方面有所欠缺,为此在组通信层重新构建安全的群组通信系统,用以替换J2EE应用服务器原有的群组通信系统。安全群组通信系统通过使用组密钥协商,身份认证、访问控制,组密钥管理来保证应用服务器之间的安全可靠有序的消息发送与接收,保证数据的完整性和机密性,提供用户身份认证、信息源认证及访问控制等服务。目前关于这方面的理论研究成果很丰富,并且已经有商业或开源的软件产品。如运行于Cornell的Horus/Ensembles系统,在这个系统里,数据的机密性通过共享组密钥来实现,共享组密钥由组密钥分发协议产生,组成员的身份鉴别通过使用流行的PGP(PrettyGood Privacy,基于RSA公匙加密体系的邮件加密软件)方法来提供。还有如YairAmir等人基于密钥协商开发的Secure Spread 2.1.0系统,该系统最大的特色是同时兼顾了系统的伸缩性与安全性,并且支持多种密钥协商协议。以及林观銮,曹元大,王勇,江宇凌。基于Spread协议的安全群组通信系统架构.计算机工程,2003,29(19):106~108。中结合Spread协议特点的基础上,提出了一个新的可扩展安全群组通信系统的架构,通过认证、密钥协商及访问控制机制实现群组通信的安全可靠通信,与之思想相似的还有Y.Amir,C.Nita-Rotaru,J.Stanton,G.Tsudik.Secure Spread:AnIntegrated Architecture for Secure Group Communication.In IEEE Transactions onDependable and Secure Computing(TDSC),2005,2(3):248~261。这些模型及产品有着广泛的适用性和参考性,尤其是基于Spread构建的安全群组通信系统,由于其本身预留了Java接口可以很方便地应用在J2EE应用服务器中,因此安全群组通信系统的设计在此不作阐述。

二.扩展后的J2EE应用服务器

参见图1,经过扩展后的J2EE应用服务器包括的模块有:容忍入侵扩展集成框架、容忍入侵策略逻辑组件、安全群组通信管理器、安全群组通信系统及J2EE应用服务器基础平台。该容忍入侵策略逻辑组件与容忍入侵扩展集成框架采用松散耦合,两者之间使用API接口完成交互,并通过J2EE应用服务器内置的拦截器实现对J2EE应用服务器基础平台容忍入侵功能的透明扩展;该容忍入侵策略逻辑组件与安全群组通信管理器通过API接口进行交互;安全群组通信系统工作在J2EE应用服务器基础平台的组通信层,并通过安全群组通信管理器分别与J2EE应用服务器基础平台和容忍入侵策略逻辑组件进行交互,实现安全群组通信和群组成员管理。其中,各模块的结构与功能如下:

1.容忍入侵扩展集成框架

参见图3,该容忍入侵扩展集成框架采用分层的结构,上层是容忍入侵管理者接口层,底层是容忍入侵服务提供者接口层。容忍入侵扩展集成框架对外以接口的形式提供容忍入侵服务,对内集成不同的容忍入侵服务提供者所提供的容忍入侵机制;容忍入侵管理者接口层是容忍入侵服务对外的接口,应用服务器的拦截器通过容忍入侵管理者接口层调用容忍入侵服务。该容忍入侵管理者接口层的接口包括:1)Getservicestate接口,提供当前应用服务器内容忍入侵功能服务的状态信息,如主席选举、复制,表决;2)Getfilter接口,提供请求过滤功能;3)Getvoter接口,提供容忍入侵服务的触发功能;4)Gettolservice接口,提供容忍入侵的容忍服务,包括日志记录、重构与恢复,主席选举,安全与审计;5)Regitprovider接口,向容忍入侵扩展集成框架注册一个容忍入侵策略逻辑组件使其成为一个容忍入侵服务;6)Unregitprovider接口,注销一个已有的容忍入侵策略逻辑组件的服务功能。该容忍入侵服务提供者接口层接口包括:1)LeaderElect Provider接口,用于集群服务模式的初始化,包括主席选举以及主席身份通告;2)RequestFilter Provider接口,用于对客户端请求的合法性进行验证;3)Replication Provider接口,完成对请求的复制,并通过安全群组通信系统发送到其它从应用服务器;4)Voting Provider接口,用于表决出正确的响应结果,并将其回送给客户端,根据假设:正确的服务器能够产生正确的响应结果,则表决器同时充当入侵检测器的作用;5)Security Audit Provider接口,用于记录系统操作过程形成日志记录,对非法操作行为抽象出攻击特征信息并保存于攻击特征库中;6)Reconstitute Provider接口,用于根据本地安全审计(Security Audit)记录及收到的响应副本对服务器进行相应的恢复和状态更新,以及屏蔽本地服务器的服务;7)LoadBanlance接口,用于对负载状况进行评估并对应用服务器集群负载实施负载均衡分配。该容忍入侵管理者接口将容忍入侵策略逻辑组件注册为容忍入侵服务提供者,同时通过其接口向应用服务拦截器提供容忍入侵服务的查询及调用功能,该容忍入侵服务提供者接口层向容忍入侵管理者接口层提供具体的容忍入侵功能,实现与容忍入侵策略逻辑组件的交互。

2.容忍入侵策略逻辑组件

该容忍入侵策略逻辑组件,包括:

1)请求过滤器,是应用服务器的内置防火墙,用于阻止前端客户向应用服务器端的非法调用请求,该请求过滤器由过滤器配置表、攻击特征库及一系列的过滤分析器组成,如图4所示。该过滤器配置表,详细规定了过滤分析器相关功能及参数选择,过滤器配置表由用户通过Web页面设置;该过滤分析器,是一些请求过滤分析机制的具体化部件,用于分析前端客户对应用服务器端的调用行为,包括对每个请求的动作或结果做出目前或今后动作的判断,请求过滤分析器对含有恶意及无效的调用实施阻隔;该攻击特征库,向过滤分析器提供已知的攻击行为特征,辅助过滤分析器快速而准确地判定对应用服务器的攻击,阻止恶意及无效的请求。攻击特征库中含有两部分信息:A、一部分事先定义的已知攻击信息;B、应用服务器运行过程中对导致应用服务器产生故障的调用行为进行特征提取而新加入的攻击特征。

2)复制管理器,用于对前端客户的合法请求进行复制并转发给组内可服务的应用服务器,应用服务器成员的状态信息由安全群组通信系统及表决器提供,该复制管理器由复制机、服务状态表及复制品传递单元组成,如图5所示。该复制机包含具体实现合法请求复制的功能逻辑;该服务状态表保存了所有成员的服务状态信息,如可服务或屏蔽信息。各从应用服务器的复制管理器也保存有同主应用服务器一致的服务状态表;这部分信息包括三种:A、新加入的成员,首先接收由主应用服务器传送的正确日志记录,其次根据该日志记录更新其状态到当前最新状态,等到新一轮的日志表决后,才能由主应用服务器将其服务状态标识为可服务;B、故障恢复后的成员,故障服务器在进行重构或恢复后其状态已经得到更新它的服务状态将被更改为可服务,等到新一轮的日志表决后,由主应用服务器将其服务状态标识为可服务;C、正确的组成员,其服务状态是可服务的。该复制品传递单元主要完成所有应用服务器成员服务状态信息的获取,并将请求复制品发送到可服务的应用服务器中,具体是:A、对底层安全群组通信系统提供的在线成员信息及表决器提供的相关信息进行运算,并将运算结果用于更新应用服务器服务状态表;B、将请求复制品传送到安全群组通信管理器并通过安全群组通信系统将其发送到可服务的应用服务器成员中。

3)表决器,用于从输入的多个请求处理结果中协商选出一个或多个作为输出。包括三个部件:表决通告单元、报文摘要单元及表决单元。该表决通告单元用于将表决结果返回客户端或发送到其它组成员中;该报文摘要单元可以使用现有的任何摘要算法,如MD5报文摘要算法或SHA-1安全散列算法或RIPEMD-160报文摘要算法或其它报文摘要算法。该表决单元可以使用现有的任何表决算法,如多数表决算法、复数表决算法、加权平均法、中值法,还有一些混合型表决算法如基于历史信息的多数一致法表决算法、基于自检测的多数一致表决算法等,表决算法的选取依据应用的性质确定,如应用要求实时性比较高并且必须有输出时则可选用基于自检测的多数一致表决算法,如果要求输出结果更为准确并且能提供故障服务器的分布则可选用基于历史信息的多数一致法表决算法。报文摘要算法用于对各个服务器的请求执行结果进行一个摘要统计并将统计值用于表决输入,表决算法则对输入进行一致性协商,并从中选出一个或是多个进行输出,所谓一致性协商就是指对输入的多个请求结果进行内容一致性比对。比对的结果将会产生正确的输出,表决通告单元将该输出返回客户端,并将各服务器的执行情况发送到安全群组通信管理器的发送队列中,通过安全群组通信系统将其发送到在线的应用服务器成员中。

4)负载均衡管理器,用于对应用服务器集群内负载的均衡分配,包括负载均衡算法,该负载均衡算法可以采用任何现有的负载均衡算法,如:轮循、最小连接数和快速响应优先,根据预定的负载阀值通过任何一种负载均衡算法对整个应用服务器集群内进行负载的均衡分配。

5)重构与恢复管理器,根据表决器提供的应用服务器的故障信息,恢复与更新故障部件到当前正确状态;

该重构与恢复管理器由故障服务器屏蔽,重构与恢复,加入组三个功能部件组成,如图6所示。其中屏蔽部件根据表决器提供的故障成员信息执行故障服务器的屏蔽,重构部件用于应用服务器逻辑结构或物理结构的替换,并最终根据安全审计中的日志数据库将状态更新到其它与正确服务器的当前状态相一致。恢复部件用于故障部件的状态更新不牵涉到替换,并最终根据安全审计中的日志数据库将状态更新到与组内其它正确服务器的当前正确状态相同的状态。加入组部件用于将故障恢复后的服务器加入到应用服务器集群中。

6)主席选举管理器,用于在服务器集群中协商随机产生主应用服务器,并将选举结果通知组内其它成员。该主席选举管理器包括主应用服务器的选举算法及主席通告。在应用服务器集群中,每一台服务器都可以成为主应用服务器,任何时候一个活动的主应用服务器失效时,都会由应用服务器集群内所有活动的服务器选举出一个最为强壮的服务器作为当前的主应用服务器。主应用服务器的选举算法可以是任何现有的主应用服务器选举算法,如Bully算法、环算法等。主席通告负责将选举结果发送到安全群组通信管理器继而通过安全群组通信系统通告给组内其它成员。

7)安全审计管理器,用于系统操作日志的记录,提取故障服务器发动的攻击行为特征信息,攻击行为特征通告及攻击特征库的更新。该安全审计管理器,包括日志记录单元,特征提取单元,日志数据库及攻击特征库更新单元,如图7所示。该日志记录单元用于记录系统操作过程;该特征提取单元根据故障服务器的日志记录提取攻击行为的特征;该日志数据库用于存储系统操作日志;该攻击特征库更新单元将提取的攻击行为特征发送到安全群组通信管理器的发送队列中,通过安全群组通信系统将其发送到在线应用服务器成员中,由该在线应用服务器的攻击特征库更新单元对所提取的攻击行为特征进行更新。

所述的请求过滤器为复制管理器提供复制源,即合法请求,复制管理器对合法请求复制后将其传递到组内其它可服务的应用服务器中并被执行,安全群组通信系统及表决器为复制管理器提供可服务的成员服务器信息;表决器将正确的请求处理结果用于输出并把故障服务器的信息反馈回复制管理器及重构与恢复管理器,重构与恢复管理器根据表决器提供的故障服务器信息进行故障部件的状态恢复与更新;安全审计管理器根据表决器提供的故障服务器的日志记录,进行攻击行为特征的提取,并通告其它服务器最终更新群组内所有成员服务器的攻击特征库。

3.安全群组通信管理器

安全群组通信管理器由本地应用服务器状态监控和白板两部分组成,如图8所示。其中:本地应用服务状态监控包括:过载监控,以固定时间间隔对本地服务器的负载情况进行监控,如基于一个阀值的流量监测,如果本地应用服务器负载超过设定阀值,将触发应用服务器集群内负载均衡管理器工作,负载均衡管理器将对应用服务器集群负载进行重新分配,促使集群内各应用服务器的服务状态恢复正常;日志监控,用于对群组内各成员服务器的日志记录进行监控,即以固定时间间隔将本地日志记录发送到主应用服务器的表决器进行表决,并通过表决器的表决结果发现异常的服务器日志记录,通过此种方式发现来自内部人员的破坏行为;

白板,包括发送缓冲器及接受缓冲器,发送缓冲器用于接收本地应用服务器要发送的消息并将其发送到群组中,接收缓冲器用于接收组内消息,并将其提交给目的组件,实现群组成员之间的协调与管理。白板中记录了当前在线的组成员信息、异常服务事件、新成员的加入、组成员的离开、主-备份服务标志。

4.安全群组通信系统

安全群组通信系统采用已有的Secure Spread 2.1.0安全群组通信系统,替换原有J2EE应用服务器的群组通信系统,Spread 2.1.0内部设有通用密钥协商算法和加密算法,通过认证、密钥协商及访问控制机制,实现群组成员身份的合法性认证、成员安全的加入与离开,以及组内安全可靠有序的消息发送与接收,保证数据的完整性和机密性,以及处理节点失效和网络分割问题。

三.扩展后的J2EE应用服务器与扩展前的J2EE应用服务器结构比较

参照图2.A,扩展前的J2EE应用服务器包括Web服务器、Web容器、EJB容器三大组件组成,提供的服务有名字服务、事务服务、安全服务,消息连接服务、数据库连接池服务、邮件服务、连接器服务、管理服务及部署服务。

参照图2.B,扩展后的J2EE应用服务器包括两大部分:一部分是扩展前已有的Web服务器、Web容器、EJB容器三大组件,及原有提供的服务名字服务、事务服务、安全服务,消息连接服务、数据库连接池服务、邮件服务、连接器服务、管理服务、部署服务;另一部分包括容忍入侵扩展集成框架、容忍入侵策略逻辑组件、安全群组通信管理器、安全群组通信系统。

与扩展前的J2EE应用服务器结构的比较,扩展后的J2EE应用服务器不仅具备已有J2EE应用服务所具有的企业计算与安全服务功能,而且更具备容忍入侵的功能,并且容忍入侵的功能具有整体的、联动的、自适应的特性。

参见图9,利用多台扩展后的基于J2EE规范的自适应容忍入侵应用服务器组成集群以集群协作作为容错手段,并以半主动复制方式对外提供服务,此时集群中只有一个主应用服务器,其余为从应用服务器,主应用服务器由主席选举管理器在各群组成员服务器中协商产生,主应用服务器与从应用服务器均处理来自客户端的请求,但是只有主应用服务器向客户端回送响应结果,从应用服务器只是将响应结果通过安全群组通信系统发送到主应用服务器的表决器,响应结果的正确性由主应用服务器的表决器保证,主从副本的一致性,消息传递的原子性、全序性及安全性由安全群组通信系统保证。

四.容忍入侵的方法

参见图10,利用本发明构建的容忍入侵应用服务器进行容忍入侵的方法,包括如下过程:

1.集群初始化。

将多个基于J2EE中间件规范的容忍入侵应用服务器组成容忍入侵应用服务器集群,各容忍入侵应用服务器作为集群内的组成员;

2.选举产生主、从应用服务器。

其具体过程是:

(1)各成员的主席选举管理器根据安全群组通信系统提供的在线成员服务器信息选举产生主应用服务器图中标示为S1,其余为从应用服务器图中标示为S2…Sn

(2)S1向集群中S2…Sn,发送主席通告消息,告知所有从应用服务器当前的主席名称;图中虚线代表成员之间的通信是以群组通信方式进行。

3.主应用服务器拦截客户端请求,过滤并将合法请求发送到该应用服务器的复制管理器。

其具体过程是:

(1)主应用服务器原有安全服务功能对来自客户端的请求进行验证,并将通过验证的请求送达主应用服务器拦截器,并由该拦截器转发给主应用服务器的请求过滤器;

(2)主应用服务器的请求过滤器根据该管理器的攻击特征库对拦截器送过来的请求进行验证,非法请求将被阻止,合法请求转发给主应用服务器的复制管理器。

4.主应用服务器复制并转发合法请求。

其具体过程是:

(1)主应用服务器的复制管理器将该应用服务器的请求过滤器传送过来的合法请求进行复制;

(2)复制管理器根据安全群组通信系统提供的在线成员信息与表决器提供的相关信息更新服务状态表,并通过安全群组通信系统更新其它从应用服务器的服务状态表;

(3)该复制管理器通过安全群组通信系统将请求复制品发送到服务状态表中规定的可服务的从应用服务器中;

(4)主、从应用服务器处理该请求。

5.各应用服务器的安全审计管理器记录该应用服务器的系统操作日志,并将记录保存在日志数据库中。

6.主、从应用服务器将请求的处理结果汇集到主应用服务器表决器中,并由主应用服务器的表决器对请求的处理结果进行表决处理。

其具体过程是:

(1)各应用服务器将请求处理结果通过安全群组通信系统发送到主应用服务器的表决器中,在规定时间内未发送请求处理结果的应用服务器被视为故障应用服务器;

(2)主应用服务器的表决器将请求处理结果经过摘要算法处理后进行表决,表决器的

输出作为正确结果反馈回客户端;

(3)请求处理结果与主应用服务器的输出不一致的应用服务器视为故障应用服务器,主应用服务器的表决器将各成员服务器的处理情况通过安全群组通信系统发送到其它从应用服务器表决器中。

7.故障应用服务器的表决器触发该应用服务器进行重构与恢复操作。

其具体过程是:

(1)故障应用服务器的重构与恢复管理器屏蔽本机服务;

(2)如果是主应用服务器发生故障则集群内任何最先获得此信息的正确应用服务器将通过其主席管理器触发新一轮的主席选举;

(3)故障应用服务器的安全审计管理器根据接收到的当前最新的正确应用服务器的日志记录更新本地日志数据库,使之与正确的应用服务器的日志记录保持一致;

(4)故障应用服务器的重构与恢复管理器根据日志记录重构或恢复本地应用服务器受损部件;

(5)故障应用服务器恢复正常,通过日志记录监控机制改写当前主应用服务器复制管理器的服务状态表,重新加入到组中。

参见图10,通过日志监控容忍内部人员对应用服务器的日志进行篡改或破坏行为的方法包括如下过程:通过日志监控来实时更新服务状态表,以此确定哪些应用服务器处于可服务状态,哪些应用服务器处于不可服务状态如屏蔽状态。具体过程如下:

1.各从应用服务器的日志监控以固定时间间隔向主应用服务器的表决器传递日志记录,主应用服务器的表决器如果收到符合门限数量的日志记录量时将进行下一步的操作,否则将继续等待;

2.主应用服务器的表决器对收集的日志记录经过摘要算法的处理后执行日志记录表决,并将各成员服务器的日志情况及正确的日志记录传回各从应用服务器,各从应用服务器的表决器根据主应用服务器传回的信息将产生错误日志记录的应用服务器状态恢复到集群当前最新正确状态;

3.主应用服务器表决器根据各从应用服务器的日志记录确定其是否是当前集群最新正确状态,如果是则更该主应用服务器复制管理器内的服务状态表,将这些应用服务器标示为可服务状态;

4.主应用服务器的复制管理器将该服务器的服务状态表通过安全群组通信系统传送到所有在线从应用服务器中,各从应用服务器复制管理器收到此信息后对自身的服务状态表进行更新,从而与主应用服务器的服务状态表保持一致。

参见图10,通过过载监控进行集群负载的均衡分配包括如下过程:

1.各应用服务器的过载监控以固定时间间隔对本服务器的负载情况进行监控;

2.当过载监控发现本地应用服务器的负载超过预订门限值时,按照预定的负载均衡算法进行应用服务器集群内负载的重新分配,最终使集群服务负载恢复正常。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号