一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于人工免疫学的分布式多主机网络的入侵检测系统的制作方法

2022-03-02 02:13:18 来源:中国专利 TAG:


1.本发明涉及网络安全技术领域,尤其涉及一种基于人工免疫学的分布式多主机网络的入侵检测系统。


背景技术:

2.随着信息技术的迅猛发展,人们越来越依赖互联网技术来开展日常业务,这给网络防御带来了无数新的挑战,网络安全问题日益突出。
3.传统的抵御网络攻击的方法主要都是针对静态的攻击,针对新型攻击的威胁,分析、评估其安全风险,缺乏自适应能力。目前入侵攻击已经成为每时每刻实实在在威胁的情况下,不考虑入侵攻击的网络安全防御技术显然是存在严重缺陷,其准确性难以保障。因此,入侵攻击威胁的检测已成为网络安全的重要课题。
4.网络攻击的复杂性和多样性几乎使传统的it防御(如反病毒软件或入侵防御系统)过时。此外,随着攻击者不断发现和利用系统中的漏洞,即使是建立多个防御层的传统防御策略也变得越来越无效。攻击者可以故意破坏计算机的网络访问,亦或是破坏计算机的网络攻击。同时,人们对攻击的成本也越来越低,将一些简单和孤立的攻击类型组合起来,就可以创建具有潜在破坏性影响的新的复杂形式的恶意攻击。
5.在生物学的启发下,出现了以生物免疫系统为原型的免疫算法,网络安全保护系统与人体免疫系统具有惊人的相似性,两者都是要在复杂的外部环境中保护自身免受外来的攻击。因此,免疫系统天生具备未知病毒的识别和灭活能力。
6.在混沌动力学中,一个最简单的非线性动力学模型就是logistic映射,它是一种生态模型,其表达式为x(t 1)=μx(t)(1-x(t)),在μ取一定范围内数值的情况下,不存在周期性,所有轨道点都会随机取值,不存在任何规律,因此,此时取出轨道中的任意长的一段,都等价于取出一批在一定范围内的随机分布的数字序列,利用状态参量在这个区间取值时,整个系统都处于混沌的状态,便可以产生随机数。
7.否定选择算法,也叫阴性选择法,它是由forrest在1994年提出算法,该算法在ais(artificial immune systems,人工免疫系统)中得到了广泛的应用,是ais的核心算法之一。否定选择是一种孤立选择算法,与阳性选择相反,在人体内,它的含义就是胸腺中新生的t细胞自身蛋白质,这些蛋白质属于宿主或生存所必需的成分,如果未成熟的t细胞对这些蛋白质发生反应,这样的t细胞就会在成熟前就被摧毁。根据这个前提,剩下的t细胞成功地经历了这一过程而没有被破坏,就是那些对机体必需的成分没有反应的t细胞。成熟的t细胞具有忍耐自身的性质。该算法通过不断训练耐受细胞,形成成熟的检测器,用于判断自我和非自我的细胞。
8.遗传算法是由美国密执安大学的j.holland教授于1975年在他的专著《自然界和人工系统的适应性》中首先提出的,起源于60年代对自然和人工自适应系统的研究。它是一类借鉴生物界自然选择和自然遗传机制的随机化搜索算法。遗传算法模拟自然选择和自然遗传过程中发生的繁殖、交叉和基因突变现象,在每次迭代中都保留一组候选解,并按某种
指标从解群中选取较优的个体,利用遗传算子(选择、交叉和变异)对这些个体进行组合,产生新一代的候选解群,重复此过程,直到满足某种收敛指标为止。
9.克隆选择算法是de castro和von zuben在2000年基于免疫系统的克隆选择理论所提出的。克隆选择算法同样是ais的核心算法之一,克隆选择理论是在一个初始群体中,根据评价的优异值选出最好的一部分个体;由被选出来的个体进行克隆,使其发生变异,再从中选出一些最好个体加入到原群体。并随机替换掉群体中的一部分个体,然后进入到下一代群体,反复迭代,直至满足约束条件。其思想是只有识别抗原的细胞才会被选择增殖,而那些不识别抗原的细胞则被针对。
10.上述算法中,对于已知攻击依然采用传统位匹配的形式,开销较大;传统否定选择算法的未成熟检测器由随机数产生,由于计算机产生的随机数为由可确定的函数(常用线性同余)通过一个种子(常用时钟)产生的。故当短时间内大量产生随机数或者随机数长度很长的时候,随机性将会很差;传统的克隆选择算法以变异为主,常常重视局部最优解因此会收敛过慢,不足以找到全局的最优情况;传统的免疫网络模型基于简单网络,网络中对攻击检测的漏检率以及错误率较高。因此,需要一种综合解决上述多个缺点的入侵检测方案。


技术实现要素:

11.本发明针对上述问题,提出一种基于人工免疫学的分布式多主机网络的入侵检测系统,采用哈希算法存储已知攻击进行快速甄别,同时运用混沌理论的初值敏感性来解决随机性差的问题,通过在免疫算法和克隆选择算法结合的方式,在迭代时也可以参考遗传算法中以交叉为主的思想,加强全局思想。同时采用多主机多节点的网络部署方式,大大降低了对攻击检测的漏检率,提高了对攻击的检测性能。
12.为了实现上述目的,本发明提供如下技术方案:
13.一种基于人工免疫学的分布式多主机网络的入侵检测系统,采用分布式多主机网络,主机之间互相独立,主机内有多个节点,节点里存在着检测器,当该网络中的某一个主机捕获到了网络中的信息,对信息进行处理后与已知攻击库进行哈希值的比对,如果比对成功则拦截,否则进入特异性免疫过程;特异性免疫过程首先采用否定选择算法进行未成熟检测器的耐受训练,之后将成熟的检测器进行克隆选择,增值对抗原亲和度更高的抗体,最终判断是否为攻击,若是则拦截并更新已知攻击库,否则加载信息。
14.进一步地,对捕获的信息进行处理的过程为:收集目前常用的攻击方式,采用开源数据集kddcup99中的网络入侵检测数据包kddcup_data_10percent中的训练集进行训练,每一条数据含有41个特征以及标识,首先进行特征提取,选择其第2、3、4、23、42的五个特征,2号特征是协议标志,3号特征是网络服务类型,4号特征是网络连接状态,23号特征是与当前连接具有相同主机的连接数,42号是一个攻击的类型标记label,离散化去掉标点符号后,将字母转为ascii码并归一化,将值映射到[0,1]范围内,再生成一个二维矩阵顺序存储。
[0015]
进一步地,已知攻击的存储过程为:通过使用哈希函数计算处理后的已知攻击的哈希值,并存储到已知攻击库中。
[0016]
进一步地,倘若有两个不同种信息产生了相同的哈希值,则认为其是攻击。
[0017]
进一步地,未成熟检测器的产生过程为:由计算机时间种子随机以时间戳生成一
个随机数x,通过混沌理论的logistic映射表达式x(t 1)=μx(t)(1-x(t)),在μ取一定范围内的情况下,取出轨道中的任意长的一段,利用状态参量在这个区间取值时,生成随机数串,再按照统一化的格式形成一个个子串,最终分组形成未成熟检测器。
[0018]
进一步地,使用阴性选择算法对未成熟检测器进行耐受训练的算法过程为:首先定义了自体细胞集合;投入一定量的检测器,与自体细胞进行匹配;当检测器与自体细胞相匹配,则自动销毁检测器;同时再采用混沌系统生成随机序列作为新的检测器补充;经过一段时间的耐受期仍旧没有匹配到自体细胞的检测器则成为成熟的检测器加入到集合之中。
[0019]
进一步地,检测器与自体细胞的匹配方法采用全位匹配、连续r位匹配和汉明匹配相结合。
[0020]
进一步地,检测器与自体细胞的匹配过程采用索引的方式,从某一位作为首位的连续r位匹配。
[0021]
进一步地,克隆选择算法的过程为:首先通过否定选择算法生成了一系列成熟检测器;将检测器与抗原进行匹配,并计算匹配的亲和力;如果抗原的匹配度未达到收敛标准则进行克隆选择,包含克隆、变异和交叉;经过克隆选择后,进入到下一代群体,同时再次与抗原进行匹配计算亲和力;当亲和力匹配达到预期的收敛条件,则输出当前结果集,结束算法。
[0022]
进一步地,最终判断为攻击的信息传递给其他主机。
[0023]
与现有技术相比,本发明的有益效果为:
[0024]
1、本发明提出的基于人工免疫学的分布式多主机网络的入侵检测系统,结合了人体的非特异性免疫和特异性免疫,通过对攻击数据的哈希值来判定攻击是否为已知攻击,对于已知的攻击,采用非特异性免疫(皮肤)直接进行拦截。
[0025]
2、在否定选择部分生成随机的未成熟检测器时,采用混沌理论的logistic回归映射的方式来生成随机值,比起常见的时间戳生成的随机数,拥有更强的随机性,同时基于其初值敏感性,及时短时间内大量生成也能保证有较好的性能。同时在匹配方式上,使用了一种基于索引的方式匹配,减小了匹配所造成的开销。
[0026]
3、结合克隆选择算法和遗传算法的优点,两种算法都是模拟生物体自身系统或者进化的生态系统而产生的迭代式算法,都是群体搜索策略,强调群体中个体间的信息交换。可以借鉴和采用遗传算法的算子,来作为克隆选择算法中迭代的算子,使得克隆算法的收敛性更好,且更加注重全局最优的性质,避免陷入局部最优解的可能。
[0027]
4、通过特异性免疫生成的抗体以及对靶抗原的标识,同样以哈希值的方式存储,并将信息传递给分布式网络中的其他主机,用于其他主机遇到此类攻击时的非特异性免疫拦截。网络采取多主机多节点的模式,当任何一个主机检测到攻击并确认,则网络中的其他主机都能获得该攻击的信息。当主机中任何一个节点的检测器判定为攻击,则认为该信息是一个攻击,从而减少了网络系统模型对攻击检测的漏检率。
附图说明
[0028]
为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
[0029]
图1为本发明实施例提供的基于人工免疫的分布式多主机网络入侵检测系统流程图。
[0030]
图2为本发明实施例提供的网络环境图。
[0031]
图3为本发明实施例提供的捕获数据处理流程图。
[0032]
图4为本发明实施例提供的混沌理论生成未成熟检测器流程图。
[0033]
图5为本发明实施例提供的否定选择算法流程图
[0034]
图6为本发明实施例提供的自体细胞集与检测器集示意图。
[0035]
图7为本发明实施例提供的克隆选择算法流程图。
[0036]
图8为本发明实施例提供的克隆、交叉、变异处理示意图。
具体实施方式
[0037]
为了更好地理解本技术方案,下面结合附图对本发明的方法做详细的说明。
[0038]
本发明提供的基于人工免疫的分布式多主机网络入侵检测系统,整体流程如附图1所示,首先是配置环境,该网络为分布式多主机网络,主机之间互相独立,主机内有多个节点,节点里存在着检测器。当该网络中的某一个主机捕获到了网络中的信息,对信息进行处理后与已知攻击库进行哈希值的比对,如果比对成功则拦截,否则进入特异性免疫过程。特异性免疫首先采用否定选择算法进行检测器的耐受训练,之后将成熟的检测器进行克隆选择,增值对抗原亲和度更高的抗体,最终判断是否为攻击,若是则拦截并更新已知攻击库,否则加载信息。接下来对该方案进行详细介绍。
[0039]
a.配置环境
[0040]
步骤一:配置网络环境并搭建网络中的主机,如附图2所示,当前网络中有r个主机,每个主机都有r个节点,节点内存在着多个检测器。
[0041]
步骤二:对已知攻击的处理。收集目前常用的攻击方式,采用开源数据集kddcup99中的网络入侵检测数据包kddcup_data_10percent中的训练集进行训练,每一条数据含有41个特征以及标识,首先进行特征提取,选择其第2,3,4,23,42的五个特征,2号特征是协议标志,3号特征是网络服务类型,4号特征是网络连接状态,23号特征是与当前连接具有相同主机的连接数,42号是一个攻击的类型标记label。离散化去掉标点符号后,将字母转为ascii码并归一化,将值映射到[0,1]范围内,再生成一个二维矩阵顺序存储。大体步骤如附图3所示。
[0042]
步骤三:存储已知攻击。通过使用哈希函数计算处理后的已知攻击的哈希值,并存储到已知攻击库中。本系统采取的措施是倘若有两个不同种信息产生了相同的哈希值,即哈希碰撞,则优先认为其是攻击,从而减少对攻击识别的漏检率。
[0043]
b.非特异性免疫过程
[0044]
步骤一:处理捕获到的网络数据。本系统采用开源数据集kddcup99中的网络入侵检测数据包kddcup_data_10percent中的测试级进行测试,对数据的特征提取以及归一化后的处理步骤与已知攻击的处理方式相同。
[0045]
步骤二:将生成的二维矩阵数据进行哈希计算,通过哈希函数计算后,将哈希值与存储的已知攻击进行比对,若比对成功,则表明是攻击并拦截,反之进入下一个步骤。
[0046]
c.特异性免疫过程
[0047]
步骤一:如附图4所示,首先由计算机时间种子随机以时间戳生成一个随机数x,通过混沌理论的logistic映射表达式x(t 1)=μx(t)(1-x(t)),在μ取一定范围内的情况下,不存在周期性,所有轨道点都会随机取值,不存在任何规律,故此时取出轨道中的任意长的一段,都等价于取出一批在一定范围内的随机分布的数字序列,利用状态参量在这个区间取值时,整个系统都处于混沌的状态,从而可以在短时间内批量快速生成随机数串,再按照统一化的格式形成一个个子串,最终分组形成未成熟检测器。
[0048]
步骤二:使用阴性选择算法对未成熟检测器进行耐受训练,该算法也是仿照人体免疫系统的机制,首先产生一个未成熟的检测器集合(即经过耐受训练前的t细胞),同时也会产生一个自我集(即自体细胞蛋白质)。检测器集合中的每一个检测器都会跟自体集所对应的数据进行匹配,如果相匹配,则销该检测器。如果若未匹配成功,则加入成熟检测器集合之中。当所需要的检测器数量不足时,则添加新的未成熟检测器进入未成熟检测器集合。详细步骤如附图5所示。
[0049]

首先定义了自体细胞集合;
[0050]

投入一定量的检测器,与自体细胞进行匹配;
[0051]

当检测器与自体细胞相匹配,则自动销毁检测器;
[0052]

同时再采用混沌系统生成随机序列作为新的检测器补充;
[0053]

经过一段时间的耐受期仍旧没有匹配到自体细胞的检测器则成为成熟的检测器加入到集合之中。
[0054]
其中,匹配过程采用结合了全位匹配,连续r位匹配和汉明匹配,设计出一个新的匹配算法。采用索引的方式,从某一位作为首位的连续r位匹配,从而减小计算量所带来的的开销。譬如自体序列是001010,检测器是(001,1),表明从1号位开始索引,长度为3,内容为001,恰好与自体前三位匹配,因此,该检测器需要销毁。附图6列出了当自体细胞集合为01011、01010、01101时,成熟检测器集合则为侧的检测器序列。
[0055]
步骤三:使用基于遗传算法的克隆选择算法,进行对抗原的克隆迭代。采用遗传算法的算子来作为克隆选择算法中迭代的算子。同时,以变异为主的克隆选择算法,在迭代时也可以参考遗传算法中以交叉为主的思想,在克隆选择的时候不仅仅是克隆和变异,还可以交叉,整个克隆选择算法过程如附图7所示。
[0056]

首先通过否定选择算法生成了一系列成熟检测器;
[0057]

将检测器与抗原进行匹配,并计算匹配的亲和力;
[0058]

如果抗原的匹配度未达到收敛标准则进行克隆选择,包含克隆、变异和交叉;
[0059]

经过克隆选择后,进入到下一代群体,同时再次与抗原进行匹配计算亲和力;
[0060]

当亲和力匹配达到预期的收敛条件,则输出当前结果集,结束算法。克隆,变异及交叉部分如附图8所示,其中克隆是直接保留原始序列本身;变异则是其中若干位的0变成1或者1变成0;而交叉则是两个序列分别取前半段和后半段,然后交换,一号序列的前半段拼接二号序列的后半段,同时二号序列的前半段拼接一号序列的后半段。
[0061]
d.匹配未知信息
[0062]
步骤一:将未知信息放入种群集合进行匹配,如果未匹配,则表明是安全信息,可以接收加载。若标记为攻击,则进行拦截。不同节点中的任何一个检测器识别未知信息为攻击,则认为该信息是攻击,从而可以降低对攻击识别的漏检率。而对信息判断的错误率则通
过多次迭代步骤来降低。
[0063]
步骤二:拦截了的新型攻击,通过哈希函数计算其哈希值,并存储到已知攻击库中,并在网络中将该攻击的信息传递给其他主机。增强了整个网络的非特异性免疫性能。
[0064]
本发明的基于人工免疫的分布式多主机网络入侵检测系统,通过哈希算法识别攻击是否已知,来减少特异性免疫的匹配开销;结合多主机信息共享,若其中一个主机受到过某次攻击并最终拦截抵抗,便会将该攻击的信息(包含抗体以及对应靶细胞抗原)通过网络发送给其他主机,最终使得网络可以识别更多的攻击;同时采用混沌算法的logistic回归来更加高效的生成大量随机检测器投入到训练中,拥有更好的随机性;最后通过结合遗传算法的克隆选择算法,在变异的基础上加强交叉的效果,以更好的收敛性去迭代增值克隆匹配性更好,亲和度更高的的抗体(检测器),并择优生成,最终以全局最优的方式收敛种群结果,获得对入侵攻击的快速自适应发现能力。综上,相比于传统的其他入侵检测系统,拥有更高的鲁棒性和自适应性,拥有对攻击检测更低的漏检率以及错误率。
[0065]
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,但这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献