基于FPGA的远程漏洞高速扫描主机及扫描方法技术

技术编号:6006569 阅读:312 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及基于FPGA的远程漏洞高速扫描主机及扫描方法,用FPGA分担了CPU的工作,提高远程漏洞扫描速度和准确率。该扫描主机由主机存活探测模块、存活主机漏洞结果库、存活主机知识库存放模块、漏洞插件扫描模块和漏洞规则库模块构成,其中存活主机探测模块通过TCPconnect扫描与远程目标主机的端口进行连接,若连接成功则获取此主机开放端口的信息,形成该主机的知识库,将此主机的知识库存放到FPGA的存活主机知识库存放模块,FPGA启动漏洞插件扫描模块,通过对该主机知识库的内容和漏洞规则库模块进行高速扫描匹配,若匹配成功,则该漏洞存在,然后将该漏洞的信息存放到存活主机漏洞结果库里,供安全管理人员参考。

【技术实现步骤摘要】

本专利技术涉及一种基于FPGA的远程漏洞高速扫描主机及扫描方法,属于计算机网络

技术介绍
在网络安全形势日益严峻的情况下,网络防护重点逐渐从被动防御转为主动防御,即采取远程漏洞扫描技术,主动检测远程主机系统中出现的漏洞,及时采取应对措施, 防患于未然。没有及时有效且高速的远程漏洞扫描,安全防范将无从谈起。远程漏洞高速扫描方法是一种自动检测远程主机安全性弱点的方法。通过使用该方法,系统管理员能够发现所维护的服务器的各种TCP端口的分配、提供的服务、软件版本和这些服务及软件呈现在网络上的安全漏洞。从而在计算机网络系统安全保卫战中做到有的放矢,及时修补漏洞,构筑坚固的安全长城。现在市面上有多种远程漏洞扫描方法,由于都是基于PC机上运行的,扫描速度依赖于CPU的速度,而CPU需要协调各项系统运行任务,分配给远程扫描的资源被大大弱化, 这个导致它们在执行远程扫描时耗费较多等待时间,导致连接远程主机相应端口时出现超时现象,从而无法准确获得该端口上运行了哪些服务,存在哪些漏洞,出现漏报情况。针对目前主流PC运算能力有限,所有工作都由CPU处理导致速度慢的问题,需要将远程漏洞高速扫描的部分工作分担给其它专业部件执行,分工协作,提高扫描速度和准确率,供安全管理人员参考。
技术实现思路
本专利技术的目的在于弥补现有实现方法的局限性,提供一种基于FPGA的远程漏洞高速扫描主机及扫描方法,由CPU负责扫描远程目标机器中存活的主机及开放端口的信息,形成该主机开放端口的知识库,而FPGA高性能运算PCI卡利用该主机的开放端口知识库和漏洞规则库模块进行高速扫描匹配,大大提高远程扫描速度和准确率。本专利技术是通过以下技术方案实现的,该扫描主机包括存活主机探测模块、存活主机漏洞结果库、存活主机知识库存放模块、漏洞插件扫描模块和漏洞规则库模块,所述存活主机探测模块和存活主机漏洞结果库由CPU操作,其中存活主机探测模块通过TCP connect扫描与远程目标主机的端口进行连接,若连接成功表示此主机是活动的,然后获取此主机开放端口的信息,形成该主机的知识库,最后将此主机的知识库通过PCI接口存放到FPGA的存活主机知识库存放模块,FPGA启动漏洞插件扫描模块,通过对该主机知识库的内容和漏洞规则库模块进行高速扫描匹配,若匹配成功,则该漏洞存在,然后将该漏洞的信息存放到存活主机漏洞结果库里,供安全管理人员参考。扫描主机包含的存活主机探测模块和存活主机漏洞结果库是由CPU操作的,其中存活主机探测模块是新添加的功能模块,主要由CPU调用此模块探测远程目标主机,判断哪些主机是活动的,以避免不必要的空扫描,然后再由FPGA对该活动的主机进行漏洞扫3描。所述基于FPGA的远程漏洞高速扫描方法如下。(1)存活主机探测模块的工作流程为由CPU操作存活主机探测模块通过TCP connect扫描与远程目标主机的广IOM或者广65535端口进行连接,它是利用TCP的完全连接方式,通过发送报文段连接到目标计算机上,完成一次完整的三次握手过程。如果端口处于侦听状态,那么该连接就能成功返回,表示此主机是活动的,然后获取此主机开放端口的信息,形成该主机的知识库,最后将此主机的知识库通过PCI接口存放到FPGA的存活主机知识库存放模块。(2) FPGA启动漏洞插件扫描具体流程为a.通过FPGA启动漏洞插件扫描模块,根据该主机知识库的内容,调用获取主机详细信息的插件来获取主机名、操作系统和MAC地址信息。b.根据a步获取的主机操作系统的信息,自动选择相应类型的漏洞扫描插件,形成扫描该主机的插件队列。c. FPGA通过b步形成的插件队列结合该主机知识库的内容,扫描相应开放端口, 将从端口获取的信息与漏洞规则库模块进行高速扫描匹配,若匹配成功,则该漏洞存在,转入d操作,否则转入e操作。d.根据c步匹配成功获得的漏洞信息,保存到存活主机漏洞结果库里,供安全管理人员参考。e.若FPGA扫描队列里还有未扫描的插件,则转入c操作。本专利技术是一种利用FPGA高性能运算PCI卡分担CPU的部分工作的远程漏洞高速扫描方法,将原来由CPU在所有存活主机探测结束后做的漏洞扫描工作转由FPGA单独来完成,CPU和FPGA相互独立协调工作,提高了整体探测扫描速度和准确率。附图说明图1是本专利技术扫描主机的原理图。图2是本专利技术的存活主机探测流程图。图3是本专利技术的FPGA启动漏洞插件扫描流程图。具体实施例方式以下将对192. 168. 1. 1-192. 168. 1. 10网段进行扫描为例,通过对该网段进行扫描的具体操作来进一步描述本专利技术的基于FPGA的远程漏洞高速扫描方法。 如图1,本专利技术的带FPGA的扫描主机由CPU和FPGA协同工作,用户启动对该网段的扫描任务后,CPU调用存活主机探测模块。FPGA是一块FPGA高性能运算PCI卡,工作时插在计算机的PCI插槽上,在操作系统下的驱动和应用软件的控制下,实现高速运算;其传输速度快,功能和扩展性强,可编程性强,可以根据不同的应用,设计相应的应用软件实现不同的运算功能。 本专利技术的扫描主机包括存活主机探测模块、存活主机漏洞结果库、存活主机知识库存放模块、漏洞插件扫描模块和漏洞规则库模块,所述存活主机探测模块和存活主机漏洞结果库由CPU操作,其中CPU操作存活主机探测模块通过TCP connect扫描与远程目标主机的端口进行连接,若连接成功表示此主机是活动的,然后获取此主机开放端口的信息, 形成该主机的知识库,最后将此主机的知识库通过PCI接口存放到FPGA的存活主机知识库存放模块,FPGA启动漏洞插件扫描模块,通过对该主机知识库的内容和漏洞规则库模块进行高速扫描匹配,若匹配成功,则漏洞存在,然后将该漏洞的信息存放到存活主机漏洞结果库里。如图2所示,存活主机探测模块的主要流程为由CPU操作存活主机探测模块通过 TCP connect扫描与远程目标主机的广IOM或者广65535端口进行连接,它是利用TCP的完全连接方式,通过发送报文段连接到目标计算机上,完成一次完整的三次握手过程。如果端口处于侦听状态,那么该连接就能成功返回,表示此主机是活动的,然后获取此主机开放端口的信息,形成该主机的知识库,最后将此主机的知识库通过PCI接口存放到FPGA的存活主机知识库存放模块。把该网段中所有活动的主机都探测出来(存活的主机有192. 168. 1. 1和 192. 168. 1. 5),去除非存活的主机,这样本次扫描任务中减少了对非存活主机的扫描操作, 从而提高了工作效率,然后探测出存活主机的开放端口上开启的服务,形成开放端口知识库(192. 168. 1. 1的知识库和192. 168. 1. 5的知识库),将该知识库存放到FPGA的存活主机知识库存放模块中,然而FPGA根据知识库的内容启动漏洞插件扫描模块。如图3所示,FPGA启动漏洞插件扫描的主要流程为a.通过FPGA启动漏洞插件扫描模块,根据该主机知识库的内容,调用获取主机详细信息的插件来获取主机名、操作系统和MAC地址信息。所述插件是一种遵循一定规范的应用程序接口编写出来的程序。b.根据a获取的主机操作系统的信息,自动选择相应类型的漏洞扫描插件,形成扫描该主机的插件队列。c. FPGA通过b形成的插件队列结本文档来自技高网...

【技术保护点】
1. 基于FPGA的远程漏洞高速扫描主机,其特征是包括:存活主机探测模块、存活主机漏洞结果库、存活主机知识库存放模块、漏洞插件扫描模块和漏洞规则库模块,所述存活主机探测模块和存活主机漏洞结果库由CPU操作,其中存活主机探测模块通过TCP connect扫描与远程目标主机的端口进行连接,若连接成功表示此主机是活动的,然后获取此主机开放端口的信息,形成该主机的知识库,最后将此主机的知识库通过PCI接口存放到FPGA的存活主机知识库存放模块,FPGA启动漏洞插件扫描模块,通过对该主机知识库的内容和漏洞规则库模块进行高速扫描匹配,若匹配成功,则漏洞存在,然后将该漏洞的信息存放到存活主机漏洞结果库里。

【技术特征摘要】

【专利技术属性】
技术研发人员:袁宝弟王永忠施林林陈相云
申请(专利权)人:无锡市同威科技有限公司
类型:发明
国别省市:32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1