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

网络入侵检测方法、系统、设备及存储介质与流程

2022-04-09 03:33:29 来源:中国专利 TAG:


1.本发明涉及网络安全领域,具体地说,涉及网络入侵检测方法、系统、设备及存储介质。


背景技术:

2.大数据时代,网络安全成为社会重大的关注方面。传统防火墙无法完全满足网络防护的要求,网络入侵检测系统成为了补充的关键手段。
3.目前市面上大多数入侵检测系统均采用基于模式匹配的特征检测方法,其使用非确定有限自动机nfa(non-deterministic finite state automata)或确定有限自动机dfa(deterministic finite automaton,)对正则表达式集和网络数据包进行匹配。nfa同dfa一样,消耗输入符号的字符串,对每个输入符号它变换到一个新状态直到所有输入符号到被耗尽。
4.需要说明的是,上述背景技术部分公开的信息仅用于加强对本发明的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。


技术实现要素:

5.针对现有技术中的问题,本发明的目的在于提供网络入侵检测方法、系统、设备及存储介质,克服了现有技术的困难,能够快速响应网络入侵检测,获得更好的预处理时间、匹配速度和内存占用间的权衡。
6.本发明的实施例提供一种网络入侵检测方法,包括以下步骤:
7.在检测到网络事件的情况下,将网络事件的网络数据包中的文本字符串所包含字符依次转换成比特矩阵;
8.将比特矩阵依序输入自动机,迭代地在自动机中计算表征状态的比特向量与比特矩阵之间的布尔矩阵乘法并响应于布尔矩阵乘法计算结果执行状态跳转,其中自动机是根据特征规则正则表达式的规则字符串进行特征向量编码得到的,其中特征规则正则表达式的规则字符串表征自动机的状态及状态转移函数;
9.在自动机输出规则匹配结果的情况下,响应于规则匹配结果,对网络事件执行相应的网络入侵防护决策。
10.可选地,将网络事件的网络数据包中的文本字符串所包含字符依次转换成比特矩阵,包括:
11.从网络数据包中提取目标文本片段,将目标文本片段的文本字符串所包含字符依次转换成比特矩阵;
12.将比特矩阵依序输入自动机,包括:
13.将目标文本片段转换得到的比特矩阵均依次输入自动机。
14.可选地,在从网络数据包中提取目标文本片段之前,网络入侵检测方法还包括:
15.将网络事件的网络数据包分割成多个文本片段,从网络数据包的每个文本片段的
文本字符串中提取子文本字符串,并将子文本字符串所包含字符依次转换成子比特矩阵;
16.将子比特矩阵依次输入子自动机,迭代地在子自动机中计算表征状态的子特征向量与子比特矩阵之间的布尔矩阵乘法并响应于布尔矩阵乘法计算结果执行状态跳转,其中,子自动机是对特征规则正则表达式的规则字符串所包含子规则字符串进行特征向量编码得到的;
17.在子自动机输出子文本字符串匹配结果的情况下,响应于子文本字符串匹配结果获得匹配的子文本字符串,并从多个文本片段的文本字符串中选取匹配的子文本字符串所属的目标文本片段。
18.可选地,在响应于子文本字符串匹配结果获得多个匹配的子文本字符串的情况下,在将目标文本片段转换得到的比特矩阵均依次输入自动机之前,网络入侵检测方法还包括:
19.利用每个匹配的子文本字符串得到所对应的子规则字符串,并得到子规则字符串所属的目标特征规则正则表达式;
20.将目标文本片段转换得到的比特矩阵均依次输入自动机,包括:
21.在获取到使用目标特征规则正则表达式构建得到的目标自动机的情况下,将目标文本片段转换得到的比特矩阵均依次输入目标自动机。
22.可选地,在获取到使用目标特征规则正则表达式构建得到的目标自动机的情况下,将目标文本片段转换得到的比特矩阵均依次输入目标自动机之前,网络入侵检测方法还包括:
23.利用目标特征规则正则表达式的规则字符串进行特征向量编码得到目标自动机。
24.可选地,利用每个匹配的子文本字符串得到所对应的子规则字符串,并得到子规则字符串所属的目标特征规则正则表达式,包括:
25.从多个第二字符串数组中选取属于第一字符串数组的子集的目标字符串数组,其中每个第二字符串数组是利用每个特征规则正则表达式中的多个子规则字符串构建得到的;
26.根据目标字符串数组所标记的特征规则标识吵着查找目标特征规则正则表达式。
27.可选地,网络入侵防护决策为放行、拦截或告警。优选地
……
28.本发明的实施例还提供一种网络入侵检测系统,用于实现上述的网络入侵检测方法,网络入侵检测系统包括:
29.比特矩阵转换模块,在检测到网络事件的情况下,将网络事件的网络数据包中的文本字符串所包含字符依次转换成比特矩阵;
30.正则匹配模块,将比特矩阵依序输入自动机,迭代地在自动机中计算表征状态的比特向量与比特矩阵之间的布尔矩阵乘法并响应于布尔矩阵乘法计算结果执行状态跳转,其中自动机是根据特征规则正则表达式的规则字符串进行特征向量编码得到的,其中特征规则正则表达式的规则字符串表征自动机的状态及状态转移函数;
31.决策执行模块,在自动机输出规则匹配结果的情况下,响应于规则匹配结果,对网络事件执行相应的网络入侵防护决策。
32.本发明的实施例还提供一种网络入侵检测设备,包括:
33.处理器;
34.存储器,其中存储有处理器的可执行指令;
35.其中,处理器配置为经由执行可执行指令来执行上述网络入侵检测方法的步骤。
36.本发明的实施例还提供一种计算机可读存储介质,用于存储程序,程序被执行时实现上述网络入侵检测方法的步骤。
37.本发明的目的在于提供网络入侵检测方法、系统、设备及存储介质,本发明使用的自动机为基于比特位的有穷自动机bfa,匹配阶段中,状态跳转过程转化为比特向量与比特矩阵的布尔矩阵乘法,利用cpu中内置比特操作与并行指令集进行优化,并通过位图压缩技术减少状态转移表所占空间大小。基于比特位的字符串匹配过程占用内存小,计算量更小。基于真实流量和规则的实验表明,bfa的规则预处理时间和内存占用远优于dfa方法,匹配速度较nfa方法高10至100倍,能够快速响应网络入侵检测。本方法方案能够获得更好的预处理时间、匹配速度和内存占用间的权衡,更适用于动态网络场景。
附图说明
38.通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显。
39.图1是本发明的网络入侵检测方法的实施例之一的流程图;
40.图2是本发明的网络入侵检测方法的原理示意图;
41.图3是本发明的网络入侵检测方法的实施例之二的流程图;
42.图4是本发明的网络入侵检测方法的实施例之三的流程图;
43.图5是本发明的网络入侵检测方法的实施例之四的流程图;
44.图6是本发明的网络入侵检测方法的实施例之五的流程图;
45.图7是本发明的网络入侵检测系统的实施例之一的模块示意图;
46.图8是本发明的网络入侵检测系统的实施例之二的模块示意图;
47.图9是本发明的网络入侵检测系统的实施例之三的模块示意图;
48.图10是本发明的网络入侵检测系统的实施例之四的模块示意图;
49.图11是本发明的网络入侵检测系统运行的示意图。
具体实施方式
50.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的实施方式。相反,提供这些实施方式使本发明全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
51.附图仅为本发明的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件转发模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
52.此外,附图中所示的流程仅是示例性说明,不是必须包括所有的步骤。例如,有的步骤可以分解,有的步骤可以合并或部分合并,且实际执行的顺序有可能根据实际情况改变。具体描述时使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要
性,而只是用来区分不同的组成部分。需要说明的是,在不冲突的情况下,本发明的实施例及不同实施例中的特征可以相互组合。
53.本案发明人在实践中发现,nfa与dfa均有各自的限制性,无法在时空复杂度方面完全高效地满足入侵检测系统的性能要求。
54.nfa是对每个状态和输入字符对可以有多个可能的下一个状态的有限状态自动机。对于nfa来说,对长度为n的正则,空间复杂度为o(n),但可能出现多个状态同时激活的情况,时间复杂度高达o(n^2)。构造nfa则会由于状态跳转不确定导致匹配速度太慢。
55.对于dfa,一个特定的符号输入,有且只能得到一个状态,也就是所有状态跳转是确定唯一的,其时间复杂度为o(1),但空间消耗巨大,对长度为n的正则其空间复杂度高o(|σ|^n)(|σ|是输入字符集合中的元素个数)。因此对所有正则构造dfa有可能出现内存爆炸情况。
56.本发明实施例提出一种新的网络入侵检测方法,利用网络入侵检测规则集正则表达式,从正则表达式中提取目标字符串,利用目标字符串得到基于位内存的比特向量,利用比特向量编码目标自动机中的状态和状态转移函数,得到自动机引擎。这样,在检测到网络数据包的情况下,根据网络数据包得到文本数据的比特矩阵,将比特矩阵输入到该自动机引擎中,在自动机引擎中利用文本数据的比特矩阵与自身的比特向量计算布尔矩阵乘法,根据计算结果获得状态跳转结果。
57.本发明实施例目标自动机可称为基于比特位的有穷自动机bfa(bit based fa),基于真实流量和规则的实验表明,bfa的规则预处理时间和内存占用远优于dfa方法,匹配速度较nfa方法高10至100倍,能够快速响应网络入侵检测。
58.图1是本发明的网络入侵检测方法的一种实施例的流程图。如图1所示,本发明的实施例提供一种网络入侵检测方法,具体包括如下步骤:
59.步骤110:在检测到网络事件的情况下,将网络事件的网络数据包中的文本字符串所包含字符依次转换成比特矩阵;
60.步骤120:将比特矩阵依序输入自动机,迭代地在自动机中计算表征状态的比特向量与比特矩阵之间的布尔矩阵乘法并响应于布尔矩阵乘法计算结果执行状态跳转,其中自动机是根据特征规则正则表达式的规则字符串进行特征向量编码得到的,其中特征规则正则表达式的规则字符串表征自动机的状态及状态转移函数;
61.步骤130:在自动机输出规则匹配结果的情况下,响应于规则匹配结果,对网络事件执行相应的网络入侵防护决策。
62.本实施例的特征规则是根据历史网络事件归纳出的数据特征构建的网络入侵检测规则。正则表达式是对字符串(包括普通字符(例如,a到z之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,该模式描述在搜索文本时要匹配的一个或多个字符串。
63.在这种情况下,从正则表达式中提取到的规则字符串描述了特征规则的状态及状态转移函数,该状态转移函数用于定义状态切换的规则,从而根据输入变量判断是否转入下一状态。
64.其中比特向量是在从特征规则正则表达式提取到规则字符串的情况下,根据规则
字符串获得自动机的状态及状态转移函数,并对状态和状态转移函数进行比特向量编码得到的。
65.本实施例公开的文本字符串是网络数据包携带的文本数据,是被检测或被匹配对象。本发明实施例的自动机使用比特向量编码状态和状态转移函数,每一个状态均对应具体的比特向量,并通过对当前状态所对应的字符的比特矩阵计算比特矩阵乘法,判定是否跳转下一状态。这样布尔矩阵乘法视为状态转移函数,其计算结果用来决定是否跳转下一状态。
66.若跳转到下一状态,则表明当前输入比特矩阵所对应文本字符串的字符匹配到特征规则,该特征规则匹配到预设字符。当文本字符串中所有字符均匹配时,自动机跳转到最终状态,此时会输出规则匹配结果,该规则匹配结果触发执行相应决策。
67.本发明实施例的自动机为基于比特位的有穷自动机bfa,匹配阶段中,状态跳转过程转化为比特向量与比特矩阵的布尔矩阵乘法,利用cpu中内置比特操作与并行指令集进行优化,并通过位图压缩技术减少状态转移表所占空间大小。基于比特位的文本字符串匹配过程占用内存小,计算量更小。基于真实流量和规则的实验表明,bfa的规则预处理时间和内存占用远优于dfa方法,匹配速度较nfa方法高10至100倍,能够快速响应网络入侵检测。本方法方案能够获得更好的预处理时间、匹配速度和内存占用间的权衡,更适用于动态网络场景。
68.举例来说,对于正则规则ab.*cd,转化成图2所示nfa引擎。其中涉及状态0、1、2、3、4,包括字符a、b、c、d。当状态0和2处于激活状态,那么当输入字符c后,状态0、2、3均被激活。
69.图2所示nfa转换成bfa。自动机的状态可使用比特向量进行表征,字符串中得到各个字符可以使用比特矩阵表征。例如,状态0和2均处于激活状态,表征为:
70.[1 0 1 0 0]
[0071]
其中,1表示激活,0表示未激活;
[0072]
在输入字符c时,状态跳转计算如下:
[0073][0074]
由此可见,0、2和3均被激活。
[0075]
所以,基于nfa的正则表达式可被转换成bfa。在可选实施例中,基于dfa的正则表达式也能够被转换成bfa。在匹配阶段中,对输入字符的比特矩阵与表征自动机引擎当前状态的比特向量计算布尔矩阵乘法,进而根据计算结果决定是否跳转到下一状态,当最终状态也被激活,则触发相应的特征规则,执行相应决策。
[0076]
在可选实施例中,该网络入侵防护决策为对网络事件放行、拦截或告警,在此不做限定。
[0077]
在可选实施例中,自动机可以是事先构造得到的。参考图3,可使用如下方法构建自动机:
[0078]
步骤310:获取用于网络入侵检测的特征规则的正则表达式,并从正则表达式中提取规则字符串,特征规则正则表达式的规则字符串表征自动机的状态及状态转移函数;
[0079]
步骤320:根据特征规则正则表达式的规则字符串进行特征向量编码,得到基于比特向量构建的自动机。
[0080]
图4为本发明另一实施例的网络入侵检测方法的流程图,参考图4所示,本方法可以包括如下步骤:
[0081]
步骤410:在检测到网络事件的情况下,从网络事件的网络数据包中提取目标文本片段,将目标文本片段的文本字符串所包含字符依次转换成比特矩阵;
[0082]
步骤420:将目标文本片段转换得到的比特矩阵均依次输入自动机,迭代地在自动机中计算表征状态的比特向量与比特矩阵之间的布尔矩阵乘法并响应于布尔矩阵乘法计算结果执行状态跳转,其中自动机是根据特征规则正则表达式的规则字符串进行特征向量编码得到的,其中特征规则正则表达式的规则字符串表征自动机的状态及状态转移函数;
[0083]
步骤430:在自动机输出规则匹配结果的情况下,响应于规则匹配结果,对网络事件执行相应的网络入侵防护决策。
[0084]
在本实施例中,目标文本片段为网络数据包中的一个文本片段,这样自动机所要匹配的文本字符串长度缩短,这能够提升自动机的匹配效率。
[0085]
在这种情况下,实际上,自动机所面对特征规则正则表达式也短。
[0086]
在可选实施例中,自动机可对多个目标文本片段分别进行特征规则匹配,一旦一个或多个文本片段的文本字符串匹配到特征规则,自动机可以输出规则匹配结果,触发执行网络入侵防护决策。
[0087]
在可选实施例中,该目标文本片段可以是网络数据包中的部分文本片段或全部文本片段。
[0088]
在可选实施例中,参考图5,本本发明提供又一种网络入侵检测方法,具体包括如下步骤:
[0089]
步骤510:在检测到网络事件的情况下,将网络事件的网络数据包分割成多个文本片段,从每个文本片段的文本字符串中提取子文本字符串,并将子文本字符串所包含字符依次转换成子比特矩阵;
[0090]
步骤520:将子比特矩阵依次输入子自动机,迭代地在子自动机中计算表征状态的子特征向量与子比特矩阵之间的布尔矩阵乘法并响应于布尔矩阵乘法计算结果执行状态跳转,其中,子自动机是对特征规则正则表达式的规则字符串所包含子规则字符串进行特征向量编码得到的;
[0091]
步骤530:在子自动机输出子文本字符串匹配结果的情况下,响应于子文本字符串匹配结果获得匹配的子文本字符串,并从多个文本片段的文本字符串中选取匹配的子文本字符串所属的目标文本片段;
[0092]
步骤540:将目标文本片段的文本字符串所包含字符依次转换成比特矩阵;
[0093]
步骤550:将目标文本字符串转换得到的比特矩阵依序输入自动机,迭代地在自动机中计算表征状态的比特向量与比特矩阵之间的布尔矩阵乘法并响应于布尔矩阵乘法计算结果执行状态跳转,其中自动机是根据特征规则正则表达式的规则字符串进行特征向量编码得到的,其中特征规则正则表达式的规则字符串表征自动机的状态及状态转移函数;
[0094]
步骤560:在自动机输出规则匹配结果的情况下,响应于规则匹配结果,对网络事件执行相应的网络入侵防护决策。
[0095]
本实施例同时对特征规则中的子规则字符串及特征规则完整的规则字符串分别构建子自动机和自动机,子自动机用于匹配子文本字符串,自动机用于匹配完整的文本片段匹配。
[0096]
在这种情况下,子自动机起到过滤作用,过滤掉未匹配子文本字符串及所属文本片段,从而排除掉部分文本片段,提升后面自动机的文本匹配效率和精度,降低自动机的内存消耗,提升网络入侵检测效率,获得预处理时间、匹配速度和内存占用间的权衡。
[0097]
在可选实施例中,在响应于子文本字符串匹配结果获得多个匹配的子文本字符串的情况下,在将目标文本片段转换得到的比特矩阵均依次输入自动机之前,网络入侵检测方法还包括:
[0098]
利用每个匹配的子文本字符串得到所对应的子规则字符串,并得到子规则字符串所属的目标特征规则正则表达式;
[0099]
将目标文本片段转换得到的比特矩阵均依次输入自动机,包括:
[0100]
在获取到使用目标特征规则正则表达式构建得到的目标自动机的情况下,将目标文本片段转换得到的比特矩阵均依次输入目标自动机。
[0101]
本实施例利用匹配的子文本字符串对自动机进行筛选,得到目标自动机,该目标自动机是利用包含该子文本字符串的特征规则正则表达式构建得到的,因此能够对相应的目标文本片段进行更精确地特征规则匹配。
[0102]
而且,本实施例进一步减少了最终自动机的数量,能够减少文本匹配的计算量及对应的内存消耗,提升网络入侵检测效率。
[0103]
在可选实施例中,目标自动机可以是实时构建得到。在这种情况下,在获取到使用目标特征规则正则表达式构建得到的目标自动机的情况下,将目标文本片段转换得到的比特矩阵均依次输入目标自动机之前,网络入侵检测方法还包括:
[0104]
利用目标特征规则正则表达式的规则字符串进行特征向量编码得到目标自动机。
[0105]
在可选实施例中,可以利用目标特征规则正则表达式的标识信息,从已构建自动机中选取目标自动机。
[0106]
在可选实施例中,利用每个匹配的子文本字符串得到所对应的子规则字符串,并得到子规则字符串所属的目标特征规则正则表达式,包括:
[0107]
利用多个匹配的子文本字符串构建第一字符串数组;
[0108]
从多个第二字符串数组中选取属于第一字符串数组的子集的目标字符串数组,其中每个第二字符串数组是利用每个特征规则正则表达式中的多个子规则字符串构建得到的;
[0109]
根据目标字符串数组所对应的特征规则标识,在多个特征规则正则表达式中查找目标特征规则正则表达式。
[0110]
由于第二字符串数组是从具体的特征规则正则表达式提取到的精确子规则字符串构建得到的,因此一旦基于子规则字符串构建的第二字符串数组落入第一字符串数组内,则表明有很大概率该第二字符串数组所对应特征规则正则表达式能够专门或更精确地对匹配的子文本字符串所属目标文本片段进行特征规则匹配。
[0111]
在可选实施例中,第二字符串数组中子文本字符串与第一字符串数组中子规则字符串的排序方式一致,比如以字母顺序排序。这样在进行子集判定时,能够更精确地匹配到目标自动机。
[0112]
图6为本发明实施例提供的一种网络入侵检测方法的系统分析流程图,参考图6,本方法具体包括如下自动机构建阶段和特定的网络入侵检测阶段。
[0113]
自动机构建阶段包括如下步骤:
[0114]
步骤610:从每个规则正则中尽可能多地提取精确规则字符串;
[0115]
步骤620:将提取到的精确规则字符串去重并按顺序存入数组a中,并将每条规则所对应的精确规则字符串对应的数组脚标记录,该数组a对应于上文的第二字符串数组;
[0116]
步骤630:使用预存精确字符串数组a构建自动机bfa1,该bfa1对应上文的子自动机。
[0117]
基于文本匹配的网络入侵检测阶段包括如下步骤:
[0118]
步骤640:根据文本特征分段;
[0119]
步骤650:将分段后的文本按序进入bfa1进行检测,将匹配的子文本字符串集存入数组b中,并根据数组a的顺序进行快速排序;
[0120]
步骤660:使用二分查找属于数组a匹配子文本字符串集子集的规则;
[0121]
步骤670:遍历已过滤的规则集,构建自动机bfa2,将文本进行精确正则匹配;
[0122]
步骤680:根据触发规则执行拦截、告警或放行策略。
[0123]
图7是本发明的网络入侵检测系统的一种实施例的模块示意图。本发明的网络入侵检测系统,如图7所示,包括但不限于:
[0124]
比特矩阵转换模块710,在检测到网络事件的情况下,将网络事件的网络数据包中的文本字符串所包含字符依次转换成比特矩阵;
[0125]
正则匹配模块720,将比特矩阵依序输入自动机,迭代地在自动机中计算表征状态的比特向量与比特矩阵之间的布尔矩阵乘法并响应于布尔矩阵乘法计算结果执行状态跳转,其中自动机是根据特征规则正则表达式的规则字符串进行特征向量编码得到的,其中特征规则正则表达式的规则字符串表征自动机的状态及状态转移函数;
[0126]
决策执行模块730,在自动机输出规则匹配结果的情况下,响应于规则匹配结果,对网络事件执行相应的网络入侵防护决策。
[0127]
上述模块的实现原理参见网络入侵检测方法中的相关介绍,此处不再赘述。
[0128]
本发明实施例的网络入侵检测系统使用的自动机为基于比特位的有穷自动机bfa,匹配阶段中,状态跳转过程转化为比特向量与比特矩阵的布尔矩阵乘法,利用cpu中内置比特操作与并行指令集进行优化,并通过位图压缩技术减少状态转移表所占空间大小。基于比特位的字符串匹配过程占用内存小,计算量更小。基于真实流量和规则的实验表明,bfa的规则预处理时间和内存占用远优于dfa方法,匹配速度较nfa方法高10至100倍,能够快速响应网络入侵检测。本方法方案能够获得更好的预处理时间、匹配速度和内存占用间的权衡,更适用于动态网络场景。
[0129]
可选地,比特矩阵转换模块710具体用于:
[0130]
从网络数据包中提取目标文本片段,将目标文本片段的文本字符串所包含字符依次转换成比特矩阵;
[0131]
正则匹配模块720具体用于:
[0132]
将目标文本片段转换得到的比特矩阵均依次输入自动机。
[0133]
可选地,与图7相比,图8所示网络入侵检测系统还包括:
[0134]
子比特矩阵转换模块810,在从网络数据包中提取目标文本片段之前,将网络事件的网络数据包分割成多个文本片段,从网络数据包的每个文本片段的文本字符串中提取子文本字符串,并将子文本字符串所包含字符依次转换成子比特矩阵;
[0135]
子文本字符串匹配模块820,将子比特矩阵依次输入子自动机,迭代地在子自动机中计算表征状态的子特征向量与子比特矩阵之间的布尔矩阵乘法并响应于布尔矩阵乘法计算结果执行状态跳转,其中,子自动机是对特征规则正则表达式的规则字符串所包含子规则字符串进行特征向量编码得到的。
[0136]
文本片段选取模块830,在子自动机输出子文本字符串匹配结果的情况下,响应于子文本字符串匹配结果获得匹配的子文本字符串,并从多个文本片段的文本字符串中选取匹配的子文本字符串所属的目标文本片段。
[0137]
可选地,与图8相比,图9所示网络入侵检测系统还包括:
[0138]
得到模块910,在响应于子文本字符串匹配结果获得多个匹配的子文本字符串的情况下,在将目标文本片段转换得到的比特矩阵均依次输入自动机之前,利用每个匹配的子文本字符串得到所对应的子规则字符串,并得到子规则字符串所属的目标特征规则正则表达式;
[0139]
正则匹配模块920具体用于,在获取到使用目标特征规则正则表达式构建得到的目标自动机的情况下,将目标文本片段转换得到的比特矩阵均依次输入目标自动机。
[0140]
可选地,得到模块910具体用于:
[0141]
从多个第二字符串数组中选取属于第一字符串数组的子集的目标字符串数组,其中每个第二字符串数组是利用每个特征规则正则表达式中的多个子规则字符串构建得到的;
[0142]
根据目标字符串数组所标记的特征规则标识吵着查找目标特征规则正则表达式。
[0143]
可选地,与图9相比,图10所示网络入侵检测系统还包括:
[0144]
自动机构建模块1010,在获取到使用目标特征规则正则表达式构建得到的目标自动机的情况下,将目标文本片段转换得到的比特矩阵均依次输入目标自动机之前,利用目标特征规则正则表达式的规则字符串进行特征向量编码得到目标自动机。
[0145]
本发明实施例还提供一种网络入侵检测设备,包括处理器。存储器,其中存储有处理器的可执行指令。其中,处理器配置为经由执行可执行指令来执行的网络入侵检测方法的步骤。
[0146]
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“平台”。
[0147]
图11是本发明的网络入侵检测设备的结构示意图。下面参照图11来描述根据本发明的这种实施方式的电子设备1100。图11显示的电子设备1100仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
[0148]
如图11所示,电子设备1100以通用计算设备的形式表现。电子设备1100的组件可以包括但不限于:至少一个处理单元1110、至少一个存储单元1120、连接不同平台组件(包括存储单元1120和处理单元1110)的总线1130、显示单元1140等。
[0149]
其中,存储单元存储有程序代码,程序代码可以被处理单元1110执行,使得处理单元1110执行本说明书上述网络入侵检测方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,处理单元1110可以执行如图1-图6中所示的步骤。
[0150]
存储单元1120可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)1121和/或高速缓存存储单元1122,还可以进一步包括只读存储单元(rom)1123。
[0151]
存储单元1120还可以包括具有一组(至少一个)程序模块1125的程序/实用工具1124,这样的程序模块1125包括但不限于:处理系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
[0152]
总线1130可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
[0153]
电子设备1100也可以与一个或多个外部设备1170(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备1100交互的设备通信,和/或与使得该电子设备1100能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口1150进行。
[0154]
并且,电子设备1100还可以通过网络适配器1160与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。网络适配器1160可以通过总线1130与电子设备1100的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1100使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储平台等。
[0155]
本发明实施例还提供一种计算机可读存储介质,用于存储程序,程序被执行时实现的网络入侵检测方法的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述
……
方法部分中描述的根据本发明各种示例性实施方式的步骤。
[0156]
根据本发明的实施方式的用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0157]
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0158]
计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其
中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。
[0159]
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明处理的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c 等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0160]
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
再多了解一些

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

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

相关文献