CN112579618B - 特征库的升级方法、装置、存储介质及计算机设备 - Google Patents
特征库的升级方法、装置、存储介质及计算机设备 Download PDFInfo
- Publication number
- CN112579618B CN112579618B CN201910945381.3A CN201910945381A CN112579618B CN 112579618 B CN112579618 B CN 112579618B CN 201910945381 A CN201910945381 A CN 201910945381A CN 112579618 B CN112579618 B CN 112579618B
- Authority
- CN
- China
- Prior art keywords
- features
- feature
- feature library
- temporary
- library
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000010276 construction Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 10
- 230000006835 compression Effects 0.000 claims description 6
- 238000007906 compression Methods 0.000 claims description 6
- 238000004891 communication Methods 0.000 abstract description 7
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种特征库的升级方法、装置、存储介质及计算机设备,涉及网络通信技术领域。其中特征库的升级方法包括:根据待升级的特征集合,构建临时特征库;判断临时特征库的占用空间是否大于预设值;若临时特征库的占用空间大于预设值,则根据临时特征库中的特征和特征库中原有的特征,重新构建特征库,并清空临时特征库。上述方法通过将小规模特征库和大规模特征库结合的升级方式,有效的避免了频繁的特征库全量升级带来的时间耗费和流量耗费问题,同时也保证了特征库的性能不受影响。
Description
技术领域
本发明涉及网络通信技术领域,尤其是涉及一种特征库的升级方法、装置、存储介质及计算机设备。
背景技术
随着网络通信技术的发展,网络规模不断扩大,网络攻击层出不穷,使得网络设备的配置和维护成本大幅增加。其中,网络设备的特征库是网络设备实现网络入侵防御功能的基础,该特征库需要实时更新以应对不断增加的网络攻击特征,因此,如何更好地对网络设备中的特征库进行配置和维护,是一个非常关键的问题。
在现有技术中,特征库的数据量非常庞大,且数据更新率较快,每一次全量更新升级特征库都需要很长的时间以及较多的流量,频繁的升级更新会导致流量占用较大以及时间耗时过长等问题,因此,如何既能够兼顾特征库的更新升级需求又能够节制时间和流量等资源的耗费是一个较为棘手的问题。
发明内容
有鉴于此,本申请提供了一种特征库的升级方法、装置、存储介质及计算机设备,主要目的在于解决频繁的特征库升级导致的时间耗费和流量耗费的技术问题。
根据本发明的第一个方面,提供一种特征库的升级方法,该方法包括:
根据待升级的特征集合,构建临时特征库;
判断临时特征库的占用空间是否大于预设值;
若临时特征库的占用空间大于预设值,则根据临时特征库中的特征和特征库中原有的特征,重新构建特征库,并清空临时特征库。
在一个实施方式中,临时特征库为临时有限状态自动机;则根据待升级的特征集合,构建临时特征库,包括:将待升级的特征集合中的所有特征以节点的形式储存在文件中;对文件中存储的每一个节点进行序列化的模式编译,得到临时有限状态自动机。
在一个实施方式中,特征库包括有限状态自动机和特征列表;则根据临时特征库中的特征和特征库中原有的特征,重新构建特征库,包括:将临时特征库中的特征和特征库中原有的特征合并为特征集合;根据特征集合中的每一个特征的字符串长度、特征类型和命中频率,将特征划分为状态机特征和移动表特征;根据状态机特征,重新构建有限状态自动机;根据移动表特征,重新构建特征列表,并根据特征列表中的特征重新构建中缀跳转表和前缀散列表。
在一个实施方式中,根据特征集合中的每一个特征的字符串长度、特征类型和命中频率,将特征划分为状态机特征和移动表特征,包括:遍历特征集合中的特征,判断特征的字符串长度是否小于预设的字符串长度;若特征的字符串长度小于预设的字符串长度,则将特征划分为状态机特征;若否,则判断特征是否为模糊匹配特征、跳跃匹配特征、正则匹配特征或大小写不敏感特征;若特征为模糊匹配特征、跳跃匹配特征、正则匹配特征或大小写不敏感特征,将特征划分为状态机特征;若否,则判断特征的命中频率是否在预设范围内;若特征的命中频率在预设范围内,则将特征划分为状态机特征;若否,则将特征划分为移动表特征。
在一个实施方式中,根据状态机特征,重新构建有限状态自动机,包括:将状态机特征以节点的形式储存在文件中;对文件中存储的每一个节点进行序列化的模式编译,得到有限状态自动机。
在一个实施方式中,根据移动表特征,重新构建特征列表,并根据特征列表中的特征重新构建中缀跳转表和前缀散列表,包括:将移动表特征以二进制数值的形式存储在文件中,生成特征列表;根据特征列表中的特征的前缀和中缀的索引信息,分别构建中缀跳转表和前缀散列表;对特征列表进行压缩处理和加密处理。
根据本发明的第二个方面,提供一种特征库的升级装置,该装置包括:
临时特征库构建模块,用于根据待升级的特征集合,构建临时特征库;
占用空间判断模块,用于判断临时特征库的占用空间是否大于预设值;
特征库构建模块,用于当临时特征库的占用空间大于预设值时,根据临时特征库中的特征和特征库中原有的特征,重新构建特征库,并清空临时特征库。
在一个实施方式中,临时特征库为临时有限状态自动机;则临时特征库构建模块包括:
节点生成单元,用于将待升级的特征集合中的所有特征以节点的形式储存在文件中;
模式编译单元,用于对文件中存储的每一个节点进行序列化的模式编译,得到临时有限状态自动机。
在一个实施方式中,特征库包括有限状态自动机和特征列表;则特征库构建模块包括:
特征合并单元,用于将临时特征库中的特征和特征库中原有的特征合并为特征集合;
特征划分单元,用于根据特征集合中的每一个特征的字符串长度、特征类型和命中频率,将特征划分为状态机特征和移动表特征;
状态机构建单元,用于根据状态机特征,重新构建有限状态自动机;
移动表构建单元,用于根据移动表特征,重新构建特征列表,并根据特征列表中的特征重新构建中缀跳转表和前缀散列表。
在一个实施方式中,特征划分单元包括:
字符串长度判断子单元,用于判断特征的字符串长度是否小于预设的字符串长度;
特征类型判断子单元,用于判断特征是否为模糊匹配特征、跳跃匹配特征、正则匹配特征或大小写不敏感特征;
命中频率判断子单元,用判断特征的命中频率是否在预设范围内;
划分结果生成子单元,用于将字符串长度小于预设的字符串长度的特征、模糊匹配特征、跳跃匹配特征、正则匹配特征、大小写不敏感特征和命中频率在预设范围内的特征划分为状态机特征;将特征集合中除状态机特征之外的特征划分为移动表特征。
在一个实施方式中,状态机构建单元包括:
状态机特征存储子单元,用于将状态机特征以节点的形式储存在文件中;
模式编译子单元,用于对文件中存储的每一个节点进行序列化的模式编译,得到有限状态自动机。
在一个实施方式中,移动表构建单元包括:
移动表特征存储子单元,用于将移动表特征以二进制数值的形式存储在文件中,生成特征列表;
索引表构建子单元,用于根据特征列表中的特征的前缀和中缀的索引信息,分别构建中缀跳转表和前缀散列表;
特征列表加密子单元,用于对特征列表进行压缩处理和加密处理。
根据本发明的第三个方面,提供一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述特征库的升级方法。
根据本发明的第四个方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述特征库的升级方法。
本发明提供的一种特征库的升级方法、装置、存储介质及计算机设备,首先根据待升级的小部分特征构建一个临时特征库;当临时特征库的占用空间大于预设值时,再将临时特征库中的特征和特征库中原有的特征整合在一起重新构建特征库,并清空临时特征库。本方法通过将小规模特征库和大规模特征库结合的升级方式,有效的避免了频繁的特征库全量升级带来的时间耗费和流量耗费问题,同时也保证了特征库的性能不受影响。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了本发明实施例提供的一种特征库的升级方法的流程示意图;
图2示出了本发明实施例提供的另一种特征库的升级方法的流程示意图;
图3示出了本发明实施例提供的一种特征库的升级装置的结构示意图;
图4示出了本发明实施例提供的另一种特征库的升级装置的结构示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在一个实施例中,如图1所示,提供了一种特征库的升级方法,以该方法应用于服务器为例进行说明,该方法包括以下步骤:
101、根据待升级的特征集合,构建临时特征库。
其中,特征集合指的是从数据源中提取出的待匹配的特征的集合。例如,在入侵检测的场景下,特征集合指的是从一个或多个网络数据包中提取出的特征模式集合,由于这些特征模式通常是从多种已知的攻击行为中抽象总结而来的,因而通过将待处理文本与这些特征模式匹配,就可以检测出可能发生的攻击。进一步的,我们可以通过各种渠道获取这些特征,如手工提取、用传感器获取或通过学习获得等。
进一步的,特征库指的是基于特征集合建立的特征匹配库,通过该特征库,可以将待处理本文与特征集合中的特征进行匹配从而获得匹配结果。
具体的,服务器可以根据待升级的特征集合构建一个临时特征库来存储特征集合中更新的那一部分特征,在特征匹配的过程中,通过同时使用临时特征库和特征库进行特征匹配,就可以获得完整的特征匹配结果,从而省去了全量升级特征库所带来的时间与流量的耗费。
在本实施例中,临时特征库可以为临时有限状态自动机,在构建临时有限状态自动机的过程中,服务器可以将待升级的特征集合中的所有特征以节点的形式储存在文件中,然后对文件中存储的每一个节点进行序列化的模式编译,得到临时有限状态自动机。在进行特征匹配时,可以将待处理文本作为临时有限状态机的输入,使状态机发生状态的转换,在到达某些特定状态时,就发生了模式匹配,在特征匹配的整个过程中,状态机只需要扫描一次就可以查找到待处理文本匹配的所有特征出现的位置,性能非常稳定。
102、判断临时特征库的占用空间是否大于预设值。
具体的,临时特征库需要占用一定的内存空间,并且,临时特征库中的特征数量越多,占用的空间越大,因而,当临时特征库的占用空间大于一定范围时,临时特征库就变得不再必要。另外,临时特征库占用空间的预设值也与特征库的特征总量有关,通常而言,特征库的特征总量越大,可允许临时特征库占用的空间越大,这个预设值通常在1M-10M之间,需要说明的是,本实施例并不对临时特征库的占用空间的预设值进行限定,这个值也可以是1M-10M之外的其他值。
103、若临时特征库的占用空间大于预设值,则根据临时特征库中的特征和特征库中原有的特征,重新构建特征库,并清空临时特征库。
具体的,特征的更新是频繁且不定量的,当待升级的特征量还未积累到一定程度时,可以通过重新构建临时特征库的方式来节约升级时间并减少流量耗费;当待升级的特征量积累到一定程度时,就可以将临时特征库占用的内存空间释放出来,然后将临时特征库中的特征和特征库中原有的特征合并为一个总的特征集合,然后再根据合并的特征集合重新构建特征库,并清空临时特征库。需要说明的是,特征库和临时特征库的建立过程都是不可逆的,也就是说,特征库和临时特征库中的特征都会以源数据的形式存储在服务器中,每次升级时,服务器都会利用存储的源数据重新构建临时特征库或特征库。
在本实施例中,特征库还可以分为有限状态自动机和特征列表,在构建特征库时,首先会根据特征集合中的每一个特征的字符串长度、特征类型和命中频率,将特征划分为状态机特征和移动表特征,然后再根据状态机特征和移动表特征,重新构建有限状态自动机和特征列表,在构建特征列表之后,还会根据特征列表中的特征重新构建中缀跳转表和前缀散列表。本实施例通过将一部分不常用的特征存储在特征列表中,可以有效的缓解特征库的内存压力,从而提升特征库的匹配性能。
本实施例提供的特征库升级方法首先根据待升级的小部分特征构建一个临时特征库;当临时特征库的占用空间大于预设值时,再将临时特征库中的特征和特征库中原有的特征整合在一起重新构建特征库,并清空临时特征库。本方法通过将小规模特征库和大规模特征库结合的升级方式,有效的避免了频繁的特征库全量升级带来的时间耗费和流量耗费问题,同时也保证了特征库的性能不受影响。
进一步的,作为上述实施例具体实施方式的细化和扩展,为了完整说明本实施例的实施过程,提供了特征库的升级方法,如图2所示,该方法包括以下步骤:
201、根据待升级的特征集合,构建临时有限状态自动机。
具体的,服务器可以根据待升级的特征集合构建一个临时有限状态自动机来存储特征集合中更新的那一部分特征,在构建临时有限状态自动机的过程中,服务器可以将待升级的特征集合中的所有特征以节点的形式储存在文件中,然后对文件中存储的每一个节点进行序列化的模式编译,得到临时有限状态自动机。在进行特征匹配时,可以将待处理文本作为临时有限状态机的输入,使状态机发生状态的转换,在到达某些特定状态时,就发生了模式匹配,在特征匹配的整个过程中,状态机只需要扫描一次就可以查找到待处理文本匹配的所有特征出现的位置,性能非常稳定。
202、判断临时有限状态自动机的占用空间是否大于预设值。
具体的,临时有限状态自动机需要占用一定的内存空间,并且,临时有限状态自动机中的特征数量越多,占用的空间越大,因而,当临时有限状态自动机的占用空间大于一定范围时,临时有限状态自动机就变得不再必要。另外,临时有限状态自动机占用空间的预设值也与特征库的特征总量有关,通常而言,特征库的特征总量越大,可允许临时有限状态自动机占用的空间越大,这个预设值通常在1M-10M之间,需要说明的是,本实施例并不对临时有限状态自动机的占用空间的预设值进行限定,这个值也可以是1M-10M之外的其他值。
203、若临时有限状态自动机的占用空间大于预设值,则将临时有限状态自动机中的特征和特征库中原有的特征合并为特征集合。
具体的,特征的更新是频繁且不定量的,当待升级的特征量还未积累到一定程度时,可以通过重新构建临时有限状态自动机的方式来节约升级时间并减少流量耗费;当待升级的特征量积累到一定程度时,就可以将临时有限状态机中的特征和特征库中原有的特征合并为一个总的特征集合。需要说明的是,特征库和临时特征库的建立过程都是不可逆的,也就是说,特征库和临时特征库中的特征都会以源数据的形式存储在服务器中,每次升级时,服务器都会利用存储的源数据重新构建临时特征库或特征库。
204、根据特征集合中的每一个特征的字符串长度、特征类型和命中频率,将特征划分为状态机特征和移动表特征。
具体的,服务器会遍历特征集合中的特征,并首先判断特征的字符串长度是否小于预设的字符串长度,若特征的字符串长度小于预设的字符串长度,则将特征划分为状态机特征,若否,则判断特征是否为模糊匹配特征、跳跃匹配特征、正则匹配特征或大小写不敏感特征,若特征为模糊匹配特征、跳跃匹配特征、正则匹配特征或大小写不敏感特征,将特征划分为状态机特征,若否,则判断特征的命中频率是否在预设范围内,若特征的命中频率在预设范围内,则将特征划分为状态机特征,若否,则将特征划分为移动表特征。
其中,预设的字符串长度可以是在6至10之间的某一个数值或其他数值,命中频率可以是特征集合中命中率排行的前10000至前100000之间的某一个数值或其他数值。
在本实施例中,服务器会将命中频率高、字符串长度短且类型复杂的特征划分为状态机特征,并将命中频率低、字符串长度长且类型普通的特征划分为移动表特征,这样的划分方式可以充分利用状态机的高稳定性实现对特征的准确匹配,同时又可以利用特征列表低内存的特性减少性能的损耗。需要说明的是,随着特征升级更新的数量越来越多,状态机特征的配比会逐渐减少,一些不常用的特征都会被划分为移动表特征中,从而有效的减少了特征库的内存占用。
205、根据状态机特征,重新构建有限状态自动机。
具体的,服务器会将状态机特征以节点的形式储存在文件中,然后对文件中存储的每一个节点进行序列化的模式编译,得到有限状态自动机。在进行状态机特征匹配时,可以将待处理文本作为有限状态机的输入,使状态机发生状态的转换,在到达某些特定状态时,就发生了模式匹配,在特征匹配的整个过程中,状态机只需要扫描一次就可以查找到待处理文本匹配的所有特征出现的位置,性能非常稳定。
206、根据移动表特征,重新构建特征列表,并根据特征列表中的特征重新构建中缀跳转表和前缀散列表。
具体的,服务器可以将移动表特征以二进制数值的形式存储在文件中,生成特征列表,然后根据特征列表中的特征的前缀和中缀的索引信息,分别构建中缀跳转表和前缀散列表,最后对特征列表进行压缩处理和加密处理。在进行移动表特征匹配时,可以首先在内存中利用中缀跳转表和前缀散列表对待处理文本进行前缀匹配和中缀匹配,如果前缀和中缀都匹配上,则为特征列表划定一个遍历区,然后映射内存在这个遍历区中去查找待处理文本匹配的特征,通过这种方式,可以有效的减少特征列表占用的内存空间。
207、清空临时特征库。
具体的,当临时有限状态自动机的占用空间大于预设值时,服务器会释放临时有限状态自动机的占用空间,具体的,服务可以生成一个0M的临时有限状态自动机去覆盖原本的临时有限状态自动机。
本实施例提供的特征库升级方法首先根据待升级的小部分特征构建一个临时有限状态自动机,当临时有限状态自动机的占用空间大于预设值时,再将临时特征库中的特征和特征库中原有的特征整合在一起,并将全部特征划分为状态机特征和移动表特征,继而根据状态机特征和移动表特征,重新构建有限状态自动机和特征列表,在构建特征列表之后,再根据特征列表中的特征重新构建中缀跳转表和前缀散列表。本实施例通过临时有限状态自动机减缓了特征库的频繁更新升级所带来的时间和流量消耗,并保障了特征库的性能不受影响,同时,又通过构建有限状态自动机和特征列表进一步减缓了内存的损耗,提升了特征库的匹配性能。
进一步的,作为图1、图2所示方法的具体实现,本实施例提供了一种特征库的升级装置,如图3所示,该装置包括:临时特征库构建模块31、占用空间判断模块32、特征库构建模块33。
临时特征库构建模块31,可用于根据待升级的特征集合,构建临时特征库;
占用空间判断模块32,可用于判断临时特征库的占用空间是否大于预设值;
特征库构建模块33,可用于当临时特征库的占用空间大于预设值时,根据临时特征库中的特征和特征库中原有的特征,重新构建特征库,并清空临时特征库。
在具体的应用场景中,如图4所示,临时特征库为临时有限状态自动机;则临时特征库构建模块31包括:
节点生成单元311,可用于将待升级的特征集合中的所有特征以节点的形式储存在文件中;
模式编译单元312,可用于对文件中存储的每一个节点进行序列化的模式编译,得到临时有限状态自动机。
在具体的应用场景中,如图4所示,特征库包括有限状态自动机和特征列表;则特征库构建模块33包括:
特征合并单元331,可用于将临时特征库中的特征和特征库中原有的特征合并为特征集合;
特征划分单元332,可用于根据特征集合中的每一个特征的字符串长度、特征类型和命中频率,将特征划分为状态机特征和移动表特征;
状态机构建单元333,可用于根据状态机特征,重新构建有限状态自动机;
移动表构建单元334,可用于根据移动表特征,重新构建特征列表,并根据特征列表中的特征重新构建中缀跳转表和前缀散列表。
在具体的应用场景中,特征划分单元332包括:
字符串长度判断子单元3321,可用于判断特征的字符串长度是否小于预设的字符串长度;
特征类型判断子单元3322,可用于判断特征是否为模糊匹配特征、跳跃匹配特征、正则匹配特征或大小写不敏感特征;
命中频率判断子单元3323,可用判断特征的命中频率是否在预设范围内;
划分结果生成子单元3324,可用于将字符串长度小于预设的字符串长度的特征、模糊匹配特征、跳跃匹配特征、正则匹配特征、大小写不敏感特征和命中频率在预设范围内的特征划分为状态机特征;将特征集合中除状态机特征之外的特征划分为移动表特征。
在具体的应用场景中,状态机构建单元333包括:
状态机特征存储子单元3331,可用于将状态机特征以节点的形式储存在文件中;
模式编译子单元3332,可用于对文件中存储的每一个节点进行序列化的模式编译,得到有限状态自动机。
在具体的应用场景中,移动表构建单元334包括:
移动表特征存储子单元3341,可用于将移动表特征以二进制数值的形式存储在文件中,生成特征列表;
索引表构建子单元3342,可用于根据特征列表中的特征的前缀和中缀的索引信息,分别构建中缀跳转表和前缀散列表;
特征列表加密子单元3343,可用于对特征列表进行压缩处理和加密处理。
需要说明的是,本实施例提供的一种特征库的升级装置所涉及各功能单元的其它相应描述,可以参考图1、图2中的对应描述,在此不再赘述。
基于上述如图1、图2所示方法,相应的,本实施例还提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述如图1、图2所示的特征库的升级方法。
基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该待识别软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景所述的方法。
基于上述如图1、图2所示的方法,以及图3和图4所示的特征库的升级装置实施例,为了实现上述目的,本实施例还提供了一种特征库的升级的实体设备,具体可以为个人计算机、服务器、智能手机、平板电脑、智能手表、或者其它网络设备等,该实体设备包括存储介质和处理器;存储介质,用于存储计算机程序;处理器,用于执行计算机程序以实现上述如图1、图2所示的方法。
可选的,该实体设备还可以包括用户接口、网络接口、摄像头、射频(RadioFrequency,RF)电路,传感器、音频电路、WI-FI模块等等。用户接口可以包括显示屏(Display)、输入单元比如键盘(Keyboard)等,可选用户接口还可以包括USB接口、读卡器接口等。网络接口可选的可以包括标准的有线接口、无线接口(如WI-FI接口)等。
本领域技术人员可以理解,本实施例提供的一种特征库的升级的实体设备结构并不构成对该实体设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件布置。
存储介质中还可以包括操作系统、网络通信模块。操作系统是管理上述实体设备硬件和待识别软件资源的程序,支持信息处理程序以及其它待识别软件和/或程序的运行。网络通信模块用于实现存储介质内部各组件之间的通信,以及与信息处理实体设备中其它硬件和软件之间通信。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以借助软件加必要的通用硬件平台的方式来实现,也可以通过硬件实现。本方案通过小规模特征库升级结合大规模特征库升级的方式,有效的避免了特征库全量升级带来的时间耗费和流量耗费,同时也保证了特征库的性能不受影响。与现有技术相比,本申请提供的特征库升级方法可以在特征集合频繁更新的情况下节约更多的更新时间和下载流量,且不影响特征库本申请的性能,从而保障了网络环境的安全。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本申请序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。
Claims (10)
1.一种特征库的升级方法,其特征在于,所述方法包括:
根据待升级的特征集合,构建临时特征库;
判断所述临时特征库的占用空间是否大于预设值;
若临时特征库的占用空间大于预设值,则根据所述临时特征库中的特征和特征库中原有的特征,重新构建所述特征库,并清空所述临时特征库;
其中,所述特征库包括有限状态自动机和特征列表;则所述根据所述临时特征库中的特征和特征库中原有的特征,重新构建所述特征库,包括:
将所述临时特征库中的特征和特征库中原有的特征合并为特征集合;
遍历所述特征集合中的特征,判断所述特征的字符串长度是否小于预设的字符串长度;
若所述特征的字符串长度小于预设的字符串长度,则将所述特征划分为状态机特征;若否,则判断所述特征是否为模糊匹配特征、跳跃匹配特征、正则匹配特征或大小写不敏感特征;
若所述特征为模糊匹配特征、跳跃匹配特征、正则匹配特征或大小写不敏感特征,将所述特征划分为状态机特征;若否,则判断所述特征的命中频率是否在预设范围内;
若所述特征的命中频率在预设范围内,则将所述特征划分为状态机特征;若否,则将所述特征划分为移动表特征;
根据所述状态机特征,重新构建所述有限状态自动机;
根据所述移动表特征,重新构建所述特征列表,并根据所述特征列表中的特征重新构建中缀跳转表和前缀散列表。
2.根据权利要求1所述的方法,其特征在于,所述临时特征库为临时有限状态自动机;则所述根据待升级的特征集合,构建临时特征库,包括:
将待升级的特征集合中的所有特征以节点的形式储存在文件中;
对所述文件中存储的每一个节点进行序列化的模式编译,得到临时有限状态自动机。
3.根据权利要求1所述的方法,其特征在于,所述根据所述状态机特征,重新构建所述有限状态自动机,包括:
将所述状态机特征以节点的形式储存在文件中;
对所述文件中存储的每一个节点进行序列化的模式编译,得到有限状态自动机。
4.根据权利要求1所述的方法,其特征在于,所述根据所述移动表特征,重新构建所述特征列表,并根据所述特征列表中的特征重新构建中缀跳转表和前缀散列表,包括:
将所述移动表特征以二进制数值的形式存储在文件中,生成所述特征列表;
根据所述特征列表中的特征的前缀和中缀的索引信息,分别构建中缀跳转表和前缀散列表;
对所述特征列表进行压缩处理和加密处理。
5.一种特征库的升级装置,其特征在于,所述装置包括:
临时特征库构建模块,用于根据待升级的特征集合,构建临时特征库;
占用空间判断模块,用于判断所述临时特征库的占用空间是否大于预设值;
特征库构建模块,用于当临时特征库的占用空间大于预设值时,根据所述临时特征库中的特征和特征库中原有的特征,重新构建所述特征库,并清空所述临时特征库;
其中,所述特征库包括有限状态自动机和特征列表;则所述特征库构建模块包括:
特征合并单元,用于将所述临时特征库中的特征和特征库中原有的特征合并为特征集合;
特征划分单元,用于遍历所述特征集合中的特征,判断所述特征的字符串长度是否小于预设的字符串长度;
若所述特征的字符串长度小于预设的字符串长度,则将所述特征划分为状态机特征;若否,则判断所述特征是否为模糊匹配特征、跳跃匹配特征、正则匹配特征或大小写不敏感特征;
若所述特征为模糊匹配特征、跳跃匹配特征、正则匹配特征或大小写不敏感特征,将所述特征划分为状态机特征;若否,则判断所述特征的命中频率是否在预设范围内;
若所述特征的命中频率在预设范围内,则将所述特征划分为状态机特征;若否,则将所述特征划分为移动表特征;
状态机构建单元,用于根据所述状态机特征,重新构建所述有限状态自动机;
移动表构建单元,用于根据所述移动表特征,重新构建所述特征列表,并根据所述特征列表中的特征重新构建中缀跳转表和前缀散列表。
6.根据权利要求5所述的装置,其特征在于,所述临时特征库为临时有限状态自动机;则所述临时特征库构建模块包括:
节点生成单元,用于将待升级的特征集合中的所有特征以节点的形式储存在文件中;
模式编译单元,用于对所述文件中存储的每一个节点进行序列化的模式编译,得到临时有限状态自动机。
7.根据权利要求5所述的装置,其特征在于,所述状态机构建单元包括:
状态机特征存储子单元,用于将所述状态机特征以节点的形式储存在文件中;
模式编译子单元,用于对所述文件中存储的每一个节点进行序列化的模式编译,得到有限状态自动机。
8.根据权利要求5所述的装置,其特征在于,所述移动表构建单元包括:
移动表特征存储子单元,用于将所述移动表特征以二进制数值的形式存储在文件中,生成所述特征列表;
索引表构建子单元,用于根据所述特征列表中的特征的前缀和中缀的索引信息,分别构建中缀跳转表和前缀散列表;
特征列表加密子单元,用于对所述特征列表进行压缩处理和加密处理。
9.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910945381.3A CN112579618B (zh) | 2019-09-30 | 2019-09-30 | 特征库的升级方法、装置、存储介质及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910945381.3A CN112579618B (zh) | 2019-09-30 | 2019-09-30 | 特征库的升级方法、装置、存储介质及计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112579618A CN112579618A (zh) | 2021-03-30 |
CN112579618B true CN112579618B (zh) | 2022-07-05 |
Family
ID=75117058
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910945381.3A Active CN112579618B (zh) | 2019-09-30 | 2019-09-30 | 特征库的升级方法、装置、存储介质及计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112579618B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115096595B (zh) * | 2022-06-30 | 2023-05-09 | 中国航空发动机研究院 | 特征自学习方法、特征自学习系统及发动机故障诊断方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104182248A (zh) * | 2014-07-25 | 2014-12-03 | 汉柏科技有限公司 | 业务规则库升级方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060294312A1 (en) * | 2004-05-27 | 2006-12-28 | Silverbrook Research Pty Ltd | Generation sequences |
CN100485700C (zh) * | 2006-08-11 | 2009-05-06 | 珠海金山软件股份有限公司 | 一种可对文件实时监控的防治计算机病毒的装置及其升级方法 |
CN105989160A (zh) * | 2015-03-03 | 2016-10-05 | 大唐软件技术股份有限公司 | 一种针对Redis数据库的内存数据持久化方法和装置 |
CN107547536B (zh) * | 2017-08-28 | 2021-03-19 | 新华三信息安全技术有限公司 | 一种特征库更新方法及装置 |
-
2019
- 2019-09-30 CN CN201910945381.3A patent/CN112579618B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104182248A (zh) * | 2014-07-25 | 2014-12-03 | 汉柏科技有限公司 | 业务规则库升级方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112579618A (zh) | 2021-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108647010B (zh) | 一种项目工程初始化的方法、终端设备及存储介质 | |
CN102520972B (zh) | 电子游戏开发系统及其方法 | |
CN110989487B (zh) | 工业服务器的plc初始化方法、装置及可读存储介质 | |
CN103559055A (zh) | 一种应用于Android平台的启动活动的方法和装置 | |
CN111399840A (zh) | 一种模块开发方法及装置 | |
CN108984339B (zh) | 数据恢复方法及相关产品 | |
CN104461621A (zh) | 一种更新属性信息的方法及装置 | |
CN110659165A (zh) | 一种多节点服务器自动化测试方法和装置 | |
CN113268243A (zh) | 内存预测方法及装置、存储介质、电子设备 | |
CN112579618B (zh) | 特征库的升级方法、装置、存储介质及计算机设备 | |
CN109032685B (zh) | 一种加速安卓系统启动的方法及终端 | |
CN111104178A (zh) | 一种动态库加载方法、终端装置及存储介质 | |
CN103514004A (zh) | Windows系统下的系统环境管理方法及装置 | |
CN112000630B (zh) | 一种日志存储方法、装置、设备及可读存储介质 | |
CN110598419A (zh) | 一种区块链客户端漏洞挖掘方法、装置、设备及存储介质 | |
CN110998524A (zh) | 处理配置文件的方法、处理单元、触摸芯片、装置及介质 | |
CN113031953A (zh) | 应用程序预编译的方法、装置、电子设备以及服务器 | |
CN103235745B (zh) | 一种地址冲突检测方法及装置 | |
CN112882761B (zh) | 游戏服务端引擎的迁移方法、装置、处理器、电子设备 | |
EP3314560B1 (en) | Transmitting application data for on-device demos | |
CN114296939A (zh) | 应用程序的处理方法、装置、存储介质、处理器及设备 | |
CN114840194A (zh) | 代码及操作系统的生成方法和装置、服务器及电子设备 | |
CN108874586B (zh) | 数据恢复方法及相关产品 | |
CN114675872A (zh) | 一种对应用程序的数据处理方法、装置、设备及存储介质 | |
CN110597517A (zh) | 动态解析mat文件的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |