基于正常模型的人工免疫系统的制作方法

文档序号:6559643阅读:222来源:国知局
专利名称:基于正常模型的人工免疫系统的制作方法
技术领域
本发明涉及一种基于正常模型的人工免疫系统,是一种对企业计算机系统的各个功能子系统进行异常检测、病毒预防、非法入侵防御、故障诊断、异常系统修复的人工免疫系统。
背景技术
人工免疫系统由人类的自然免疫系统灵感启发而来,其生物医学理论基础是克隆选择理论、阴性/阳性选择理论、免疫耐受学说、抗体分子结构学说等。自然免疫系统的必要生物基础是人体能根据DNA特征区分外来对象是自体,还是异体。但是,传统的人工免疫系统仅仅模拟克隆选择机制、阴性/阳性选择机制、免疫学习机制等,没有建立系统的正常模型,以严格定义人工免疫系统的自体。也正因为系统的正常模型没有建立,系统异常的检测率就受异常知识限制,其值通常不可能达到100%。正常模型的构建为自体检测提供了严格的依据,其自体检测率可达100%。根据自体和异体之间关系,异体检测率也可达100%。
传统的异常检测技术是根据异常的特征信息直接检测系统中的异常,这种技术通过智能方法可以提高其检测率为98%左右,但是从理论上不可能达到100%的检测率,因为未知的异常总是变化莫测。这样,也降低了下一步的异常识别率、异常消除率以及系统修复率。因此,基于异常特征的异常检测技术存在许多问题。
传统上,未知异常的识别都是根据经验半自动识别,智能技术采用率不高,对未知异常的识别能力十分有限。并且,未知异常的二次识别效率并不比第一次识别效率高多少,未知异常的识别过程存在效率瓶颈问题。随着未知异常的迅速增加,系统的异常识别能力可能会出现崩溃的危机。因此,受自然免疫系统优良的异常识别和负载平衡能力启发,很需要设计出一种人工免疫系统。
由于所建立的人工免疫系统是有正常模型的,系统的正常组件表示在自体数据库中,因此,异常检测建立在对自体数据库的查询基础上。因为自体都是已知的,所以自体检测是简便的,且检测率高达100%,基于自体数据库的异常检测也是简便的,且检测率也能高达100%。系统的异常组件或外来入侵目标的识别信息存储在异体数据库中,已知异体的识别建立在对异体数据库的查询基础上,未知异体的识别建立在机器学习基础上。
基于正常模型的人工免疫系统由自然免疫系统灵感启发而来的,是一种对计算机信息系统的异常进行检测、识别、消除和系统修复的系统,它具有企业应用系统的正常模型和三层结构的免疫计算系统。基于正常模型的人工免疫系统研究得到了国家自然科学基金项目(60404021)的部分资助。为了描述系统的正常状态,正常模型采用时空属性表示法,包括文件的最后修改时间属性和绝对路径属性。该三层结构免疫计算系统按照固有免疫和适应性免疫两种类型分别处理已知的异体和未知的异体。
现在自动的系统修复技术在企业领域应用很少,手工的系统修复往往要消耗人力资源,带来一些人为错误,系统修复效率和精度不高,对于危险环境和无人环境的企业应用系统无法适应。因此,迫切需要提出一种新的系统恢复技术。

发明内容
本发明的目的在于针对现有技术的上述不足,提供一种新的基于正常模型的人工免疫系统,以解决现有技术中异常检测率不够高、未知异常识别能力不够强的问题,以及现有系统修复技术存在的自动化问题,为计算机应用系统的异常检测、识别、消除和系统修复提供新的途径。
为实现这样的目的,本发明提出的基于正常模型的人工免疫系统不同于传统的人工免疫系统。该系统具有一个正常模型及其对应的自体数据库,这种正常模型为了对系统正常状态进行描述,使用了正常系统中所有正常组件的时空属性,包括正常文件的最后修改时间和绝对路径名,其特征在于计算机系统的正常模型唯一确定系统的正常状态,通过正常模型及其自体数据库进行自体检测和异体检测,达到100%检测率。这种人工免疫系统建立了系统的正常模型,可实现100%的异常检测率;也不同于传统的系统恢复技术,其系统修复建立在智能的人工免疫系统基础上,其自动化程度更高;通过神经网络或示例学习,可实现对未知异常的学习。
此外,该人工免疫系统具有固有免疫计算层、适应性免疫计算层和并行计算层等。


图1给出了人工免疫系统的正常模型示意图。
图2给出了人工免疫系统的三层结构。
图3给出了BP神经网络的示例。
具体实施例方式以一个Web系统为例,本发明按照以下步骤构建基于正常模型的人工免疫系统。
1、构建Web系统的正常模型在构建Web系统的正常模型时,首先要对系统从结构上进行正确划分,即将系统划分为若干个功能组件,其中一些组件对实现系统的整体功能是必要的。此Web系统由100个HTML网页文件和一些目录组成,主要完成某企业信息的概要介绍功能。Web系统的正常状态由其所有HTML网页文件的正常状态唯一确定,也就是说只有当其全部文件的状态都是正常的时,整个Web系统的状态才是正常的;只要有一个文件的状态是异常的,整个Web系统的状态就是异常的。
一般的,Web系统的正常模型可描述为N(S)=Πi=1100N(ci)]]>=Πi=1100N(<pi,t>)]]>式中,S表示Web系统N(·)表示正常函数, ci表示Web系统S的HTML网页文件之一100是Web系统S的HTML文件总数pi表示文件ci的空间属性,即绝对路径名t表示时间属性<pi,ti>表示文件ci的时空属性二元组从上式可以看出,Web系统S的正常状态N(S)与其每个文件ci的正常状态N(ci)都有关系,而且由其每个文件的绝对路径名pi和共同的时间属性t唯一确定。这种唯一确定性是可以证明的,根据这种特性可以将每个文件的时空属性封装为一个对象,作为记录存储在自体数据库中,以便于免疫计算机制对其进行存取操作,如图1所示。这里,自体数据库采用Oracle等关系数据库管理系统。
当人工免疫系统的状态正常时,通过编程方法提取人工免疫系统中各个正常组件的空间属性和时间属性,并将这些时空属性记录存储在自体数据库中。人工免疫系统在应用服务器上运行,自体数据库和异体数据库存储在数据库服务器上。编程方法包括Java语言的File类中文件绝对路径的读取方法和文件最后修改时间的读取方法。在软件系统中,其组件体现为一些文件。在计算机世界中一个组件的空间属性是唯一的,包括文件的绝对路径;其时间属性也是不可以更改的,因为时间不可倒流。由组件的时空属性构成的记录实际上是一种免疫对象,在人工免疫系统的免疫逻辑中对这些对象进行存取和计算根据自体记录检测系统中的某个目标是否为自体。
2、构建固有免疫计算层人工免疫系统的三层结构包括固有免疫计算层、适应性免疫计算层和并行免疫计算层,如图2所示。固有免疫计算层的建立是人工免疫系统设计的基础,是三层免疫计算模型的第一层。适应性免疫计算层比固有免疫计算层智能更高,并行免疫计算层比固有免疫计算层和适应性免疫计算层计算速度更快。异体数据库用来表示和存储所有已知异体的特征信息,包括异体的类型、异体的激活方式、异体的传播方式和异体的破坏方式等。建立人工免疫系统时,根据已积累的异体经验在异体数据库中添加了许多已知异体的记录,这些记录就构成了固有免疫计算层中异体识别的基础。
固有免疫计算层主要负责自体/异体的完全检测和已知异体的识别,固有免疫计算层由自体数据库、基于数据库查询的检测器、异体数据库和基于数据库查询的识别器组成。其中,异体数据库是固有免疫计算层和适应性免疫计算层共享使用的,采用Oracle数据库管理系统。异体数据库存储和异体有关的特征信息,包括病毒的字符串特征、病毒的传播特征等。
固有免疫计算层读取待检测文件的时空属性,即绝对路径名和最后修改时间,将这些属性值与自体数据库中的记录相匹配,根据匹配的结果查询出此文件的时空属性是否在自体数据库中。如果此文件的时空属性在自体数据库中,那么此文件是自体。否则,此文件是异体。
基于Web系统的正常模型,固有免疫计算层检测出所有的自体,而Web系统中的其余目标就判定为异体。对于这些异体,固有免疫计算层访问异体数据库,查询有关这些异体的特征信息。如果在异体数据库中查到了与待查异体的特征相匹配的记录,就判定此待查异体为一个已知的异体。如果在异体数据库中找不到任何与某个待查异体的特征相匹配的记录,就判定此待查异体为未知的,就要送到适应性免疫计算层继续识别。这里,数据库查询建立在Oracle等关系数据库的Select查询子句基础上。
3、构建适应性免疫计算层适应性免疫计算层是人工免疫系统的智能中心,具有一定的学习能力,建立在神经网络、示例学习等机器学习机制的基础上。适应性免疫计算层负责识别、学习和记忆未知的异体,并消除已识别的异体,还要进行最大限度的系统修复,如图2所示。适应性免疫计算层由未知异体的学习器、未知异体的记忆器、共享的异体数据库、异体消除器和系统修复器组成。
对未知异体的学习,适应性免疫计算层采用BP神经网络、RBF神经网络或者示例学习机制。用于未知异体学习的BP神经网络分为三层,如图3所示。其中,输入层表示异体的关键特征,包括异体的文件名、编码语言、传播方式、引擎、特征串和破坏方式等;隐藏层表示已知异体的类型;输出层知异体的消除方案。示例学习机制建立在所有已知异体的特征空间基础上,寻找未知异体在此特征空间中最相近的已知异体。未知异体学习器的输入是未知异体的特征信息,其输出是与未知异体最相似的已知异体及其相似度。
上述BP神经网络使用以下计算公式进行学习,存储学习的结果,从而将未知异体转换为已知异体。
P=Σy(Σz(dyz-Oyz)2),]]>ΔWi→j=rOj(1-Oj)βjβj=ΣkWj→kOk(1-Ok)βk,]]>εz=dz-Oz式中,P表示此BP神经网络的性能指标;y表示此BP神经网络的训练输入;z表示输出节点;dyz表示训练输入y在节点z的期望输出;dj表示第j个节点的期望输出;Oyz表示训练输入y在节点z的实际输出;Oj表示第j个节点的实际输出;Wi→j表示连接第i层节点和第j层节点的权值;ΔWi→j表示其权值的变化;r表示学习比率;βj表示第j个节点的值;εz表示输出节点的误差。
BP神经网络的作用是识别未知的异体,其方法就是该神经网络的学习。未知异体记忆器将未知异体的学习结果构建成新的已知异体记录,并将此记录存储到异体数据库中,编制其相应的查询索引。
异体消除器包括操作系统的删除命令、进程杀死命令、邮件删除命令以及这些操作命令的组合批处理命令,异体消除器每次消除一个异体都会写入日志记录。
使用所述异体消除器消除异体前,异体区分器根据所述正常模型及自体数据库将所述计算机系统处于异常状态的功能组件与其它外来异体区分开来,区分的标准是检查异体的绝对路径名是否与自体数据库的一个记录属性相匹配。如果匹配,就判定该异体为处于异常状态的功能组件。并且,将这些异常功能组件的绝对路径名存储到临时数据库中,以供系统恢复时调用,来找到所述计算机系统中要恢复的功能组件。
系统修复器在应用系统的正常模型、安全备份系统和异体消除日志记录的基础上工作,根据异常组件的消除记录高精度地修复此组件,从应用系统的安全备份系统中将其备份组件替换已消除的组件,或者使用硬件修复工具修复此组件。根据正常模型的唯一确定性,只要已消除的组件可以修复,就能将所有受损的组件全部修复成功,这样应用系统就能从整体上完全修复。
4、构建并行免疫计算层并行免疫计算层是一个并行计算机,属于硬件设备,如图2所示。这个并行计算机由易于升级的模块组件组成,是一个多星拓扑网络,所有节点和服务器用快速以太网或兆比特交换机连接起来。每个节点由多个微处理机、1GB内存、网卡、数GB的硬盘和支持对称多处理机的带总线主板构成。该并行计算机的主要组件包括前端节点、服务节点、计算节点、交换机和并行输入/输出子系统。前端节点为用户使用和控制整个并行计算机提供界面,来编译和调试程序,以及提交和监视任务。服务节点存放网络文件系统和认证后台程序。计算节点遵循服务节点的指令,来执行最终的数字分解。并行输入/输出系统通过隧道对处理机群开放,提供大量的存储和存储空间与计算节点之间高速的数据访问。需要开发并行软件来连接各种并行计算组件,并达到最优的系统性能。最基本的并行软件包括三大部分操作系统、通信库和任务控制系统。
当异体数量超过单个计算机能承受的计算量时,并行免疫计算层用来提供并行计算,将总的计算量均衡地分配到各个计算机上,以缓解单个计算机的计算负荷,提高整个人工免疫计算系统的效率和可靠性。因为并行免疫计算层将单个计算机的负荷控制在正常的范围内,这样就增强了各个计算机上免疫计算的可靠性。因此,并行免疫计算层为固有免疫计算层和适应性免疫计算层提供了强大的计算基础组织,以满足大量计算的需要。
上述仅为一个实例,这个实例所采用的正常模型和人工免疫系统可以推广到其他计算机系统,用来实现异常检测、病毒预防、非法入侵防御、故障诊断和异常系统修复。
权利要求
1.一种用于企业计算机系统的基于正常模型的人工免疫系统,用于对企业计算机系统进行异常检测、病毒预防、非法入侵防御、故障诊断、异常系统修复,所述计算机系统划分为若干个功能组件,由每个组件的时空属性唯一确定该组件的状态,由所有组件的正常状态唯一确定所述计算机系统的正常状态,基于所述计算机系统的正常状态建立其正常模型及与该正常模型对应的自体数据库,该自体数据库存储所述计算机系统中所有处于正常状态的功能组件的时空属性,包括最后修改时间和绝对路径名;所述人工免疫系统包括固有免疫计算层,用于根据所述正常模型和自体数据库检测自体和异体,并识别已知的异体;具有学习能力的适应性免疫计算层,包括神经网络或示例学习机制,用于识别、学习和记忆未知的异体,消除所有异体,并修复受损的所述计算机系统;异体数据库,用于存储已知异体的特征信息,固有免疫计算层和适应性免疫计算层都使用异体数据库;所述人工免疫系统的特征在于所述计算机系统的正常模型唯一确定系统的正常状态,通过正常模型及自体数据库进行自体检测和异体检测,达到100%检测率。
2.根据权利要求1所述的人工免疫系统,其特征在于所述固有免疫计算层包括自体数据库、基于自体数据库查询的自体/异体检测器、异体数据库和基于异体数据库查询的已知异体识别器。
3.根据权利要求1或2所述的人工免疫系统,其特征在于所述适应性免疫计算层还包括一个未知异体记忆器,用于将已学习的未知异体特征存储到异体数据库中,使之成为新的已知异体。
4.根据权利要求1或2所述的人工免疫系统,其特征在于所述适应性免疫计算层还包括一个异体消除器,用于消除已识别的异常文件、异常进程、异常邮件等异体。
5.根据权利要求1或2所述的人工免疫系统,其特征在于所述适应性免疫计算层还包括一个异体区分器,基于所述正常模型及自体数据库将所述计算机系统中处于异常状态的功能组件与其它外来异体区分开来,并将这些异常功能组件的绝对路径名存储到临时数据库中,以供系统恢复时调用。
6.根据权利要求1或2所述的人工免疫系统,其特征在于所述适应性免疫计算层还包括一个系统恢复器,基于所述正常模型和所述临时数据库根据异体的识别信息修复系统的受损部分。
7.根据权利要求1或2所述的人工免疫系统,其特征在于还设置有一个并行免疫计算层,用来将单个计算机上的计算量分配到多个计算机上,为固有免疫计算层和适应性免疫计算层提供强大的计算基础组织,提高整个人工免疫系统的计算效率和可靠性。
8.根据权利要求1或2所述的人工免疫系统,其特征在于设置有基于Java的网络接口和可视化数据显示部分,用于Web信息系统的安全保护。
全文摘要
一种基于系统正常模型的人工免疫系统,该系统可用硬件和软件实现,该系统由固有免疫计算层、适应性免疫计算层和并行免疫计算层构成。固有免疫计算层利用系统的正常模型建立自体数据库,根据自体数据库的检索检测全部自体。该正常模型由正常系统中所有正常组件的时空属性唯一确定。适应性免疫计算层利用神经网络或示例学习机制识别未知异体,并将识别结果记忆到异体数据库中,以供固有免疫计算层识别已知异体。适应性免疫计算层还消除异体和修复系统。并行免疫计算层提供并行计算机资源,在负载过大时平衡各个计算机上的负载。
文档编号G06F11/00GK1866267SQ20061009297
公开日2006年11月22日 申请日期2006年6月14日 优先权日2006年6月14日
发明者龚涛 申请人:龚涛
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1