论文部分内容阅读
随着计算机及互联网技术的飞速发展,互联网已成为国家重要的信息基础设施。与此同时,互联网作为一个运行系统及社会公共环境,其所面对的和隐藏在其中的安全威胁也越来越复杂、越来越严重。安全漏洞是构成网络安全威胁的重要原因,网络入侵、大规模蠕虫传播、系统拒绝服务等问题多是由安全漏洞所引发。为了降低安全漏洞带来的风险,增加对漏洞威胁的预警能力,提高对安全漏洞进行管理及控制的能力,很多国家安全机构和网络安全组织都建立了漏洞库。但是各个漏洞库收集的漏洞并不全面,对漏洞的缺陷描述也不尽相同。本文针对目前漏洞库信息庞大、漏洞信息不全面、漏洞描述欠缺等问题,提出可以整合各个漏洞库的漏洞垂直搜索引擎系统。为了实现漏洞垂直搜索引擎系统,本文设计了系统的整体框架流程,并围绕整体框架的各个模块分别进行了研究,如爬行模块,索引模块,检索模块、中文分词模块等。在爬行模块采用站长提交方式建立初始URL集,并采用广度优先的遍历方式访问网页信息,以提高搜索引擎的爬行效率。由于本文所设计的漏洞搜索引擎对排序结果有比较高的要求,所以采用向量模型和链接分析相结合的方法,即增加漏洞信息field和设置文档boost,使漏洞搜索引擎的排序结果达到公平合理的效果。在中文分词模块,使用的是IK_CAnaylzer中文分析器,这是因为它是采用基于字典分词技术,针对中文文本实现了正反向全切分和正反向最大匹配。用户界面使用JSP技术完成动态网页生成。本搜索引擎为了方便用户使用,也提供了网页快照功能。本文实现的主要研究成果为:(1)根据PageRank算法在垂直搜索引擎中的缺陷和垂直搜索引擎专注、具体、深入的特点,结合漏洞标题和漏洞描述提供大量漏洞信息的特点,提出对搜索结果进行合理、公平排序的算法。(2)深入研究垂直搜索引擎框架及Nutch的工作流程,使用站长提交方式建立抓取系统的URL集,使用Nutch插件机制实现文本分析、索引系统和搜索系统,从而实现基于Nutch的漏洞垂直搜索引擎系统。(3)相对于Google、Baidu等通用搜索引擎而言,漏洞垂直搜索引擎虽然在检索结果数量上有些逊色,但在结果的精确度和相关性排序上,垂直搜索引擎有明显的优势,检索结果数量的减少在很大程度上也缩减了检索时间。