一种基于文本挖掘的相似漏洞查询方法

文档序号:6444250阅读:175来源:国知局
专利名称:一种基于文本挖掘的相似漏洞查询方法
技术领域
本发明涉及一种基于文本挖掘的相似漏洞查询方法,属于计算机信息安全技术领域。
背景技术
信息技术和互联网迅速发展,互联网上病毒木马程序泛滥,窃泄密事件频发,网络安全事件层出不穷,信息安全问题形势严峻。众多信息安全威胁的产生都与信息系统存在安全漏洞有关,世界各国已将漏洞信息等数据作为重要战略资源实施掌控。2003年9月,美国国土安全部与Carnegie Mellon大学计算机应急响应中心CERT 共同组建美国政府计算机应急响应中心US-CERT。US-CERT对外以US-CERT Vulnerability Notes的形式发布漏洞信息。2005年,在美国国土安全部网络安全司NCSD的赞助和US-CERT 的技术支持下,美国国家标准与技术委员会NIST下属计算机安全资源中心CSRS建立了美国国家漏洞数据库 NVD (National Vulnerability Database
)。2008年,欧盟推出了“欧洲盾牌计划”,拟建立一个包括漏洞发现、消除、防御所需的所有信息、模型和工具在内的漏洞数据库。中国信息安全测评中心负责建设运维中国国 itffCNNVD (China National Vulnerability Database of Information
Security),已经搜集了包括漏洞、补丁等信息在内的多种数据。一些信息安全厂商和组织也建立了漏洞库。如微软的安全公告、Dragonsoft漏洞库、开源漏洞库等。目前,现有技术所建立的漏洞库都只是提供了漏洞公告、统计、查询等一些简单服务,如重要的漏洞实例描述、漏洞增长数量情况、漏洞分布情况、漏洞危害等级与修复情况以及基于关键字漏洞和补丁查询服务。

发明内容
本发明的目的在于,克服现有技术缺点,区别于普通的基于关键字匹配的查询,提供一种基于文本挖掘的相似漏洞查询方法,根据输入的漏洞记录标识,计算该漏洞记录与其他记录之间的相似度,根据相似度的大小输出查询结果,是一种模糊查询;依据特征词汇库对文本描述字段取值进行数值向量化处理,将不明确的文字描述明确化,便于计算机系统对漏洞记录数据的智能化处理;挖掘出漏洞数据之间暗含的模式和规律,为漏洞数据的进一步应用提供基础。本发明的技术方案是
一种基于文本挖掘的相似漏洞查询方法,包括下述步骤
A、对漏洞数据进行预处理选取漏洞记录属性字段数据;对原始漏洞数据进行数据清理,包括填充缺失的数据和纠正错误的数据;对清理之后的字段数据进行规范化处理;
B、相似漏洞查询输入处理根据用户输入的相似漏洞查询条件,选定目标漏洞记录数据和筛选出查询漏洞数据记录集合;
C、漏洞记录数据的处理计算漏洞记录数据之间的相似度,对漏洞记录数据进行重新排列;
D、输出相似漏洞查询结果将C步骤重新排列的漏洞记录数据中的若干条输出。在上述技术方案的基础上更进一步技述方案是
所述的基于文本挖掘的相似漏洞查询方法,其目标漏洞记录数据为 ,筛选出的查询漏洞数据记录集合为二 .....rQfi};所述计算漏洞记录数据之间的相似度是计算漏洞记录数据 与〃力二 I.2..... Qrt)之间的相似度,计算结果为 ShiAi —〖.2..…(I;、;所述对漏洞记录数据进行重新排列是依据九,.l· Sillj.....Shi*从大到小的顺序对集合Pq中的漏洞记录数据进行重新排列,前to条记录即为相似漏洞查询结果,其中m的大小根据实际应用设定具体的值。所述的基于文本挖掘的相似漏洞查询方法,所述对清理之后的字段数据规范化处理,包括1)将数值型字段取值映射到特定的值域空间,包括连续数值型字段处理和离散序数值型字段处理;2)将文本描述字段取值进行向量化处理。所述的基于文本挖掘的相似漏洞查询方法,其连续数值型字段处理是将连续数值型字段取值映射到特定的值域空间,步骤是先取出漏洞信息中该字段数据的最大值a和最小值b,某条漏洞记录该字段的原始取值为n,然后依照公式V = 1> - - ,将原始字段取值映射到10. U之间。所述的基于文本挖掘的相似漏洞查询方法,其离散序数值型字段处理是将离散序数值字段取值映射到特定的值域空间,是依照公式ν = U — Ι|/(/~ ι),将原始字段取值〃 映射到
所述的基于文本挖掘的相似漏洞查询方法,所述计算漏洞记录数据 与 rM = 1..... Qh)之间的相似度步骤是
1)计算相似度之前的漏洞记录数据经过预处理,只包括单值变量和数值向量两类,取单值变量的字段为Fsl ■ F-.Fs,,,取值为向量的字段有FY1, Fv,,.... Fv,,;
2)计算 与=“2…,.Q+〃的单值变量字段之间的相似度,结果为
3)计算 与d = “2.... Λ如的向量字段之间的相似度,结果为
4)按照如下公式计算 .与C ^ = H ■.. <Q.〃之间的相似度
所述的基于文本挖掘的相似漏洞查询方法,所述步骤2)的相似度
4.,· = .1. ++++++ I·"丨/++++++ <,、.#.■分别为漏洞记录 与c广i‘2,,,,, 中该字段经预处理之后的值。所述的基于文本挖掘的相似漏洞查询方法,所述步骤3)的相似度
.^1;, = (+(Vt.:;!' ·vf')/(iv[ IVp),其中ι:ν7为字段Fi的向量取值的转置,卜‘I 为向量的维度。本发明的显著优点和效果主要有1.现有信息漏洞记录数据的文本描述字段取值为非结构化数据,不同的数据来源其描述格式和用词不同,计算机无法自动完成对文本描述字段的自动理解。本发明依据特征词汇库对文本描述字段取值进行数值向量化处理,将不明确的文字描述明确化,便于计算机系统对漏洞记录数据的智能化处理。2.现有漏洞数据库所提供的查询服务只能对用户输入的关键字进行匹配或者对用户输入的数值进行大于或小于范围内的查找,本发明根据输入的漏洞记录标识,计算该漏洞记录与其他记录之间的相似度,根据相似度的大小输出查询结果,是一种模糊查询。3.现有漏洞数据库的漏洞记录之间只有明确的类别一致、危险程序高低、发现时间先后的关系,漏洞记录之间的安全攻击依赖关系无法体现,本发明能挖掘出漏洞数据之间暗含的模式和规律,为漏洞数据的进一步应用提供基础。


图1为本发明的流程图2为图1中方框1001漏洞数据预处理的流程图3为图2中方框2001选取漏洞记录属性字段数据处理的流程图,为所选中的漏洞记录属性字段的一个实施例示意图4为图2中方框2009对清理之后的字段数据进行规范化处理的一个实施例示意图; 图5为图4中方框4013离散序数值型字段处理的一个实施例示意图;图6为图4中方框4005将文本描述字段取值进行向量化处理的流程图; 图7为图6中方框6001建立特征词汇库的一个实施例示意图。
具体实施例方式结合附图和实施例对本发明作进一步说明如下。实施例1
如图1所示,为本发明基本实施例。一种基于文本挖掘的相似漏洞查询方法,包括下述步骤A、1001步骤,对漏洞数据进行预处理如图2所示首先按2001步骤选取漏洞记录属性字段数据;再按2005步骤对原始漏洞数据进行数据清理,该清理步骤包括填充缺失的数据和纠正错误的数据;最后为2009步骤,对清理之后的字段数据进行规范化处理;B、1005 步骤,相似漏洞查询输入处理根据用户输入的相似漏洞查询条件,选定目标漏洞记录数据和筛选出查询漏洞数据记录集合;C、1009步骤,漏洞记录数据的处理计算漏洞记录数据之间的相似度,对漏洞记录数据进行重新排列;D、1009步骤,输出相似漏洞查询结果将C、 即1009步骤重新排列的漏洞记录数据中的若干条输出。实施例2
如附图1-7所示,是在上述本发明基本实施例基础上进一步的较优的实施例。所述的目标漏洞记录数据为O1,,筛选出的查询漏洞数据记录集合为/ = { 0..... ,,}; 所述计算漏洞记录数据之间的相似度是计算漏洞记录数据α,与〃力二 U.....(知)之间的相似度,计算结果为力= -2…QJ ;所述对漏洞记录数据进行重新排列是依据 - ,!. ShiJ….-从大到小的顺序对集合. 中的漏洞记录数据进行重新排列,前m条记录即为相似漏洞查询结果,其中m的大小根据实际应用设定具体的值。如图4所示, 所述对清理之后的字段数据规范化处理,包括1)将数值型字段取值映射到特定的值域空间,包括连续数值型字段处理和离散序数值型字段处理;2)将文本描述字段取值进行向量化处理。所述连续数值型字段处理是将连续数值型字段取值映射到特定的值域空间,步骤是先取出漏洞信息中该字段数据的最大值a和最小值b,某条漏洞记录该字段的原始取值为ts然后依照公式V =(〃-〖)/(〃-ft),将原始字段取值映射到_ 1]之间。所述的离散序数值型字段处理是将离散序数值字段取值映射到特定的值域空间,是依照公式「‘ — ΓΙ/Ι了 - 1),将原始字段取值 ι映射到Ij之间;其中离散序数值有 IM1. M2.....叫丨种状态,且.紙4 Mj為.-.4 M/,某条漏洞记录该字段的原始取值为 r = M1,式中f表示该取值在状态集中的排序序号。如图6所示,所述将文本描述字段取值进行向量化处理,其步骤是1)建立特征词汇库;2)将文本描述字段取值表示成对应特征词列的文本向量即将漏洞记录的文本描述字段取值表示成对应所有特征词列的高纬空间文本向量;3)将文本向量映射为数值向量若漏洞记录的文本描述字段取值含有某个特征词汇,则在该词汇对应的文本向量位置上置TF-IDF权值,否则置0。所述建立特征词汇库的步骤是1)依据文字描述的信息分类选取词汇,存入特征词汇库;2)将特征词汇库进行更新,包括增加新发现的领域特征词汇和剔除描述能力不强的词汇;增加新发现的领域特征词汇在漏洞数据库存入新的数据时进行,剔除描述能力不强的词汇根据实际应用的效果来进行;3)在对特征词汇库进行更新之后,再对漏洞记录数据的文本描述字段取值重新进行向量化处理。所述筛选出查询漏洞数据记录集合/ η·^….,rQll.}是按用户输入的相似漏洞查询条件,包括漏洞类型相同和产品生产商名称相同两个选项进行选择,对该两个选项或同时都未选择,或选择一个,或都选,其中若用户对两个选项都未选择,则筛选出数据记录集合— {^·ι·' 2.....包括除Π,,外的其他所有漏洞记录数据;若用户选择了一个选项,则怂;中每条记录的漏洞类型或产品生产商名称与 相同;若用户选择了两个选项,则/ 中的每条记录的漏洞类型与产品生产商名称与α,都相同。所述计算漏洞记录数据 rh,与…=1.2... ...Q,,)之间的相似度步骤是
1)计算相似度之前的漏洞记录数据经过预处理,只包括单值变量和数值向量两类,取单值变量的字段为1 - Fs2..... Fftll,取值为向量的字段有Fvi. Fvi..... Fvjl ;
2)计算+ 与^= “2….,Qn的单值变量字段之间的相似度,结果为
权利要求
1.一种基于文本挖掘的相似漏洞查询方法,其特征在于包括下述步骤A、对漏洞数据进行预处理选取漏洞记录属性字段数据;对原始漏洞数据进行数据清理,包括填充缺失的数据和纠正错误的数据;对清理之后的字段数据进行规范化处理;B、相似漏洞查询输入处理根据用户输入的相似漏洞查询条件,选定目标漏洞记录数据和筛选出查询漏洞数据记录集合;C、漏洞记录数据的处理计算漏洞记录数据之间的相似度,对漏洞记录数据进行重新排列;D、输出相似漏洞查询结果将C步骤重新排列的漏洞记录数据中的若干条输出。
2.按照权利要求1所述的基于文本挖掘的相似漏洞查询方法,其特征在于,所述目标漏洞记录数据为 ,筛选出的查询漏洞数据记录集合为ffq = h-r2.....rQli};所述计算漏洞记录数据之间的相似度是计算漏洞记录数据α,与Mz= i.2.....Qi,)之间的相似度,计算结果为—1.2.….;所述对漏洞记录数据进行重新排列是依据·s'〖《.i Jiu ■…从大到小的顺序对集合I q中的漏洞记录数据进行重新排列,前m条记录即为相似漏洞查询结果,其中m的大小根据实际应用设定具体的值。
3.按照权利要求1或2所述的基于文本挖掘的相似漏洞查询方法,其特征在于,所述对清理之后的字段数据规范化处理,包括1)将数值型字段取值映射到特定的值域空间,包括连续数值型字段处理和离散序数值型字段处理;2)将文本描述的字段取值进行向量化处理。
4.按照权利要求3所述的基于文本挖掘的相似漏洞查询方法,其特征在于,所述连续数值型字段处理是将连续数值型字段取值映射到特定的值域空间,步骤是先取出漏洞信息中该字段数据的最大值a和最小值b,某条漏洞记录该字段的原始取值为《,然后依照公式一 _(,·- 6)/( — Ι ,将原始字段取值映射到
之间。
5.按照权利要求3所述的基于文本挖掘的相似漏洞查询方法,其特征在于,所述离散序数值型字段处理是将离散序数值字段取值映射到特定的值域空间,是依照公式卜二( -.1)/丨/-1),将原始字段取值 映射到[o. Ij之间;其中离散序数值有 Ufi-M2……Μ/}种状态,且Μ: 4 M2 U .W/,某条漏洞记录该字段的原始取值为 ‘‘=Aii,式中i表示该取值在状态集中的排序序号。
6.按照权利要求3所述的基于文本挖掘的相似漏洞查询方法,其特征在于,所述将文本描述字段取值进行向量化处理,其步骤是1)建立特征词汇库;2)将文本描述字段取值表示成对应特征词列的文本向量即将漏洞记录的文本描述字段取值表示成对应所有特征词列的高纬空间文本向量;3)将文本向量映射为数值向量若漏洞记录的文本描述字段取值含有某个特征词汇, 则在该词汇对应的文本向量位置上置TF-IDF权值,否则置0。
7.按照权利要求6所述的基于文本挖掘的相似漏洞查询方法,其特征在于,所述建立特征词汇库的步骤是1)依据文字描述的信息分类选取词汇,存入特征词汇库;2)将特征词汇库进行更新,包括增加新发现的领域特征词汇和剔除描述能力不强的词汇;增加新发现的领域特征词汇在漏洞数据库存入新的数据时进行,剔除描述能力不强的词汇根据实际应用的效果来进行;3)在对特征词汇库进行更新之后,再对漏洞记录数据的文本描述字段取值重新进行向量化处理。
8.按照权利要求2所述的基于文本挖掘的相似漏洞查询方法,其特征在于,所述筛选出查询漏洞数据记录集合.《Q - .... rQ,f}是按用户输入的相似漏洞查询条件,包括漏洞类型相同和产品生产商名称相同两个选项进行选择,对该两个选项或同时都未选择, 或选择一个,或都选,其中若用户对两个选项都未选择,则筛选出数据记录集合风 - {卜厂2.....rQii}包括除α, 外的其他所有漏洞记录数据;若用户选择了一个选项,则.《Q中每条记录的漏洞类型或产品生产商名称与rlB相同; 若用户选择了两个选项,则中的每条记录的漏洞类型与产品生产商名称与rift都相同。
9.按照权利要求2所述的基于文本挖掘的相似漏洞查询方法,其特征在于,所述计算漏洞记录数据 与4 = 1,2.....仏)之间的相似度步骤是1)计算相似度之前的漏洞记录数据经过预处理,只包括单值变量和数值向量两类,取单值变量的字段为Fsl- F孙■ ‘,Fs,,,取值为向量的字段有
\i ■ Fc .…Fv11 ;2)计算. ,与…=“2…,,Q 的单值变量字段之间的相似度,结果为3)计算 与O d.. ..J扣的向量字段之间的相似度,结果为4)按照如下公式计算 .与G ^ = “ ,,. 之间的相似度其中,
10.按照权利要求9所述的基于文本挖掘的相似漏洞查询方法,其特征在于,所述步骤2)的相似度劝丨:,=1- Κ/·: · <.1,.4广、.4."分别为漏洞记录 与〃"=、1.....中该字段经预处理之后的值。
11.按照权利要求9所述的基于文本挖掘的相似漏洞查询方法,其特征在于,所述步骤3)的相似度
全文摘要
本发明涉及一种基于文本挖掘的相似漏洞查询方法,属于计算机信息安全技术领域,其步骤包括A、对漏洞数据进行预处理;B、相似漏洞查询输入处理;C、漏洞记录数据的处理;D、输出相似漏洞查询结果。本发明的优点有将不明确采用文字描述的漏洞信息明确化,便于计算机系统对漏洞记录数据进行智能化处理;区别于基于关键字匹配的查询,根据相似度的大小输出查询结果,是一种模糊查询;能挖掘出漏洞数据之间暗含的模式和规律,为漏洞数据的进一步应用提供基础。
文档编号G06F21/00GK102446254SQ20111045235
公开日2012年5月9日 申请日期2011年12月30日 优先权日2011年12月30日
发明者刘彦钊, 刘晖, 刘林, 吴润浦, 张磊, 彭涛, 易锦, 曹伟, 赵向辉, 韩波 申请人:中国信息安全测评中心, 瑞达信息安全产业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1