CN113901476A - 一种基于虚拟化环境的漏洞验证方法、系统、设备及介质 - Google Patents
一种基于虚拟化环境的漏洞验证方法、系统、设备及介质 Download PDFInfo
- Publication number
- CN113901476A CN113901476A CN202111187514.9A CN202111187514A CN113901476A CN 113901476 A CN113901476 A CN 113901476A CN 202111187514 A CN202111187514 A CN 202111187514A CN 113901476 A CN113901476 A CN 113901476A
- Authority
- CN
- China
- Prior art keywords
- vulnerability
- verification
- vulnerability verification
- task
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例公开了一种基于虚拟化环境的漏洞验证方法、系统、设备及介质。该方法包括:获取漏洞数据,并对漏洞数据进行审核;当漏洞数据审核通过时,根据漏洞数据的属性信息生成漏洞验证任务,并将漏洞验证任务分发至虚拟化集群;获取虚拟化集群根据漏洞验证任务进行的漏洞验证得到的漏洞验证结果,并对验证结果进行漏洞验证分类,生成漏洞验证报告。该方法提供了一种新型的漏洞验证方式,可以无需人工操作实现漏洞的自动化验证,并且可以满足多厂商的需求,适用于多种应用场景。
Description
技术领域
本发明实施例涉及网络安全技术领域,尤其涉及一种基于虚拟化环境的漏洞验证方法、系统、设备及介质。
背景技术
随着计算机网络技术的发展,越来越多的事务通过网络技术进行实现。然而,网络技术不可避免的存在漏洞,会影响事务的安全。因此,对漏洞进行验证,确定漏洞的影响力对改善网络技术是至关重要的。
现有技术通常采用基于固化流程的共享漏洞验证方式,或者基于众测机制的漏洞验证方式,对软件漏洞进行验证。但是,基于固化流程的共享漏洞验证方式主要依托漏洞共享运营单位和各产品厂商完成漏洞验证工作,需要人工进行验证,明确漏洞风险,且不适宜跨行业或领域的场景。而基于众测机制的漏洞验证方式依托自建或第三方平台发布待测任务,基于行业专家、白帽子先验知识和各自手段验证潜在漏洞、反馈测试结果,很难做到有效众测,并且对应用场景也有限制,导致应用范围窄;此外,被测方通常需要一定的资金投入以吸引测试主体参与,成本高。
发明内容
本发明实施例提供了一种基于虚拟化环境的漏洞验证方法、系统、设备及介质,可以对漏洞进行自动化验证,满足多种应用场景需求。
第一方面,本发明实施例提供了一种基于虚拟化环境的漏洞验证方法,该方法包括:
获取漏洞数据,并对所述漏洞数据进行审核;
当所述漏洞数据审核通过时,根据所述漏洞数据的属性信息生成漏洞验证任务,并将所述漏洞验证任务分发至虚拟化集群;
获取虚拟化集群根据所述漏洞验证任务进行的漏洞验证得到的漏洞验证结果,并对所述验证结果进行漏洞验证分类,生成漏洞验证报告。
第二方面,本发明实施例还提供了一种基于虚拟化环境的漏洞验证系统,该系统包括:漏洞验证任务生成模块、漏洞数据分发模块、漏洞验证模块以及漏洞验证管理模块;其中,
所述漏洞验证任务生成模块,用于对审核通过的漏洞数据,根据所述漏洞数据的属性信息生成漏洞验证任务;
所述漏洞数据分发模块,用于将所述漏洞验证任务分发至所述漏洞验证模块中的虚拟化集群;
所述漏洞验证模块,用于通过内置的虚拟化集群根据所述漏洞验证任务进行的漏洞验证,得到漏洞验证结果;
所述漏洞验证管理模块,用于对所述验证结果进行漏洞验证分类,生成漏洞验证报告。
第三方面,本发明实施例还提供了一种电子设备,该设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任意实施例所述的一种基于虚拟化环境的漏洞验证方方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所述的一种基于虚拟化环境的漏洞验证方方法。
本发明通过获取漏洞数据,并对漏洞数据进行审核;当漏洞数据审核通过时,根据漏洞数据的属性信息生成漏洞验证任务,并将漏洞验证任务分发至虚拟化集群;获取虚拟化集群根据漏洞验证任务进行的漏洞验证得到的漏洞验证结果,并对验证结果进行漏洞验证分类,生成漏洞验证报告,解决了计算机网络中的软件漏洞验证问题,实现了无需人工操作实现漏洞的自动化验证,并且可以满足多厂商的需求,适用于多种应用场景的效果。
附图说明
图1a是本发明实施例一提供的一种基于虚拟化环境的漏洞验证方法的流程图;
图1b示出了本发明实施例一提供的又一种基于虚拟化环境的漏洞验证方法的流程图;
图2a是本发明实施例二提供的一种基于虚拟化环境的漏洞验证系统的结构示意图;
图2b是本发明实施例二提供的一种漏洞验证模块的结构示意图;
图2c是本发明实施例二提供的漏洞虚拟验证子模块的分发单元的结构示意图;
图2d是本发明实施例二提供的一种漏洞虚拟验证子模块的虚拟机集群的结构示意图;
图2e示出了本发明实施例二提供的任务调度流程图;
图3是本发明实施例三提供的一种基于虚拟化环境的漏洞验证装置的结构示意图;
图4是本发明实施例四提供的一种电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1a是本发明实施例一提供的一种基于虚拟化环境的漏洞验证方法的流程图,本实施例可适用于网络空间安全治理时对软件漏洞进行验证,确定漏洞风险的情况,该方法可以由基于虚拟化环境的漏洞验证装置来执行,该装置可以通过软件,和/或硬件的方式实现,装置可以集成在电子设备中如计算机,如图1a所示,该方法具体包括:
步骤110、获取漏洞数据,并对漏洞数据进行审核。
其中,获取漏洞数据的方式可以有多种。例如,各业务单位可以基于页面上报漏洞数据;或者,各互联网企业、基础电信运营商、网络安全企业、各网络安全专业机构及相关组织可以通过接口导入漏洞数据。漏洞数据可以包括漏洞的描述信息以及具体的漏洞信息。具体的,漏洞数据可以是多种方面的数据。例如,漏洞数据可以包括操作系统漏洞信息、应用软件漏洞信息、手机软件(Application,App)漏洞信息、工控软件漏洞信息和安全产品漏洞信息,以及导入的漏洞样本。漏洞样本可以理解为用来确认漏洞验证、对数据源进行佐证的数据。获取漏洞数据可以是获取采集业务对象的全流量漏洞数据。
在步骤中,对漏洞数据进行审核可以包含多种方面。漏洞数据的审核可以是分多级审核模式进行的,可以初步确定漏洞是否可以进行验证。具体的,在本发明实施例的一个可选实施方式中,对漏洞数据进行审核,包括:对漏洞数据进行信息完整性、准确性以及有效性的审核。
其中,对汇集的漏洞数据进行审核,可以确认漏洞数据的完整性、准确性以及有效性。具体的,可以采用多级审核模式进行漏洞数据的审核。例如,一级审核可以是确认漏洞数据是否完整,如是否包括漏洞名称、链接、漏洞是否可验证,可以去除虚假信息,从而根据真实可靠的漏洞数据进行后续的漏洞验证;二级审核可以是确定漏洞数据是否有误,对于漏洞标题以及描述情况进行初步核对整理,即确认漏洞标题与描述是否相符;三级审核可以是确认漏洞情况是否属实,确认网站收录信息完整性、准确性及原创漏洞有效性,完成原创性核验。
步骤120、当漏洞数据审核通过时,根据漏洞数据的属性信息生成漏洞验证任务,并将漏洞验证任务分发至虚拟化集群。
其中,生成漏洞验证任务,可以驱动业务以任务方式逐级进行流转。具体的,可以依托任务规则生成漏洞验证任务。例如,可以根据不同的漏洞数据报送入口、漏洞类型、漏洞所属生产厂商、漏洞所在行业或领域生成验证任务。漏洞验证任务生成后带入要验证的漏洞数据,用作漏洞验证任务分发的输入。如果漏洞数据存在对应的漏洞样本,可以将漏洞样本同时作为漏洞验证任务分发的输入,可以便于后续对漏洞验证结果进行核对。
在本步骤中,对漏洞验证任务进行分发,可以是将漏洞验证任务分发至虚拟化集群中的单个虚拟机,或者也可以是多个虚拟机。具体的,可以根据漏洞验证任务进行具体验证时所需的厂商数量进行分发。对漏洞验证任务的分发可以采用接口分发的方式实现。本发明实施例通过虚拟化集群可以解决多个漏洞验证任务或者可以面向在不具备复现环境的情况下,需要多个厂商联合验证的漏洞验证任务。
为了进一步扩展本发明实施例的应用场景,在采用接口分发的基础上,本申请实施例的漏洞验证任务分发还可以采用工单分发方式。工单分发可以是面向单个漏洞验证任务或在不具备复现环境下只需要单个厂商验证的漏洞验证任务。在漏洞验证任务分发完成后,接收任务的厂商可以反馈任务接收状态,以明确任务分发是否成功。如果任务分发失败,可以重新进行分发。任务接收状态可以包括已接收、中断以及未接收等。
具体的,在本发明实施例的一个可选实施方式中,根据漏洞数据的属性信息生成漏洞验证任务,并将漏洞验证任务分发至虚拟化集群,包括:根据漏洞数据的获取入口、漏洞类型、所属厂商、所属行业以及所属领域中的至少一项属性信息,生成漏洞验证任务;确定漏洞验证任务是否需要进行厂商联合验证,并将需要进行厂商联合验证的漏洞验证任务分发至虚拟化集群。
其中,厂商联合验证可以是指当前漏洞验证任务需要至少两个厂商进行配合,共同实现漏洞验证,可以满足多行业或者多领域联合的漏洞验证场景。
步骤130、获取虚拟化集群根据漏洞验证任务进行的漏洞验证得到的漏洞验证结果,并对验证结果进行漏洞验证分类,生成漏洞验证报告。
其中,虚拟化集群可以对漏洞验证任务进行漏洞验证,得到漏洞验证结果。具体的,在本发明实施例的一个可选实施方式中,获取虚拟化集群根据漏洞验证任务进行的漏洞验证得到的漏洞验证结果,包括:获取虚拟化集群通过内置的与漏洞验证任务对应的厂商所匹配的镜像系统以及漏洞验证工具,对漏洞验证任务进行的漏洞验证得到的漏洞验证结果。
具体的,虚拟化集群中可以内置多种镜像系统以及漏洞验证工具。例如,虚拟化集群中可以内置操作系统管理集群、web(页面)应用中间件管理集群、数据库管理集群、工控软件管理集群以及主流通用软件管理集群等镜像系统。虚拟化集群中还可以内置漏洞验证工具。通过虚拟化集群中内置的多种镜像系统以及漏洞验证工具可以实现根据漏洞验证环境自动化分配对应的镜像系统,根据漏洞验证工具在匹配的镜像系统中进行漏洞验证,得到漏洞验证结果。
进一步的,在本发明实施例中,根据具体漏洞验证任务,可以选择基于虚拟化环境的漏洞验证方式,开展软件漏洞的验证。尤其是对于多个漏洞验证任务需要搭建和启动虚拟机处理集群参与验证。由于本发明实施例的技术方案在进行任务分发时可以结合工单分发方式,为了满足该场景的应用,在进行漏洞验证时,本发明实施例的技术方案也开业支持基于固化流程的共享漏洞验证方式,开展软件漏洞的验证。单一漏洞验证任务,在不涉及厂商参与下复现下的验证工作可以通过基于固化流程的共享漏洞验证方式实现漏洞验证。此外,本发明实施例提供的两种验证方式的验证业务可以进行交叉验证,开展软件漏洞的验证,验证结果可以共享。
在本步骤中,对漏洞验证结果进行漏洞验证分类可以具有多种分类方式。例如,可以按照验证方式的不同划分为页面验证分类和接口验证分类。对于页面验证和接口验证均可以开展验证结果的反馈、漏洞标识的识别以及接口状态的监控等。漏洞验证分类可以理解为对漏洞验证结果进行管理,实现漏洞验证报告按照既定的业务流程生成。
在上述实施方式的基础上,可选的,在对验证结果进行漏洞验证分类,生成漏洞验证报告之后,还包括:对漏洞验证报告进行审核。
其中,漏洞验证报告的审核,承接以上两种漏洞验证方式。例如,对于基于固化流程的共享漏洞验证方式,可以通过人工审核实现漏洞验证报告的审核。而对于基于虚拟化环境的漏洞验证方式,可以通过自动化审核实现漏洞验证报告的审核。漏洞验证报告的审核可以是进行漏洞验证任务的标签化管理,基于漏洞验证任务流程状态,开展审核归档管理。
具体的,可以对漏洞验证报告中的漏洞信息是否全面进行审核,如是否包含厂商信息、型号信息、硬件以及组件信息等;也可以对漏洞验证报告中的验证结果进行审核,如评估影响结果是否可靠、是否存漏洞样本,以及验证结果与漏洞样本中结果的比对情况等。
在上述实施方式的基础上,可选的,该方法,还包括:将漏洞验证过程中的结果,通过可视化展示界面进行展示。
其中,可以通过可视化展示界面进行漏洞核验结果的呈现及以上步骤的处理流程进行直观展示,具备统计展示和报告下载交互界面。
本实施例的技术方案,通过获取漏洞数据,并对漏洞数据进行审核;当漏洞数据审核通过时,根据漏洞数据的属性信息生成漏洞验证任务,并将漏洞验证任务分发至虚拟化集群;获取虚拟化集群根据漏洞验证任务进行的漏洞验证得到的漏洞验证结果,并对验证结果进行漏洞验证分类,生成漏洞验证报告,解决了漏洞验证的问题,实现了无需人工操作实现漏洞的自动化验证,并且可以满足多厂商的需求,适用于多种应用场景的效果。
为了更好的说明,本发明实施例提供的既涵盖基于固化流程的页面单任务验证方式,又包括基于虚拟化环境的软件自动化漏洞验证方式,图1b示出了本发明实施例一提供的又一种基于虚拟化环境的漏洞验证方法的流程图。如图1b所示,可以通过页面录入或者接口导入方式,获取漏洞数据;对获取的漏洞数据可以进行审核,确认漏洞数据的完整性、准确性以及有效性;可以根据漏洞数据的属性信息按照任务规则生成为不同的漏洞验证任务;进而可以对漏洞验证任务以及对应的漏洞数据进行分发,可以是工单分发也可以是接口分发;根据不同的分发方式,可以进行对应方式的软件漏洞验证;可以对漏洞验证结果进行漏洞验证管理,生成漏洞验证报告,具体的漏洞验证管理也可以包括页面验证管理和接口验证管理;对于漏洞验证报告可以按照审核规则进行审核。以上的全部业务流程中间的各结果均可以通过可视化界面进行可视化展示。需要说明的是,在进行漏洞验证报告审核时,对于审核不通过的漏洞验证任务可以重新进行验证。漏洞验证数据库中可以存储经过漏洞验证性可利用的漏洞样本,可以为漏洞验证任务的验证起到一定的作用。
实施例二
图2a是本发明实施例二提供的一种基于虚拟化环境的漏洞验证系统的结构示意图。本实施例是对上述实施例中基于虚拟化环境的漏洞验证方法的进一步说明。通过本实施例中的基于虚拟化环境的漏洞验证系统对上述的方法进行具体的实现。如图2a所示,该系统包括:漏洞验证任务生成模块210、漏洞数据分发模块220、漏洞验证模块230以及漏洞验证管理模块240;其中,漏洞验证任务生成模块210,用于对审核通过的漏洞数据,根据漏洞数据的属性信息生成漏洞验证任务;漏洞数据分发模块220,用于将漏洞验证任务分发至漏洞验证模块中的虚拟化集群;漏洞验证模块230,用于通过内置的虚拟化集群根据漏洞验证任务进行的漏洞验证,得到漏洞验证结果;漏洞验证管理模块240,用于对验证结果进行漏洞验证分类,生成漏洞验证报告。
如图2a所示,该系统还包括:验证结果审核模块250以及验证结果展示模块260;其中,验证结果审核模块250,用于在对验证结果进行漏洞验证分类,生成漏洞验证报告之后,对漏洞验证报告进行审核;验证结果展示模块260,用于将漏洞验证过程中的结果,通过可视化展示界面进行展示。
其中,就各模块业务关系而言,由漏洞验证任务生成模块发起验证任务,是驱动整个漏洞验证业务的入口;由漏洞数据分发模块开展待验证数据的核验和分发,并将软件类产品漏洞验证任务传递给漏洞验证模块,漏洞验证模块是整个系统的核心业务模块。漏洞验证模块可以通过虚拟化处理集群方式开展各类产品漏洞的验证,生产验证结果;整个业务由漏洞验证管理模块支持,进行验证业务的结果反馈和异常处理;以上各模块的验证结果最终由验证结果审核模块进行审核和规定,并生产统计报告作为上层业务平台展示的输入;通过验证结果展示模块进行结果的具体展示。
如图2a所示的各模块间由统一的接口总线驱动漏洞验证任务的生成、分发、验证、管理和审核业务。对各模块的具有介绍如下:
其中,漏洞验证任务生成模块负责漏洞验证任务的产生和委派,可以包括漏洞验证任务生成、手工委派和自动化扫描委派三个子模块。漏洞验证任务生成可依据策略生成,例如,可根据各家专业机构业务专长生成委派策略,也可以利用机器学习技术结合业务特征、各专业机构处理能力和时间维度综合生成。漏洞验证任务生成后会驱动工单通过手工委派或者自动委派的方式对上报的漏洞样本及附属信息进行委派。其中,手工委派依托单个工单实施,自动委派通过接口方式实现验证任务的批量委派。
在本发明实施例中,漏洞数据分发模块系统依据委派规则,将汇集的漏洞数据依据委派规则下发到一家或多家漏洞报送单位准备漏洞验证。漏洞数据分发模块可以通过漏洞数据校验单元对接收的数据进行完整性和一致性校验,对校验无误的漏洞验证任务进行分发。分发方式包括基于工单的分发和基于接口的分发。为保障分发业务的有序开展,设计状态监测单元监督分发业务的执行,并由结果反馈子模块对一次分发的有效性进行查验和反馈,以验证经过漏洞数据校验后的漏洞验证任务是否正常流转到下一模块。
各专业机构或支撑单位接到委派任务后,可以根据各自业务方向和专业特长选择是否接收漏洞验证任务,并将结果反馈给主管部门。如图2a所示,漏洞验证模块是整个漏洞验证系统的核心模块,负责对待验证漏洞样本的检测验证,并将验证有效的样本及相关漏洞信息录入到漏洞验证数据库中。图2b是本发明实施例二提供的一种漏洞验证模块的结构示意图。如图2b所示,漏洞验证模块可以包括漏洞页面验证子模块和漏洞虚拟验证子模块。其中,漏洞虚拟验证子模块是最核心的,从功能上区分主要为样本分发单元、虚拟机化集群和中间控制端。漏洞虚拟验证子模块输入为漏洞样本和漏洞数据分发模块分发的漏洞验证任务,经虚拟机化集群模拟环境处理后,输出验证后的漏洞信息。漏洞验证数据库存储经有效验证并可以利用的漏洞样本及相关信息,其职能有别于漏洞数据库,该模块中以中间控制端单元将两类数据库有机连接和协调工作。其中,漏洞数据库可以理解为漏洞验证的结果数据库。漏洞数据库中的结果与漏洞验证数据库中的结果可以通过中间控制端进行比对,评估。如果比对结果存在出入,可以对漏洞验证任务重新进行验证。
在本发明实施例中,漏洞验证管理模块按照管理方式分为页面验证和接口验证两类业务单元,分别承担基于页面的工单流转的漏洞验证和基于接口方式的批量验证管理,涉及到多次验证的业务通过标签识别单元实现。通过异常检测和接口状态监控对页面验证和接口验证两种方式进行纠错管理,通过验证结果反馈接收页面验证和接口验证的回传结果。漏洞验证管理模块依据系统输入的漏洞样本和相关辅助信息,分析漏洞有消息、成因、危害效果和影响范围,出具验证分析报告,判定漏洞所属细分类型。
各专业机构或支撑单位接收漏洞验证任务后,将认定结果反馈至验证结果审核模块。验证结果审核模块对验证结果进行审核,查验漏洞验证分析报告,对比平台汇聚的样本数据,对验证结果做出结论性评判。验证结果审核模块核定验证结果无误的,进入下一流程,验证结果审核模块核定认定结果有疑问的,要及时通过工单反馈给漏洞验证单位。验证结果审核包括审核方式:人工审核和自动审核,分别对应漏洞验证业务的两种业务承接方式,依托工单管理、审核反馈实现对验证结果的复核和反馈,对多次验证任务的工单,通过标签管理加以区别,对验证结果是审核无误的场景,由归档单元实施归档操作。
如图2b所示,本发明实施例的核心模块是漏洞验证模块。漏洞验证模块漏按照承接任务性质可划分为两个子模块,即漏洞页面验证子模块和漏洞虚拟验证子模块。两子模块间可以通过内部接口进行数据交互和漏洞验证结论交叉评判,实现验证结果共享。其中,漏洞页面验证子模块主要面向单一漏洞验证任务,采用基于固化流程的共享漏洞验证方式开展漏洞验证工作,作为整个系统的业务补充。洞验证模块的核心是漏洞虚拟验证子模块。下述内容主要对漏洞虚拟验证子模块进行介绍。
漏洞虚拟验证子模块的输入为来自两种方式报送和汇集的未经验证的漏洞样本,经过分发单元发放至虚拟机化集群相应的验证环境进行测试、验证,经过验证后的有效漏洞样本及相关信息收录入漏洞验证数据库中。图2c是本发明实施例二提供的漏洞虚拟验证子模块的分发单元的结构示意图。如图2c所示,分发单元可以作为漏洞虚拟验证子模块的输入单元,完成对漏洞样本进行筛选和分类。对漏洞样本进行筛选和分类可以包括样本类型判定以及参数配置。样本类型判定可以是指样本运行环境类型,即漏洞响应的环境/产品类型,依托有关标准规范统一定义和描述。对于样本类型的判定直接决定后续验证任务执行阶段虚拟机集群参数选择和环境配置。漏洞样本运行多数情况下默认参数配置为空,对于有些需要配置参数才能运行的漏洞样本通过参数配置来配置参数,可以对样本类型判定进行辅助,实现对漏洞验证任务的分发。具体的,对于首轮验证后标记为不可用的漏洞样本在二次验证场景时,可通过参数调整进行再次验证。通过样本类型判定和参数配置后,可以通过分发接口将漏洞样本分发给虚拟机集群中不同的虚拟机或者虚拟机群处理。
图2d是本发明实施例二提供的一种漏洞虚拟验证子模块的虚拟机集群的结构示意图。如图2d所示,虚拟机集群由3个大部分组成,包括统一处理端、虚拟机集群环境和代理终端单元。统一处理端是分发单元和虚拟机集群环境的接口,接收分发接口的漏洞数据,按照不同的漏洞类型接收漏洞样本(如有),然后根据漏洞数据或样本类别向下分发。
如图2d所示,虚拟机环境集群负责存储、管理虚拟机环境。面向漏洞环境构建、漏洞验证自动化执行业务。在本发明实施例中可以搭建5大类管理集群和1套安全验证工具集。例如,虚拟机环境集群可以包括操作系统管理集群、web应用中间件管理集群、数据库管理集群、工控软件管理集群和主流通用软件管理集群,以及1套安全验证工具集,实现漏洞验证环境自动化分配和管理。
其中,操作系统管理集群负责存储、管理基于虚拟机环境的操作系统镜像。操作系统镜像可以包含不同版本的操作系统的镜像,如Windows(微软操作系统)系列、CentOS(社区企业操作系统)系列、Ubuntu(桌面应用为主的操作系统)、银河麒麟或者嵌入式操作系统等。Web应用中间件管理集群负责存储、管理基于虚拟机环境的Web应用中间件。Web应用中间件可以具有不同版本,例如,Web应用中间件可以包含Apche(一种网页服务器软件)、IIS(互联网信息服务)、Nginx(代理服务器)、Tomcat(Web容器)、weblogic(应用服务器)等。数据库管理集群负责存储、管理基于虚拟机环境的数据库环境。数据库管理集群可以包含如:MySql(一种关系型数据库管理系统)、Oracle(又一种关系型数据库)、Microsoft SQLServer(一种微软关系型数据库管理系统)、Microsoft Access(又一种微软关系型数据库管理系统)、MongoDB(一种介于关系数据库和非关系数据库之间的数据库)等不同版本的数据库软件镜像,支持如达梦、人大金仓等数据库环境集成。工控软件管理集群负责存储、管理基于虚拟机环境的工控软件镜像。工控软件镜像可以包含如:博图、OPC(应用于过程控制)、力控、横河、WinCC(视窗控制中心)、亚控组态王等。主流通用软件管理集群负责存储、管理基于虚拟机环境的主流通用软件镜像。主流通用软件镜像可以包含如主流办公软件、即时通信软件、邮件系统依据系统管理软件等。安全验证工具集可以集成如Nmap(一种网络扫描和嗅探工具包)、Sqlmap(一种自动化的结构化查询语言注入工具)、Metasploit(MSF,一种安全漏洞检测工具)、kali(高级渗透测试)等多种漏洞挖掘、漏洞分析、渗透测试依据软件编程等安全工具。
在本发明实施例中,针对每个虚拟管理集群,代理终端可以内置于每台虚拟机中,负责处理同类软件漏洞样本,回收验证结果,进行资源释放。
如图2b所示,漏洞虚拟验证子模块包括的漏洞验证数据库可以存储经过漏洞验证系统验证并可利用的漏洞样本信息。漏洞数据库可以存储来自各渠道收集的漏洞条目信息,依托统一的分类规则进行漏洞数据分类。从定性和定量两个角度给出漏洞危害程度,明确漏洞所影响的软硬件产品类表,支撑对漏洞数据的展示。中间控制端可以连接漏洞验证数据库和漏洞数据库,支撑展示界面进行统一的数据展示。
本实施例的技术方案,通过设置具有漏洞验证任务生成模块、漏洞数据分发模块、漏洞验证模块以及漏洞验证管理模块的基于虚拟化环境的漏洞验证系统,解决了漏洞验证的问题,实现了可以无需人工操作实现漏洞的自动化验证,并且可以满足多厂商的需求,适用于多种应用场景的效果。
具体的,为了说明本发明实施例在具体应用时的流程,图2e示出了本发明实施例二提供的任务调度流程图。如图2e所示,任务调度旨在面向软件漏洞的虚拟化验证需求,依托任务执行总线,设计任务环境构建、任务验证执行、任务结果管理核心流程,实现基于虚拟化环境下漏洞验证工作的自动化和有序化。
其中,通过用户身份验证可以匹配漏洞验证任务生成方式,导入用户身份,进行用户授权验证,以备该用户合理启用、调度虚拟化资源(集群)。通过漏洞验证任务导入,可以导入具体的漏洞验证任务。漏洞验证任务可以基于任务规则生成。依托任务执行总线,汇入用户信息,将用户和漏洞验证任务关联,以信息导入方式带入待验证的漏洞数据。通过任务环境构建可以根据待验证漏洞数据生成环境参数,完成漏洞验证环境自动创建,模拟加载如操作系统和应用、账户、验证工具等软件平台,满足任务验证执行过程中的可用环境,为任务在执行、处理、结果反馈的过程中提供稳定工作环境,并且在收到任务结束指令后,回收、卸载当前任务环境,释放相应硬件和网络资源,为后续任务提供可用执行空间,可以支持宿主机多虚拟机并行执行。通过任务验证执行可以根据任务过程接口传递的参数信息,通过漏洞验证的二进制或脚本工具进行验证并记录流程日志,验证环境支持跨系统、跨平台的漏洞验证测试(POC)和利用测试(EXP)。任务验证执行完成后将相应结果数据传递至任务结果管理功能,如基于构建的一个任务环境下全部验证任务均执行完毕,则通过任务执行总线告知任务环境构建功能使其尽快释放资源以提供下一个队列任务。任务结果管理可以针对每一次验证执行后的结果数据与标准化评价规则进行比对。根据具体验证任务,接收验证结果,调取验证报告模板,开展验证结果的匹配和字段回填,生成验证结果,并向任务执行总线反馈结果报告。通过漏洞验证管理可以进行漏洞验证结果的匹配校验和结果评判。按照验证方式不同,主要基于接口验证管理,开展验证结果的审核、校对和评判。
需要说明的是,任务执行总线贯穿于任务调度整个过程,对接双向业务。例如,可以调研虚拟化集群基础能力,调用各类环境、文件基础数据,读取漏洞数据;进行内部各功能间的数据、文件、指令等传输;还可以下发任务指令、参数、返回任务执行结果。
实施例三
图3是本发明实施例三提供的一种基于虚拟化环境的漏洞验证装置的结构示意图。结合图3,该装置包括:漏洞数据审核单元310,漏洞验证任务分发单元320和漏洞验证报告生成单元330。其中:
漏洞数据审核单元310,用于获取漏洞数据,并对漏洞数据进行审核;
漏洞验证任务分发单元320,用于当漏洞数据审核通过时,根据漏洞数据的属性信息生成漏洞验证任务,并将漏洞验证任务分发至虚拟化集群;
漏洞验证报告生成单元330,用于获取虚拟化集群根据漏洞验证任务进行的漏洞验证得到的漏洞验证结果,并对验证结果进行漏洞验证分类,生成漏洞验证报告。
可选的,该装置,还包括:
漏洞验证报告审核单元,用于在对验证结果进行漏洞验证分类,生成漏洞验证报告之后,对漏洞验证报告进行审核。
可选的,漏洞数据审核单元310,具体用于:
对漏洞数据进行信息完整性、准确性以及有效性的审核。
可选的,漏洞验证任务分发单元320,具体用于:
根据漏洞数据的获取入口、漏洞类型、所属厂商、所属行业以及所属领域中的至少一项属性信息,生成漏洞验证任务;
确定漏洞验证任务是否需要进行厂商联合验证,并将需要进行厂商联合验证的漏洞验证任务分发至虚拟化集群。
可选的,漏洞验证报告生成单元330,具体用于:
获取虚拟化集群通过内置的与漏洞验证任务对应的厂商所匹配的镜像系统以及漏洞验证工具,对漏洞验证任务进行的漏洞验证得到的漏洞验证结果。
可选的,该装置,还包括:
可视化展示单元,用于将漏洞验证过程中的结果,通过可视化展示界面进行展示。
本发明实施例所提供的基于虚拟化环境的漏洞验证装置可执行本发明任意实施例所提供的基于虚拟化环境的漏洞验证方法,具备执行方法相应的功能模块和有益效果。
实施例四
图4是本发明实施例四提供的一种电子设备的结构示意图,如图4所示,该设备包括:
一个或多个处理器410,图4中以一个处理器410为例;
存储器420;
所述设备还可以包括:输入装置430和输出装置440。
所述设备中的处理器410、存储器420、输入装置430和输出装置440可以通过总线或者其他方式连接,图4中以通过总线连接为例。
存储器420作为一种非暂态计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的一种基于虚拟化环境的漏洞验证方法对应的程序指令/模块(例如,附图3所示的漏洞数据审核单元310,漏洞验证任务分发单元320和漏洞验证报告生成单元330)。处理器410通过运行存储在存储器420中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述方法实施例的一种基于虚拟化环境的漏洞验证方法,即:
获取漏洞数据,并对所述漏洞数据进行审核;
当所述漏洞数据审核通过时,根据所述漏洞数据的属性信息生成漏洞验证任务,并将所述漏洞验证任务分发至虚拟化集群;
获取虚拟化集群根据所述漏洞验证任务进行的漏洞验证得到的漏洞验证结果,并对所述验证结果进行漏洞验证分类,生成漏洞验证报告。
存储器420可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器420可以包括高速随机存取存储器,还可以包括非暂态性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态性固态存储器件。在一些实施例中,存储器420可选包括相对于处理器410远程设置的存储器,这些远程存储器可以通过网络连接至终端设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置430可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入。输出装置440可包括显示屏等显示设备。
实施例五
本发明实施例五提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例提供的一种基于虚拟化环境的漏洞验证方法:
获取漏洞数据,并对所述漏洞数据进行审核;
当所述漏洞数据审核通过时,根据所述漏洞数据的属性信息生成漏洞验证任务,并将所述漏洞验证任务分发至虚拟化集群;
获取虚拟化集群根据所述漏洞验证任务进行的漏洞验证得到的漏洞验证结果,并对所述验证结果进行漏洞验证分类,生成漏洞验证报告。
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种基于虚拟化环境的漏洞验证方法,其特征在于,所述方法包括:
获取漏洞数据,并对所述漏洞数据进行审核;
当所述漏洞数据审核通过时,根据所述漏洞数据的属性信息生成漏洞验证任务,并将所述漏洞验证任务分发至虚拟化集群;
获取虚拟化集群根据所述漏洞验证任务进行的漏洞验证得到的漏洞验证结果,并对所述验证结果进行漏洞验证分类,生成漏洞验证报告。
2.根据权利要求1所述的方法,其特征在于,在对所述验证结果进行漏洞验证分类,生成漏洞验证报告之后,还包括:对所述漏洞验证报告进行审核。
3.根据权利要求1所述的方法,其特征在于,对所述漏洞数据进行审核,包括:
对所述漏洞数据进行信息完整性、准确性以及有效性的审核。
4.根据权利要求1所述的方法,其特征在于,根据所述漏洞数据的属性信息生成漏洞验证任务,并将所述漏洞验证任务分发至虚拟化集群,包括:
根据所述漏洞数据的获取入口、漏洞类型、所属厂商、所属行业以及所属领域中的至少一项属性信息,生成漏洞验证任务;
确定所述漏洞验证任务是否需要进行厂商联合验证,并将需要进行厂商联合验证的漏洞验证任务分发至虚拟化集群。
5.根据权利要求4所述的方法,其特征在于,获取虚拟化集群根据所述漏洞验证任务进行的漏洞验证得到的漏洞验证结果,包括:
获取虚拟化集群通过内置的与所述漏洞验证任务对应的厂商所匹配的镜像系统以及漏洞验证工具,对所述漏洞验证任务进行的漏洞验证得到的漏洞验证结果。
6.根据权利要求1-5任一项所述的方法,其特征在于,还包括:
将漏洞验证过程中的结果,通过可视化展示界面进行展示。
7.一种基于虚拟化环境的漏洞验证系统,其特征在于,所述系统包括:漏洞验证任务生成模块、漏洞数据分发模块、漏洞验证模块以及漏洞验证管理模块;其中,
所述漏洞验证任务生成模块,用于对审核通过的漏洞数据,根据所述漏洞数据的属性信息生成漏洞验证任务;
所述漏洞数据分发模块,用于将所述漏洞验证任务分发至所述漏洞验证模块中的虚拟化集群;
所述漏洞验证模块,用于通过内置的虚拟化集群根据所述漏洞验证任务进行的漏洞验证,得到漏洞验证结果;
所述漏洞验证管理模块,用于对所述验证结果进行漏洞验证分类,生成漏洞验证报告。
8.根据权利要求7所述的系统,其特征在于,还包括:验证结果审核模块以及验证结果展示模块;其中,
所述验证结果审核模块,用于在对所述验证结果进行漏洞验证分类,生成漏洞验证报告之后,对所述漏洞验证报告进行审核;
所述验证结果展示模块,用于将漏洞验证过程中的结果,通过可视化展示界面进行展示。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111187514.9A CN113901476A (zh) | 2021-10-12 | 2021-10-12 | 一种基于虚拟化环境的漏洞验证方法、系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111187514.9A CN113901476A (zh) | 2021-10-12 | 2021-10-12 | 一种基于虚拟化环境的漏洞验证方法、系统、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113901476A true CN113901476A (zh) | 2022-01-07 |
Family
ID=79191765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111187514.9A Pending CN113901476A (zh) | 2021-10-12 | 2021-10-12 | 一种基于虚拟化环境的漏洞验证方法、系统、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113901476A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115001829A (zh) * | 2022-06-07 | 2022-09-02 | 中国软件评测中心(工业和信息化部软件与集成电路促进中心) | 协议漏洞挖掘方法、装置、设备及存储介质 |
CN115987673A (zh) * | 2022-12-30 | 2023-04-18 | 北京天融信网络安全技术有限公司 | 基于事件驱动的漏洞渗透测试系统、方法、装置及设备 |
-
2021
- 2021-10-12 CN CN202111187514.9A patent/CN113901476A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115001829A (zh) * | 2022-06-07 | 2022-09-02 | 中国软件评测中心(工业和信息化部软件与集成电路促进中心) | 协议漏洞挖掘方法、装置、设备及存储介质 |
CN115001829B (zh) * | 2022-06-07 | 2024-06-07 | 中国软件评测中心(工业和信息化部软件与集成电路促进中心) | 协议漏洞挖掘方法、装置、设备及存储介质 |
CN115987673A (zh) * | 2022-12-30 | 2023-04-18 | 北京天融信网络安全技术有限公司 | 基于事件驱动的漏洞渗透测试系统、方法、装置及设备 |
CN115987673B (zh) * | 2022-12-30 | 2023-12-08 | 北京天融信网络安全技术有限公司 | 基于事件驱动的漏洞渗透测试系统、方法、装置、介质及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019100576A1 (zh) | 自动化测试管理方法、装置、终端设备及存储介质 | |
WO2019100577A1 (zh) | 自动化测试管理方法、装置、终端设备及存储介质 | |
US9037549B2 (en) | System and method for testing data at a data warehouse | |
CN109582301A (zh) | 基于任务调度系统的业务处理方法、装置、设备及介质 | |
CN113901476A (zh) | 一种基于虚拟化环境的漏洞验证方法、系统、设备及介质 | |
CN111522728A (zh) | 自动化测试用例的生成方法、电子设备及可读存储介质 | |
CN111897721B (zh) | 一种api接口的自动化测试方法及存储介质 | |
CN112463588A (zh) | 一种自动化测试系统及方法、存储介质、计算设备 | |
CN110910081A (zh) | 基于实验室信息管理系统的工作流配置实现方法和系统 | |
CN112540924A (zh) | 接口自动化测试方法、装置、设备及存储介质 | |
CN115982012A (zh) | 一种接口管理能力成熟度的评估模型及方法 | |
CN116069838A (zh) | 一种数据处理方法、装置、计算机设备及存储介质 | |
CN114491555A (zh) | 设备安全检测方法、装置、计算机设备和存储介质 | |
CN111651342A (zh) | 基于Charles录制会话的HTTP接口自动化测试框架 | |
CN113836237A (zh) | 对数据库的数据操作进行审计的方法及装置 | |
CN117493188A (zh) | 接口测试方法及装置、电子设备及存储介质 | |
WO2017167015A1 (zh) | 服务器设备安全管理方法、装置及计算机存储介质 | |
CN112015715A (zh) | 工业互联网数据管理服务测试方法及系统 | |
CN114880239B (zh) | 一种基于数据驱动的接口自动化测试框架及方法 | |
CN114115628A (zh) | 应用于u盾测试的u盾显示信息获取方法、装置、设备、介质及程序产品 | |
CN112181816A (zh) | 一种基于场景的接口测试方法、装置、计算机设备及介质 | |
CN115168297A (zh) | 绕行日志审计方法及装置 | |
CN112836471B (zh) | 批量标注接口自动化方法和系统 | |
CN112583812B (zh) | 一种账户安全确定方法、装置、设备及介质 | |
CN113298538B (zh) | 客服数据的处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |