基于RESTfulWeb服务的网络漏洞扫描系统及方法

文档序号:7802133阅读:173来源:国知局
基于RESTful Web服务的网络漏洞扫描系统及方法
【专利摘要】本发明提供了基于RESTful?Web服务的网络漏洞扫描系统及方法,属于网络漏洞检测【技术领域】。本系统包括命令解析模块、管理模块和至少一个扫描模块;所述命令解析模块给用户提供调用该系统的REST接口、监听用户的命令、向管理模块发送命令、接收管理模块的响应、回复用户和生成主流格式的报告;所述管理模块负责监听命令解析模块的命令、持久化存储该系统的所有信息、将扫描任务根据功能点拆分成子任务、将子任务发送给扫描模块和接收扫描模块发来的扫描结果;所述扫描模块负责监听管理模块发来的扫描子任务、启动线程调用相应插件扫描网络漏洞和将扫描结果发送给管理模块。
【专利说明】基于RESTfuI Web服务的网络漏洞扫描系统及方法
【技术领域】
[0001]本发明属于网络漏洞检测【技术领域】,具体涉及基于RESTful Web服务的网络漏洞扫描系统及方法。
【背景技术】
[0002]网络安全从其本质上来讲就是网络上的信息安全,是指网络系统的硬件、软件及其系统中的数据受到保护,不因为偶然的或者恶意的因素而遭到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断。从广义来说,凡是涉及到网络上信息的保密性、完整性、可用性、真实性和可控性的相关技术和理论都是网络安全所要研究的领域。网络安全涉及的内容既有技术方面的问题,也有管理方面的问题,两方面相互补充。缺一不可。技术方面主要侧重于防范外部非法用户的攻击,管理方面则侧重于内部人为因素的管理。
[0003]漏洞扫描系统能够预先评估和分析系统中的安全问题,以找出安全隐患和可以被黑客利用的漏洞,系统管理员掌握它以有效得防范黑客入侵,从而增强系统的安全性。因此漏洞扫描是保证系统和网络安全必不可少的手段。
[0004]网络安全的现有技术按照主被动分为两类,一类是在被攻击过程中或者被攻击之后的检测技术,属于被动的检测技术,这一类技术包括入侵检测技术和防火墙技术、病毒检测技术;另一类技术则是在攻击之前的检测技术,属于主动检测技术,安全扫描技术就属于这种类型。通过漏洞扫描,能够发现主机或网络设备中开放的服务及软件呈现在网络上的安全隐患。漏洞扫描技术是一种基于网络检测远程目标系统脆弱性的技术,是加强计算机安全和网络安全的一个重要手段。扫描的对象被称为漏洞,即计算机系统在硬件、软件、协议的具体实现或系统安全策略上存在的能够被攻击者利用从而在未被授权的情况下对系统进行访问和破坏的缺陷。
[0005]安全扫描技术是指手工地或使用特定的自动软件工具,即安全扫描器,对系统风险进行评估,寻找可能对系统造成损害的安全漏洞。扫描主要涉及系统和网络两个方面,系统扫描侧重单个用户系统的平台安全性以及基于此平台的应用系统的安全,而网络扫描侧重于系统提供的网络应用和服务及相关的协议分析。扫描的主要目的是通过一定的手段和方法发现系统或网络潜在的隐患,以利于己方及时修补或发动对敌方系统的攻击。同时,自动化的安全扫描器要对目标系统进行漏洞检测和分析,提供详细的漏洞描述,并针对安全漏洞提出修复建议和安全策略,生成完整的安全性分析报告,为网络管理员完善系统提供重要依据。有两种主要类型的安全扫描器,本地扫描器和网络扫描器。本地扫描器和待检查系统运行于同一结点,执行自身检查。网络扫描器:扫描器和待检查系统运行于不同结点,通过网络远程探测目标结点,寻找安全漏洞。

【发明内容】

[0006]本发明的目的在于解决上述现有技术中存在的难题,提供一种基于RESTful Web服务的网络漏洞扫描系统及方法,以实现对网络漏洞的扫描。[0007]本发明是通过以下技术方案实现的:
[0008]基于RESTful Web服务的网络漏洞扫描系统,包括命令解析模块、管理模块和至少一个扫描模块;
[0009]所述命令解析模块给用户提供调用该系统的REST接口、监听用户的命令、向管理模块发送命令、接收管理模块的响应、回复用户和生成主流格式的报告;
[0010]所述管理模块负责监听命令解析模块的命令、持久化存储该系统的所有信息、将扫描任务根据功能点拆分成子任务、将子任务发送给扫描模块和接收扫描模块发来的扫描结果;
[0011]所述扫描模块负责监听管理模块发来的扫描子任务、启动线程调用相应插件扫描网络漏洞和将扫描结果发送给管理模块。
[0012]所述用户的命令包括:任务下发、系统状态查询、任务状态查询和任务报告获取;
[0013]所述命令解析模块接收到用户的命令后根据命令的类别提取出相应参数,然后发送相应的命令到管理模块。
[0014]所述命令解析模块收到管理模块的响应后会根据扫描结果(即漏洞详情)构造响应给用户:如果是任务下发、系统状态查询或任务状态查询,命令解析模块仅做合法性判断后就回复给用户;如果是任务报告获取,命令解析模块则根据哈希格式的结果创建HTML、PDF或XML格式的扫描报告。
[0015]所述管理模块接收到命令后会先判断请求的类别,如果是任务下发请求,管理模块先存储任务的相关信息,然后把扫描策略拆分成独立的功能点,然后给每个功能点创建一个子任务分发给扫描模块;如果是系统状态查询,管理模块从持久化存储中查询当前正在运行的任务,然后查询所在主机的硬件使用情况,然后把这些信息作为响应回复给命令解析模;如果是任务状态查询,管理模块根据持久化存储中的功能点、IP总数以及扫描结果数计算出当前任务的进度并把这些信息作为响应返回给命令解析模块;如果是任务报告获取,管理模块从持久化存储中取出该任务的所有扫描结果,并将扫描结果的哈希格式作为响应发送给命令解析模块。
[0016]一种基于RESTful Web服务的网络漏洞扫描方法,所述方法包括以下步骤:
[0017]步骤S101,用户向所述基于RESTful Web服务的网络漏洞扫描系统发送扫描请求;所述扫描请求中包括扫描目标和扫描策略;
[0018]步骤S102,命令解析模块接收到用户的扫描请求后解析所述扫描请求,提取扫描请求中的扫描目标和扫描策略;
[0019]步骤S103,管理模块存储扫描任务的相关信息,把扫描任务根据功能点拆分成子任务发送给扫描模块;
[0020]步骤S104,扫描模块收到扫描子任务后启动线程来调用相应插件来执行扫描操作,如果扫描模块有扫描结果发送给管理模块,管理模块将把扫描结果存储在持久化存储中,然后将扫描结果返回给命令解析模块,命令解析模块把测试报告返回给用户。
[0021]所述步骤SlOl中用户是通过所述REST接口调用所述基于RESTful Web服务的网络漏洞扫描系统的。
[0022]所述REST接口包括任务下发接口、系统状态查询接口、任务状态查询接口和任务报告获取接口。[0023]所述扫描目标为网络设备的IP的集合;
[0024]所述扫描策略是基于RESTful Web服务的网络漏洞扫描系统上已有的扫描策略的名字,扫描策略包含至少一个功能点,每个功能点有至少一个扫描插件提供支持;只要是符合系统要求的扫描插件,扫描模块就能够在不需要做任何改动的情况下调用扫描插件进行网络漏洞扫描。
[0025]所述步骤S103中所述管理模块存储扫描任务的相关信息具体如下:管理模块在持久化存储中存储扫描任务的相关信息,包括任务名、任务ID、扫描目标、扫描策略、扫描结果;初始的时候,所述扫描结果的信息为空。
[0026]所述步骤S103中所述把扫描任务根据功能点拆分成子任务发送给扫描模块是通过基于SOAP的RPC远程过程调用接口把信息发送到扫描模块的。
[0027]所述步骤S104中所述扫描模块收到扫描子任务后启动线程来调用相应插件来执行扫描操作的具体步骤如下:
[0028]发现目标主机或网络:通过网络通信方式测试,判断目标主机或网络是否能够进行网络通信,若目标主机或网络无法通信则无法扫描漏洞;
[0029]端口扫描:探测系统TCP/UDP各端口的开放状态;
[0030]进一步搜集目标的信息:包括操作系统类型、运行的服务以及服务软件的版本;如果目标是一个网络,则进一步发现该网络的拓扑结构、路由设备及各主机的信息;
[0031]根据搜集到的信息判断或者进一步测试系统是否存在安全漏洞;
[0032]收集完目标的漏洞之后扫描模块把扫描结果发送给管理模块。
[0033]所述步骤S104中所述命令解析模块把测试报告返回给用户是这样实现的:
[0034]命令解析模块根据扫描结果生成扫描报告,把扫描报告发送给用户;
[0035]命令解析模块能够生成HTML、PDF或XML主流报告格式。
[0036]与现有技术相比,本发明的有益效果是:利用本发明,用户可以根据自己的需求导入相关插件,而不仅仅是局限于使用系统自带的插件;用户可以选择不同格式的扫描报告;用户这个概念不仅仅是指人,还包括其他应用,第三方应用也可以方便的使用网络漏洞扫描系统。
【专利附图】

【附图说明】
[0037]图1为本发明方法的实现流程示意图;
[0038]图2为本发明具体实施例的消息流程示意图;
[0039]图3为本发明系统结构示意图。
【具体实施方式】
[0040]下面结合附图对本发明作进一步详细描述:
[0041]一种基于RESTful Web服务的网络漏洞扫描方法及系统,所述方法包括下述步骤:
[0042]命令解析模块接收来自用户的请求,用户有四种请求:任务下发、系统状态查询、任务状态查询、任务报告获取。
[0043]命令解析模块接收到请求后根据请求的类别提取出相应参数。[0044]任务下发请求需要包含扫描目标和扫描策略。扫描目标是若干IP的集合,可以指明起始IP和结束IP来表示一段IPjn 192.168.1.5-192.168.1.40 ;也可以使用网络号来表不一段IP,如192.168.1.0/24 ;多段IP之间使用逗号分隔。扫描策略是扫描器上已有的扫描策略的名字,扫描策略可以包含多个功能点,如扫描FTP端口开放和扫描TELNET弱口令。
[0045]命令解析模块解析完后发送相应的请求到管理模块。
[0046]命令解析模块收到管理模块的响应后会根据结果构造响应给用户。如果是任务下发、系统状态查询或任务状态查询,命令解析模块仅做简单的处理就回复给用户,如果是任务报告获取,命令解析模块会根据哈希格式的结果创建HTML、PDF, XML格式的扫描报告,用户可以在发送请求的时候指定报告格式。
[0047]管理模块会负责所有的数据持久化存储。管理模块接收到请求后会先判断请求的类别。
[0048]如果是任务下发请求,管理模块先存储任务的相关信息,然后把扫描策略拆分成独立的功能点,然后给每个功能点创建一个子任务分发给扫描模块,扫描模块根据功能点调用响应的插件对目标网络依次进行扫描,每扫完一个目标网络设备扫描模块都会把扫描结果发送给管理模块。
[0049]如果是系统状态查询,管理模块会从持久化存储中查询当前正在运行的任务,然后查询所在主机的硬件使用情况,然后把这些信息回复给命令解析模,命令解析模块再返回给用户。
[0050]如果是任务状态查询,管理模块会根据持久化存储中的功能点、IP总数以及扫描结果数计算出当前任务的进度并返回给命令解析模块。
[0051]如果是任务报告获取,管理模块从持久化存储中取出该任务的所有扫描结果以哈希的形式发送给命令解析模块。
[0052]扫描模块收到扫描子任务会启动线程来调用相应插件来执行扫描操作,扫描过程具体步骤如下(其中,插件相当于说明书,扫描模块根据说明书完成扫描):
[0053]第一阶段:发现目标主机或网络。通过ICMP ECHO等简单的网络通信方式测试,判断目标系统是否可以进行网络通信。这是漏洞扫描的基础,只有主机可以进行网络通信的情况下,才会执行后续的扫描操作,否则无法扫描主机的漏洞。
[0054]第二阶段:端口扫描。通过TCP SYN、TCP Connect扫描及UDP扫描等方法探测系统(即目标主机或网络)TCP/UDP各端口的开放状态。根据这些端口开放信息,结合协议分析及服务识别技术,可以准确地判断目标主机运行的服务及对应的端口,从而提高漏洞判定的准确性和效率。
[0055]第三阶段:进一步搜集目标信息。包括操作系统类型、运行的服务以及服务软件的版本等。如果目标是一个网络,还可以进一步发现该网络的拓扑结构、路由设备及各主机的信息。
[0056]第四阶段:根据搜集到的信息判断或者进一步测试系统(可以判断运行的服务是否存在漏洞,使用密码字典可以测试服务是否存在弱口令)是否存在安全漏洞。
[0057]本发明的基本思想为:用户通过REST接口来调用漏洞扫描器(即本发明的系统);漏洞扫描器的命令解析模块接收到用户的扫描请求后提取出命令中的扫描目标和扫描策略,然后把扫描请求下发到扫描模块;扫描模块根据扫描目标和扫描策略对目标主机进行漏洞扫描,扫描完毕后把扫描结果返回给命令解析模块;命令解析模块把测试报告返回给用户。
[0058]为使本发明的目的、技术方案和优点更加清楚明白,以下举实施例并参照附图,对本发明进一步详细说明。
[0059]图1示出了本发明基于插件的网络漏洞扫描的方法的实现流程,如图1所示,本发明实现基于插件的网络漏洞扫描的方法包括下述步骤:
[0060]步骤S101,用户通过调用基于插件的网络漏洞扫描系统的REST接口向发送任务下发命令。
[0061]本步骤中,任务下发命令中必须包括扫描目标和扫描策略。
[0062]步骤S102,命令解析模块解析用户发送的命令。
[0063]本步骤中,命令解析模块要提取命令中的扫描目标和扫描策略。
[0064]扫描目标是多个IP的集合,可以有三种表示形式:用起始IP和结束IP来表示一整段 IP,如 192.168.1.50-192.168.1.100 ;用网络号来表示一段 IP,如 192.168.2.0/25 ;单个的IP,如192.168.1.123。在一个扫描目标中这三种表不方法都可以使用,不同表示方法之间用逗号分隔,如 target = 192.168.1.50-192.168.1.100,192.168.2.0/25,192.168.1.123。
[0065]扫描策略必须是扫描器上已有的扫描策略的名字,扫描策略可以包含多个功能点,如扫描FTP端口开放和扫描TELNET弱口令。每个功能点有若干扫描插件(这些扫描插件都是系统中必须存在的才可以使用)提供支持。只要是符合系统要求的扫描插件,扫描模块就可以在不需要做任何改动的情况下调用扫描插件进行网络漏洞扫描。系统可以支持NASL(Nessus Attack Scripting Language)插件或自主开发的插件,例如扫描telnet、ssh、ftp等服务的弱口令。
[0066]步骤S103,管理模块存储任务相关信息,把扫描任务下发至扫描模块,存储扫描模块发送过来的扫描结果。
[0067]本步骤中,管理模块在持久化存储中存储任务的相关信息,如任务名、任务ID、扫描目标、扫描策略、扫描结果。最开始的时候,任务的扫描结果为空。
[0068]然后管理模块把扫描任务根据功能点拆分成子任务发送给扫描模块。如果扫描模块有扫描结果发送给管理模块,管理模块会把扫描结果存储在持久化存储中。
[0069]步骤S104,扫描模块收到扫描子任务后启动线程来调用相应插件来执行扫描操作,扫描过程具体步骤如下:
[0070]发现目标主机或网络。通过ICMP ECHO等简单的网络通信方式测试,判断目标系统是否可以进行网络通信。若目标系统无法通信则无法扫描主机的漏洞。
[0071]端口扫描。通过TCP SYN,TCP Connect扫描及UDP扫描等方法探测系统TCP/UDP各端口的开放状态。根据这些端口开放信息,结合协议分析及服务识别技术,可以准确地判断目标主机运行的服务及对应的端口。
[0072]进一步搜集目标信息。包括操作系统类型、运行的服务以及服务软件的版本等。如果目标是一个网络,还可以进一步发现该网络的拓扑结构、路由设备及各主机的信息。
[0073]根据搜集到的信息判断或者进一步测试系统是否存在安全漏洞。[0074]收集完目标的漏洞之后扫描模块会把扫描结果发送给管理模块。
[0075]图2示出了本发明基于插件的网络漏洞扫描的具体实施例的消息流程,如图2所示,本实施例中基于插件的网络漏洞扫描的具体流程如下:
[0076]第一步,用户通过调用REST接口向命令解析模块发送下发任务请求。
[0077]第二步,命令解析模块在收到用户的请求后开始解析命令。
[0078]如果命令不符合要求,命令解析模块会直接回复用户并通知用户调用失败的原因。为了保持消息流程图的简洁易懂,该异常过程没有在消息流程图中表示出来。
[0079]如果命令符合要求,命令解析模块会把扫描任务发送到管理模块。
[0080]第三步,管理模块收到扫描任务会为任务创建任务ID来唯一地标识任务,并将任务相关信息存储在持久化存储中。以上步骤若成功,管理模块会向命令解析发送任务创建成功的消息。若有任何失败,管理模块会删除任务所有信息并向命令解析模块发送创建失败的原因。
[0081 ] 第四步,命令解析模块向用户发送任务创建结果。
[0082]一般地,以上四条消息会严格按照上述顺序出现。
[0083]第五步,如果第三步中创建任务成功,管理模块将扫描任务按其功能点将扫描任务拆分成子任务下发给扫描模块。
[0084]第六步,扫描模块接收到扫描子任务后启动线程调用相应扫描插件来执行扫描任务。线程启动动作完成后,扫描模块会回复管理模块启动时候成功。
[0085]若启动失败,管理模块会重新发送扫描子任务,即第五步和第六步可能会重复出现。
[0086]第七步,扫描模块依次扫描每个IP,当一个IP扫描完成后,扫描模块就会把结果发送给管理模块。
[0087]第八步,管理模块收到扫描模块的结果会向扫描模块发送确认信息。
[0088]一般地,以上四条消息会严格按照上述顺序出现,并且出现在第三步之后。
[0089]第九步,用户向命令解析模块发送任务报告获取命令,命令中包含一个任务名以及用户想要的扫描报告的格式。
[0090]第十步,命令解析模块在收到任务报告获取命令后,将该请求发送至管理模块。
[0091]第十一步,管理模块收到请求后,会在持久化存储中查询任务的扫描结果。如果扫描结果存在,管理模块会将扫描结果发送给命令解析模块。如果扫描结果不存在,管理模块会告知命令解析模块愿意,如任务不存在,或任务当前还没有扫描结果。
[0092]第十二步,命令解析模块收到管理模块的扫描结果后,根据用户要求的格式生成扫描报告并发送给用户。
[0093]一般地,以上四条消息会严格按照上述顺序出现。管理模块收到第十步的消息的时候任务还未创建,用户会收到任务不存在的结果;如果任务已经创建但是还未执行完,用户会得到部分扫描结果以及任务进度。
[0094]第十三步,用户向命令解析模块发送任务进度查询命令,命令中包含一个任务名。
[0095]第十四步,命令解析模块向管理模块发送任务进度查询命令。
[0096]第十五步,管理模块先查询任务是否存在,若存在再查询任务的进度,并将结果发送给命令解析模块。[0097]第十六步,命令解析模块将结果发送给用户。
[0098]一般地,以上四条消息会严格按照上述顺序出现。
[0099]第十七步,用户向命令解析模块发送系统进度查询命令。
[0100]第十八步,命令解析模块向管理模块发送系统进度查询命令。
[0101]第十九步,管理模块查询当前未完成的任务以及系统硬件资源使用情况,并将结果发送给命令解析模块。
[0102]第二十步,命令解析模块将结果发送给用户。
[0103]一般地,以上四条消息会严格按照上述顺序出现。
[0104]图3示出了本发明基于插件的漏洞扫描的系统结构,如图3所示,该结构包括一个命令解析模块01、一个管理模块02和至少一个扫描模块03。用户理论上不属于该系统,但是会与系统有密切的交互。
[0105]命令解析模块01会给用户提供调用系统的REST接口 ;监听用户的命令;向管理模块02发送命令;接收管理模块02 ;回复用户;生成主流格式的报告。
[0106]管理模块02负责监听命令解析模块01的命令;持久化存储系统的所有信息;将扫描任务根据功能点拆分成子任务;将子任务发送给扫描模块03 ;接收扫描模块03发来的扫描结果。
[0107]扫描模块03负责监听管理模块发来的扫描子任务;启动线程调用相应插件扫描网络漏洞;将扫描结果发送给管理模块02。
[0108]本发明提供了一种基于RESTful Web服务的网络漏洞扫描方法及系统,所述方法包括:用户通过REST接口来调用漏洞扫描器,漏洞扫描器的命令解析模块接收到用户的扫描请求后提取出命令中的扫描目标和扫描策略,然后把扫描请求下发到扫描模块,扫描模块根据扫描目标和扫描策略对目标主机进行漏洞扫描,扫描完毕后把扫描结果返回给命令解析模块,命令解析模块再把测试报告返回给用户。本发明通过根据用户定制的扫描目标和扫描策略,把扫描请求下发至管理模块,管理模块把扫描策略细分为功能点,把每个功能点作为一个子任务发送给扫描模块,扫描模块根据功能点调用对应的扫描插件对扫描目标进行漏洞扫描,实现了网络漏洞的检测,有助于网络管理员发现网络的漏洞,在发现安全事件前及时修补。
[0109]上述技术方案只是本发明的一种实施方式,对于本领域内的技术人员而言,在本发明公开了应用方法和原理的基础上,很容易做出各种类型的改进或变形,而不仅限于本发明上述【具体实施方式】所描述的方法,因此前面描述的方式只是优选的,而并不具有限制性的意义。
【权利要求】
1.一种基于RESTful Web服务的网络漏洞扫描系统,其特征在于:所述系统包括命令解析模块、管理模块和至少一个扫描模块; 所述命令解析模块给用户提供调用该系统的REST接口、监听用户的命令、向管理模块发送命令、接收管理模块的响应、回复用户和生成主流格式的报告; 所述管理模块负责监听命令解析模块的命令、持久化存储该系统的所有信息、将扫描任务根据功能点拆分成子任务、将子任务发送给扫描模块和接收扫描模块发来的扫描结果; 所述扫描模块负责监听管理模块发来的扫描子任务、启动线程调用相应插件扫描网络漏洞和将扫描结果发送给管理模块。
2.根据权利要求1所述的基于RESTfulWeb服务的网络漏洞扫描系统,其特征在于:所述用户的命令包括:任务下发、系统状态查询、任务状态查询和任务报告获取; 所述命令解析模块接收到用户的命令后根据命令的类别提取出相应参数,然后发送相应的命令到管理模块; 所述命令解析模块收到管理模块的响应后会根据扫描结果构造响应给用户:如果是任务下发、系统状态查询或任务状态查询,命令解析模块仅做合法性判断后就回复给用户;如果是任务报告获取,命令解析模块则根据哈希格式的结果创建HTML、PDF或XML格式的扫描?艮告。
3.根据权利要求2所述的基于RESTfulWeb服务的网络漏洞扫描系统,其特征在于:所述管理模块接收到命令后会先判断请求的类别,如果是任务下发请求,管理模块先存储任务的相关信息,然后把扫描策略拆分成独立的功能点,然后给每个功能点创建一个子任务分发给扫描模块;如果是系统状态查询,管理模块从持久化存储中查询当前正在运行的任务,然后查询所在主机的硬件使用情况,然后把这些信息作为响应回复给命令解析模;如果是任务状态查询,管理模块根据持久化存储中的功能点、IP总数以及扫描结果数计算出当前任务的进度并把这些信息作为响应返回给命令解析模块;如果是任务报告获取,管理模块从持久化存储中取出该任务的所有扫描结果,并将扫描结果的哈希格式作为响应发送给命令解析模块。
4.一种利用权利要求1至3之一所述的基于RESTful Web服务的网络漏洞扫描系统的实现的基于RESTful Web服务的网络漏洞扫描方法,其特征在于:所述方法包括以下步骤: 步骤S101,用户向所述基于RESTful Web服务的网络漏洞扫描系统发送扫描请求;所述扫描请求中包括扫描目标和扫描策略; 步骤S102,命令解析模块接收到用户的扫描请求后解析所述扫描请求,提取扫描请求中的扫描目标和扫描策略; 步骤S103,管理模块存储扫描任务的相关信息,把扫描任务根据功能点拆分成子任务发送给扫描模块; 步骤S104,扫描模块收到扫描子任务后启动线程来调用相应插件来执行扫描操作,如果扫描模块有扫描结果发送给管理模块,管理模块将把扫描结果存储在持久化存储中,然后将扫描结果返回给命令解析模块,命令解析模块把测试报告返回给用户。
5.根据权利要求4所述的方法,其特征在于:所述步骤SlOl中用户是通过所述REST接口调用所述基于RESTful Web服务的网络漏洞扫描系统的。
6.根据权利要求5所述的方法,其特征在于:所述REST接口包括任务下发接口、系统状态查询接口、任务状态查询接口和任务报告获取接口。
7.根据权利要求6所述的方法,其特征在于:所述扫描目标为网络设备的IP的集合; 所述扫描策略是基于RESTful Web服务的网络漏洞扫描系统上已有的扫描策略的名字,扫描策略包含至少一个功能点,每个功能点有至少一个扫描插件提供支持;只要是符合系统要求的扫描插件,扫描模块就能够在不需要做任何改动的情况下调用扫描插件进行网络漏洞扫描。
8.根据权利要求4所述的方法,其特征在于:所述步骤S103中所述管理模块存储扫描任务的相关信息具体如下:管理模块在持久化存储中存储扫描任务的相关信息,包括任务名、任务ID、扫描目标、扫描策略、扫描结果;初始的时候,所述扫描结果的信息为空。
9.根据权利要求4所述的方法,其特征在于:所述步骤S103中所述把扫描任务根据功能点拆分成子任务 发送给扫描模块是通过基于SOAP的RPC远程过程调用接口把信息发送到扫描模块的。
10.根据权利要求4所述的方法,其特征在于:所述步骤S104中所述扫描模块收到扫描子任务后启动线程来调用相应插件来执行扫描操作的具体步骤如下: 发现目标主机或网络:通过网络通信方式测试,判断目标主机或网络是否能够进行网络通信,若目标主机或网络无法通信则无法扫描漏洞; 端口扫描:探测系统TCP/UDP各端口的开放状态; 进一步搜集目标的信息:包括操作系统类型、运行的服务以及服务软件的版本;如果目标是一个网络,则进一步发现该网络的拓扑结构、路由设备及各主机的信息; 根据搜集到的信息判断或者进一步测试系统是否存在安全漏洞; 收集完目标的漏洞之后扫描模块把扫描结果发送给管理模块; 所述步骤S104中所述命令解析模块把测试报告返回给用户是这样实现的: 命令解析模块根据扫描结果生成扫描报告,把扫描报告发送给用户; 命令解析模块能够生成HTML、PDF或XML主流报告格式。
【文档编号】H04L29/06GK103929429SQ201410169085
【公开日】2014年7月16日 申请日期:2014年4月24日 优先权日:2014年4月24日
【发明者】王玉龙, 苏婷, 苏森, 双锴, 徐鹏 申请人:北京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1