一种漏洞扫描能力测试方法和装置与流程

文档序号:16775224发布日期:2019-02-01 18:40阅读:126来源:国知局
一种漏洞扫描能力测试方法和装置与流程

本说明书涉及互联网技术领域,尤其涉及一种漏洞扫描能力测试方法和装置。



背景技术:

而伴随着计算机网络的高速发展,利用漏洞进行攻击的网络安全事件也日趋严重,攻击危害及影响范围也越来越大,系统漏洞可能对企业和个人造成不可估量的损失。相应的,业界出现了很多漏洞检测工具及产品,可以对主机或者web系统进行漏洞扫描,以便防患于未然。

现有技术中,对漏洞扫描产品的扫描能力测试是通过人工进行的,目前缺少一种工具或产品能够对漏洞扫描系统的扫描能力进行综合的测试评估。



技术实现要素:

针对上述技术问题,本说明书实施例提供一种漏洞扫描能力测试方法和装置,技术方案如下:

根据本说明书实施例的第一方面,提供一种漏洞扫描能力测试方法,该方法包括:

分析待测试扫描系统对虚拟漏洞环境的扫描过程,确定所述扫描过程对被扫描服务的影响程度,其中,虚拟漏洞环境为预先构建的集成不同服务与对应漏洞的虚拟系统;

获取待测试扫描系统对虚拟漏洞环境的漏洞检出结果,将所述漏洞检出结果与所述虚拟漏洞环境的预置漏洞进行对比分析,以确定所述待测试扫描系统的扫描准确度;

根据所述待测试扫描系统在扫描过程中对被扫描服务的影响程度,与所述扫描准确度确定所述待测试扫描系统的漏洞扫描能力。

根据本说明书实施例的第二方面,提供一种漏洞扫描能力测试装置,该装置包括:

扫描过程分析模块:用于分析待测试扫描系统对虚拟漏洞环境的扫描过程,确定所述扫描过程对被扫描服务的影响程度,其中,虚拟漏洞环境为预先构建的集成不同服务与对应漏洞的虚拟系统;

扫描结果分析模块:用于获取待测试扫描系统对虚拟漏洞环境的漏洞检出结果,将所述漏洞检出结果与所述虚拟漏洞环境的预置漏洞进行对比分析,以确定所述待测试扫描系统的扫描准确度;

扫描能力确定模块:用于根据所述待测试扫描系统在扫描过程中对被扫描服务的影响程度,与所述扫描准确度确定所述待测试扫描系统的漏洞扫描能力。

本说明书实施例所提供的技术方案,先虚拟化漏洞集成环境,再通过识别待测试扫描系统在扫描过程中的扫描行为确定待测试扫描系统的漏洞扫描可能造成的影响,最后综合所述待测试扫描系统在扫描过程中对被扫描服务的影响程度,与漏洞检出的准确度即可综合评定待测试扫描系统的扫描能力。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书实施例。

此外,本说明书实施例中的任一实施例并不需要达到上述的全部效果。

附图说明

为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。

图1是本说明书一示例性实施例示出的用户漏洞扫描能力测试方法的一种流程图;

图2是本说明书一示例性实施例示出的虚拟漏洞环境的一种示意图;

图3是本说明书一示例性实施例示出的用户漏洞扫描能力测试方法的另一种流程图;

图4是本说明书一示例性实施例示出的用户漏洞扫描能力测试装置的一种示意图;

图5是本说明书一示例性实施例示出的一种计算机设备的结构示意图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。

在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

而伴随着计算机网络的高速发展,利用漏洞进行攻击的网络安全事件也日趋严重,攻击危害及影响范围也越来越大,系统漏洞可能对企业和个人造成不可估量的损失。相应的,业界出现了很多漏洞检测工具及产品,可以对主机或者web系统进行漏洞扫描,以便防患于未然。

现有技术中,对漏洞扫描产品的扫描能力测试是通过人工进行的,目前缺少一种工具或产品能够对漏洞扫描系统的扫描能力进行综合的测试评估。

针对以上问题,本说明书实施例提供一种漏洞扫描能力测试方法,以及一种用于执行该方法的漏洞扫描能力测试装置,下面对本实施例涉及的漏洞扫描能力测试方法进行详细说明,参见图1所示,该方法可以包括以下步骤:

s101,分析待测试扫描系统对虚拟漏洞环境的扫描过程,确定所述扫描过程对被扫描服务的影响程度,其中,虚拟漏洞环境为预先构建的集成不同服务与对应漏洞的虚拟系统;

具体地,需要预先创建一个利用虚拟化技术来集中管理的漏洞环境,该虚拟漏洞环境中涵盖操作系统、web中间件、数据库等,其中集成了不同应用服务和对应漏洞列表。

参见图2,利用虚拟化技术(openstack、vmware等),容器技术(docker等)等,将多个应用服务集成到一起,并进行统一化管理。需要注意的是,由于不同用户使用的服务不同,相同服务的具体使用版本也可能不同,因此同一种应用服务需要集成它的多个版本,如图中的mysql5.1,mysql5.2,mysql5.3…即为集成的同一种服务的不同版本。

检测一种扫描系统的扫描能力除了需要检测它的扫描结果之外,也需要检测该扫描系统在扫描过程中对被扫描目标的影响程度,例如:一些扫描系统可能会通过发送攻击流量来测试是否存在某些漏洞,但这样的攻击流量可能会对被扫描目标造成比较严重的不良影响。因此,需要确定扫描过程对被扫描服务的影响程度。

为了确定所述扫描过程对被扫描服务的影响程度,可在虚拟漏洞环境的前部部署流量监测装置,在扫描过程中,待测试扫描系统发送的扫描流量先要经过该监测装置,再进入虚拟漏洞环境。

下面对确定扫描过程对被扫描服务的影响程度的方法进行介绍,至少可包括以下方面:

a)对扫描过程中从所述待测试漏洞扫描系统流入所述虚拟漏洞环境的扫描流量进行深度报文检测,确定所述扫描流量中是否存在预定义的针对被扫描服务的危险负载。一些情况下,漏洞检测系统可能会通过对漏洞的攻击确定漏洞是否存在,该部分扫描流量即可能成为危险负载,例如:针对ms12-020漏洞的攻击负载会导致目标系统蓝屏。因此,需要预先定义危险负载,当扫描行为特征符合预定义的特征时,即可判定扫描流量包含该危险负载;

b)记录扫描过程中从所述待测试漏洞扫描系统流入所述虚拟漏洞环境的扫描流量,根据所述扫描流量在单位时间内的报文数量确定发包速率,根据所述扫描流量中的会话数量确定会话峰值;根据所述会话峰值和所述发包速率确定所述扫描流量是否超出被扫描服务的处理能力,这里需要预定义被扫描目标的处理能力阈值,发包速率和会话峰值高于阈值则会对被扫描目标造成过大的处理压力。

c)由扫描能力测试系统主动向虚拟漏洞环境中的被扫描服务发起连接请求,根据连接请求的响应结果确定所述被扫描服务是否可用,根据服务的可用情况判断漏洞扫描系统对服务的影响。

通过上述几种方式进行综合评定,即可确定所述扫描过程对被扫描服务的影响程度。

s102,获取待测试扫描系统对虚拟漏洞环境的漏洞检出结果,将所述漏洞检出结果与所述虚拟漏洞环境的预置漏洞进行对比分析,以确定所述待测试扫描系统的扫描准确度;

将所述漏洞检出结果与所述虚拟漏洞环境的预置漏洞进行对比分析,确定待测试扫描系统的漏洞检出率和漏报、误报结果,进而确定所述待测试扫描系统的扫描准确度。

s103,根据所述待测试扫描系统在扫描过程中对被扫描服务的影响程度,与所述扫描准确度确定所述待测试扫描系统的漏洞扫描能力。

将该漏洞扫描系统在扫描过程中对被扫描目标的影响程度,和扫描结束后的漏洞检出率和漏报、误报情况综合进行评估,最终确定该漏洞扫描系统的能力评估值。具体地,可提供一种基于c/s架构的管理模块,用以处理监测装置记录的数据,接收被测试扫描系统的扫描结果的导入,综合分析生成报告等。

本说明书实施例还提供一种更为具体的漏洞扫描能力测试方法,参见图3所示,该方法可以包括以下步骤:

s301,记录扫描过程中从所述待测试漏洞扫描系统流入所述虚拟漏洞环境的扫描流量;

s302,对所述扫描流量进行深度报文检测,确定所述扫描流量中是否存在预定义的针对被扫描服务的危险负载;

s303,根据所述扫描流量在单位时间内的报文数量确定发包速率,根据所述扫描流量中的会话数量确定会话峰值;

s304,根据所述会话峰值和所述发包速率确定所述扫描流量是否超出被扫描服务的处理能力;

s305,向虚拟漏洞环境中的被扫描服务发起连接请求,根据连接请求的响应结果确定所述被扫描服务是否可用;

s306,将所述漏洞检出结果与所述虚拟漏洞环境的预置漏洞进行对比分析,确定待测试扫描系统的漏洞检出率和漏报、误报结果,进而确定所述待测试扫描系统的扫描准确度;

s307,根据所述待测试扫描系统对被扫描服务的影响程度,与所述扫描准确度确定所述待测试扫描系统的漏洞扫描能力。

相应于上述方法实施例,本说明书实施例还提供一种漏洞扫描能力测试装置,参见图4所示,所述装置可以包括:扫描过程分析模块410,扫描结果分析模块420和扫描能力确定模块430。

扫描过程分析模块410:用于分析待测试扫描系统对虚拟漏洞环境的扫描过程,确定所述扫描过程对被扫描服务的影响程度,其中,虚拟漏洞环境为预先构建的集成不同服务与对应漏洞的虚拟系统;

扫描结果分析模块420:用于获取待测试扫描系统对虚拟漏洞环境的漏洞检出结果,将所述漏洞检出结果与所述虚拟漏洞环境的预置漏洞进行对比分析,以确定所述待测试扫描系统的扫描准确度;

扫描能力确定模块430:用于根据所述待测试扫描系统在扫描过程中对被扫描服务的影响程度,与所述扫描准确度确定所述待测试扫描系统的漏洞扫描能力。

本说明书实施例还提供一种计算机设备,其至少包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行所述程序时实现前述漏洞扫描能力测试方法,所述方法至少包括:

分析待测试扫描系统对虚拟漏洞环境的扫描过程,确定所述扫描过程对被扫描服务的影响程度,其中,虚拟漏洞环境为预先构建的集成不同服务与对应漏洞的虚拟系统;

获取待测试扫描系统对虚拟漏洞环境的漏洞检出结果,将所述漏洞检出结果与所述虚拟漏洞环境的预置漏洞进行对比分析,以确定所述待测试扫描系统的扫描准确度;

根据所述待测试扫描系统在扫描过程中对被扫描服务的影响程度,与所述扫描准确度确定所述待测试扫描系统的漏洞扫描能力。

图5示出了本说明书实施例所提供的一种更为具体的计算设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。

处理器1010可以采用通用的cpu(centralprocessingunit,中央处理器)、微处理器、应用专用集成电路(applicationspecificintegratedcircuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。

存储器1020可以采用rom(readonlymemory,只读存储器)、ram(randomaccessmemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。

输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。

通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。

总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。

需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。

本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述的漏洞扫描能力测试方法,所述方法至少包括:

分析待测试扫描系统对虚拟漏洞环境的扫描过程,确定所述扫描过程对被扫描服务的影响程度,其中,虚拟漏洞环境为预先构建的集成不同服务与对应漏洞的虚拟系统;

获取待测试扫描系统对虚拟漏洞环境的漏洞检出结果,将所述漏洞检出结果与所述虚拟漏洞环境的预置漏洞进行对比分析,以确定所述待测试扫描系统的扫描准确度;

根据所述待测试扫描系统在扫描过程中对被扫描服务的影响程度,与所述扫描准确度确定所述待测试扫描系统的漏洞扫描能力。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书实施例可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书实施例各个实施例或者实施例的某些部分所述的方法。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,在实施本说明书实施例方案时可以把各模块的功能在同一个或多个软件和/或硬件中实现。也可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

以上所述仅是本说明书实施例的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本说明书实施例原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本说明书实施例的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1