CN106203126A - 一种基于模拟环境的漏洞验证方法及系统 - Google Patents

一种基于模拟环境的漏洞验证方法及系统 Download PDF

Info

Publication number
CN106203126A
CN106203126A CN201610557670.2A CN201610557670A CN106203126A CN 106203126 A CN106203126 A CN 106203126A CN 201610557670 A CN201610557670 A CN 201610557670A CN 106203126 A CN106203126 A CN 106203126A
Authority
CN
China
Prior art keywords
simulated environment
virtual machine
checking
template
validating vulnerability
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.)
Granted
Application number
CN201610557670.2A
Other languages
English (en)
Other versions
CN106203126B (zh
Inventor
李海灵
舒敏
邹潇湘
杨圣峰
田尚君
熊毅
高昕
候美佳
金暐
李佳
张震
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National Computer Network and Information Security Management Center
Original Assignee
National Computer Network and Information Security Management Center
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by National Computer Network and Information Security Management Center filed Critical National Computer Network and Information Security Management Center
Priority to CN201610557670.2A priority Critical patent/CN106203126B/zh
Publication of CN106203126A publication Critical patent/CN106203126A/zh
Application granted granted Critical
Publication of CN106203126B publication Critical patent/CN106203126B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提出了一种基于模拟环境的漏洞验证方法及系统,该方法包括:构建验证漏洞的模拟环境,将所述模拟环境的配置信息以模板形式保存至模板库中;对所述模板库中的模板以设定格式进行封装;根据封装后的模板创建所述模拟环境的实例,并通过所述实例对所述漏洞进行验证。本发明所述基于模拟环境的漏洞验证方法及系统,有效提高漏洞验证实验的资源利用率,有效提高漏洞验证的工作效率和质量。

Description

一种基于模拟环境的漏洞验证方法及系统
技术领域
本发明涉及信息安全技术领域,尤其涉及一种基于模拟环境的漏洞验证方法及系统。
背景技术
现有的主机虚拟化技术在漏洞验证实验中,模拟环境的构成复杂,除了需要桌面系统的操作系统环境外,也包含很多服务和应用软件的场景,例如web漏洞的验证和数据库应用等软件系统的验证。现有技术方案建立虚拟环境,资源消耗大,启动部署慢。
发明内容
本发明要解决的技术问题是,提供一种基于模拟环境的漏洞验证方法及系统,克服现有技术中建立虚拟环境资源消耗大和启动部署慢的缺陷。
本发明采用的技术方案是,所述基于模拟环境的漏洞验证方法,包括:
步骤一,构建验证漏洞的模拟环境,将所述模拟环境的配置信息以模板形式保存至模板库中;
步骤二,对所述模板库中的模板以设定格式进行封装;
步骤三,根据封装后的模板创建所述模拟环境的实例,并通过所述实例对所述漏洞进行验证。
进一步的,所述漏洞包括:软件安全漏洞、网络安全漏洞或系统安全漏洞。
进一步的,所述步骤一,具体包括:
步骤A1,根据验证目标、执行引擎和防护策略,判断云平台环境上构建所述模拟环境的虚拟机数量及虚拟机类型;
步骤A2,根据所述虚拟机类型,设置所述虚拟机的配置信息;
步骤A3,将所述模拟环境的各虚拟机的配置信息作为所述模板保存至所述模板库中。
进一步的,所述步骤A1中,所述验证目标为待验证的漏洞;
所述执行引擎为验证所述漏洞的执行验证脚本的执行环境;
所述防护策略为修复所述漏洞的补丁、防范所述漏洞的防护软件或所述漏洞的执行防护脚本。
进一步的,所述步骤A1中,所述虚拟机类型包括:验证目标虚拟机、执行引擎虚拟机和防护策略虚拟机。
进一步的,所述验证目标虚拟机的数量为所述待验证的漏洞的数量;
所述执行引擎虚拟机的数量为1或0;若执行引擎安装在验证目标虚拟机时,则执行引擎虚拟机的数量为0;
所述防护策略虚拟机的数量与所述验证目标虚拟机的数量相同。
进一步的,所述步骤A2中,所述验证目标虚拟机的配置信息包括:所述验证目标和所述验证目标的运行环境;
所述执行引擎虚拟机的配置信息包括:所述执行验证脚本和所述执行验证脚本的运行环境;
所述防护策略虚拟机的配置信息包括:所述验证目标的补丁或防护脚本、所述验证目标和所述验证目标的运行环境。
进一步的,所述步骤三,具体包括:
步骤B1,根据所述验证目标的配置信息,在所述模板库中检索与所述验证目标的配置信息匹配的模板;
步骤B2,将被检索到的模板发送至调度执行器,所述调度执行器根据所述被检索到的模板中的虚拟机配置信息在所述模拟环境中配置虚拟机,得到模拟环境的实例;
步骤B3,将设定的执行验证脚本发送至执行引擎中,所述执行引擎控制所述执行验证脚本对所述验证目标进行漏洞验证;所述执行验证脚本的数量为一个或多个。
进一步的,所述方法,还包括:
步骤四,对漏洞验证结果进行保存;
步骤五,当所述漏洞验证完成后,对所述模拟环境进行释放;
步骤六,根据保存的所述漏洞验证结果生成验证报告。
进一步的,所述步骤五,具体包括:
当对所述验证目标进行一次或多次漏洞验证完成后,将所述模拟环境的实例进行删除。
本发明还提供一种基于模拟环境的漏洞验证系统,包括:
模拟环境构建模块,用于构建验证漏洞的所述模拟环境,将所述模拟环境的配置信息以模板形式保存至所述模板库中;
封装模块,用于对所述模板库中的模板以设定格式进行封装;
验证模块,用于根据封装后的模板创建所述模拟环境的实例,并通过所述实例对所述漏洞进行验证。
进一步的,所述模拟环境构建模块,具体包括:
虚拟机配置模块,用于根据验证目标、执行引擎和防护策略,判断云平台环境上构建所述模拟环境的虚拟机数量及虚拟机类型;
配置信息模块,用于根据所述虚拟机类型,设置所述虚拟机的配置信息;
模板模块,用于将所述模拟环境的各虚拟机的配置信息作为所述模板保存至所述模板库中。
进一步的,所述验证模块,具体包括:
选择模块,用于根据所述验证目标的配置信息,在所述模板库中检索与所述验证目标的配置信息匹配的模板;
实例模块,用于将被检索到的模板发送至调度执行器,所述调度执行器根据所述被检索到的模板中的虚拟机配置信息在所述模拟环境中配置虚拟机,得到模拟环境的实例;
执行模块,用于将设定的执行验证脚本发送至执行引擎中,执行引擎控制执行验证脚本对验证目标进行漏洞验证;所述执行验证脚本的数量为一个或多个。
进一步的,所述系统,还包括:
保存模块,用于对所述验证模块得到的漏洞验证结果进行保存;
释放模块,用于当所述漏洞验证完成后,对所述模拟环境进行释放;
报告模块,用于根据保存的所述漏洞验证结果生成验证报告。
进一步的,所述释放模块,具体用于:
当对所述验证目标进行一次或多次漏洞验证完成后,将所述模拟环境的实例进行删除。
采用上述技术方案,本发明至少具有下列优点:
本发明所述基于模拟环境的漏洞验证方法及系统,有效提高漏洞验证实验的资源利用率,有效提高漏洞验证的工作效率和质量。
附图说明
图1为本发明第一实施例的基于模拟环境的漏洞验证方法流程图;
图2为本发明第二实施例的基于模拟环境的漏洞验证方法流程图;
图3为本发明第三实施例的基于模拟环境的漏洞验证系统组成结构示意图;
图4为本发明第四实施例的基于模拟环境的漏洞验证系统组成结构示意图;
图5为本发明第六实施例的基于模拟环境的漏洞验证系统实例组成结构示意图;
图6为本发明第六实施例的基于模拟环境的漏洞验证系统实例组成结构示意图;
图7为本发明第七实施例的基于模拟环境的漏洞验证系统实例组成结构示意图。
具体实施方式
为更进一步阐述本发明为达成预定目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本发明进行详细说明如后。
本发明第一实施例,一种基于模拟环境的漏洞验证方法,如图1所示,包括以下具体步骤:
步骤S101,构建验证漏洞的模拟环境,将模拟环境的配置信息以模板形式保存至模板库中。
具体的,步骤S101,包括:
步骤S101A1,根据验证目标、执行引擎和防护策略,判断云平台环境上构建模拟环境需要的虚拟机数量和虚拟机类型。
其中,漏洞包括:软件安全漏洞、网络安全漏洞或系统安全漏洞。
验证目标为待验证的漏洞。
执行引擎为验证漏洞的执行验证脚本的执行环境。
防护策略为修复漏洞的补丁、防范漏洞的防护软件或漏洞的执行防护脚本。
虚拟机类型的包括:验证目标虚拟机、执行引擎虚拟机和防护策略虚拟机。
验证目标虚拟机的数量为待验证的漏洞的数量;
执行引擎虚拟机的数量为1或0;若执行引擎安装在验证目标虚拟机时,则执行引擎虚拟机的数量为0。
防护策略虚拟机的数量与验证目标虚拟机的数量相同。
例如:构建IE(Internet Explorer,简称网络探路者)浏览器的漏洞模拟环境。
其中,验证目标为IE9、IE10和IE11三个版本的浏览器的安全漏洞。
执行引擎为为验证IE浏览器安全漏洞的执行验证脚本的执行环境。
防护策略为修复IE浏览器安全漏洞的补丁、防护软件或执行防护脚本。
根据验证目标、执行引擎和防护策略,如表1所示在云平台环境上构建模拟环境需要的虚拟机:
表1
步骤S101A2,根据虚拟机类型,设置虚拟机的配置信息。
其中,验证目标虚拟机的配置信息包括:验证目标和验证目标的运行环境;
执行引擎虚拟机的配置信息包括:设定的执行验证脚本和执行验证脚本的运行环境;
防护策略虚拟机的配置信息包括:验证目标、验证目标的运行环境和验证目标的补丁、防护软件或执行防护脚本。
步骤S101A3,将模拟环境的各虚拟机的配置信息作为模板保存至模板库中。
步骤S102,对模板库中的模板以设定格式进行封装。
例如,对模板库中的模板以JSON(JavaScript Object Notation,简称JavaScript对象表示法)数据格式进行封装。
步骤S103,根据封装后的模板创建模拟环境的实例,并通过实例对验证目标进行验证。
具体的,步骤S103,包括:
步骤S103B1,根据验证目标的配置信息,在模板库中检索与验证目标的配置信息匹配的模板。
步骤S103B2,将被检索到的模板发送至调度执行器,调度执行器根据被检索到的模板中的虚拟机配置信息在模拟环境中配置虚拟机,得到模拟环境的实例。
步骤S103B3,将设定的执行验证脚本发送至执行引擎中,执行引擎控制执行验证脚本对验证目标进行漏洞验证。其中,执行验证脚本的数量为一个或多个。
本发明第二实施例,一种基于模拟环境的漏洞验证方法,本实施例所述方法与第一实施例大至相同,区别在于对验证结果和模拟环境进行进一步处理,如图2所示,本实施例的所述方法,还包括以下具体步骤:
步骤S204,对漏洞验证结果进行保存。
步骤S205,当漏洞验证完成后,对模拟环境进行释放。
当对验证目标进行一次或多次漏洞验证完成后,将模拟环境的实例进行删除。
步骤S206,根据保存的所述漏洞验证结果生成验证报告。
验证报告包括:漏洞的基本信息、模拟环境的配置信息、防护策略的配置信息、执行验证脚本的信息和漏洞验证日志结果等信息。
本发明第三实施例,与第一实施例对应,本实施例介绍一种基于模拟环境的漏洞验证装置,如图3所示,包括以下组成部分:
模拟环境构建模块100,用于构建验证漏洞的模拟环境,将模拟环境的配置信息以模板形式保存至模板库中。
具体的,模拟环境构建模块100,包括:
虚拟机配置模块101,用于根据验证目标、执行引擎和防护策略,判断云平台环境上构建模拟环境需要的虚拟机数量和虚拟机类型。
其中,验证目标为软件安全漏洞、网络安全漏洞或系统安全漏洞。
执行引擎为验证软件安全漏洞、网络安全漏洞或系统安全漏洞的执行验证脚本的执行环境。
防护策略为修复软件安全漏洞、网络安全漏洞或系统安全漏洞的补丁、防范软件安全漏洞、网络安全漏洞或系统安全漏洞的防护软件或软件安全漏洞、网络安全漏洞或系统安全漏洞的执行防护脚本。虚拟机类型的包括:验证目标虚拟机、执行引擎虚拟机和防护策略虚拟机。
验证目标虚拟机的数量为待验证的漏洞的数量;
执行引擎虚拟机的数量为1或0;若执行引擎安装在验证目标虚拟机时,则
执行引擎虚拟机的数量为0。
防护策略虚拟机的数量与验证目标虚拟机的数量相同。
配置信息模块102,用于根据虚拟机类型,设置虚拟机的配置信息。
其中,验证目标虚拟机的配置信息包括:验证目标和验证目标的运行环境;
执行引擎虚拟机的配置信息包括:设定的执行验证脚本和执行验证脚本的运行环境;
防护策略虚拟机的配置信息包括:验证目标、验证目标的运行环境和验证目标的补丁、防护软件或执行防护脚本。
模板模块103,用于将所述模拟环境的各虚拟机的配置信息作为模板保存至模板库中。
封装模块200,用于对模板库中的模板以设定格式进行封装。
例如,用于对模板库中的模板以JSON(JavaScript Object Notation,简称JavaScript对象表示法)数据格式进行封装。
验证模块300,用于根据封装后的模板创建模拟环境的实例,并通过实例对验证目标进行验证。
具体的,验证模块300,包括:
选择模块301,用于根据验证目标的配置信息,在模板库中检索与验证目标的配置信息匹配的模板;
实例模块302,用于将被检索到的模板发送至调度执行器,调度执行器根据检索到的模板中的虚拟机配置信息在模拟环境中配置虚拟机,得到模拟环境的实例。
执行模块303,用于将设定的执行验证脚本发送至执行引擎中,执行引擎控制执行验证脚本对验证目标进行漏洞验证。其中,执行验证脚本的数量为一个或多个。
本发明第四实施例,一种基于模拟环境的漏洞验证系统,本实施例所述系统与第三实施例大至相同,区别在于对验证结果和模拟环境进行进一步处理,如图4所示,本实施例的所述方法,还包括以下具体步骤:
保存模块400,用于对验证模块300得到的漏洞验证结果进行保存。
释放模块500,用于当漏洞验证完成后,对模拟环境进行释放。
当对验证目标进行一次或多次漏洞验证完成后,将模拟环境的实例进行删除。
报告模块600,根据保存的所述漏洞验证结果生成验证报告。
验证报告包括:漏洞的基本信息、模拟环境的配置信息、防护策略的配置信息、执行验证脚本的信息和漏洞验证日志结果等信息。
本发明第五实施例,一种基于模拟环境的漏洞验证方法,为了克服现有漏洞研究人员的工作效率低、工作内容个性化程度强和漏洞验证过程不可追溯性等特点,本实施例提出了一种基于模拟环境漏洞验证方法,实现了网络、系统和软件安全漏洞自动化模拟验证,解决了现有漏洞研究人员构建复杂漏洞验证环境的效率不高和重复利用问题,以及不能自动执行和追溯验证过程的问题。
基于模拟环境的漏洞验证方法,包括以下具体步骤:
步骤S901,构建验证漏洞的模拟环境。
模拟环境的构建,主要是针对待验证的漏洞,构建存在此漏洞软件环境,例如验证IE相关的漏洞时,需要选择在某个版本的操作系统上,安装有此漏洞的IE软件作为验证目标,同时还需要安装执行验证脚本的执行环境如:python的验证脚本,需要安装python2及其相关的模块作为执行引擎。还有在验证该漏洞的存在性时,也会对漏洞的补丁,或一些防护软件的防护能力进行测试,此时需要安装修复此漏洞补丁、软件或脚本等,作为模拟环境的防护策略。
所以当确认了防护策略、验证目标和执行引擎信息后,可以在云平台环境上构建出模拟环境。
例如:IE相关的漏洞验证,根据确认的防护策略、验证目标和执行引擎信息可以设计如表2所示的模拟环境组成。
表2
确定防护策略、验证目标和执行引擎。根据待验证的漏洞样本,构建漏洞存在的模拟环境,并且可以增加不同的防护措施到模拟环境中,以验证部署不同防护策略下模拟环境漏洞的存在性。并在模拟环境中的可标识验证的目标和验证脚本的执行位置。
模拟环境的信息收集具体实现方式:
在模拟环境的信息收集步骤中,目标是指收集扫描对象的IP信息,可以是一个单独的主机(通常是虚拟机),也可以是几个主机或者是多个服务器的组合;执行引擎是验证脚本的执行环境,系统会根据不同的脚本类型选择虚拟机中的执行引擎执行验证脚本。
模拟环境的动态构建部分是建立在基础设施云平台的基础上,根据构建方式的不同,分为两部分核心内容:
1)全新的构建模拟环境
模拟环境的构建作为本系统的主要基础部分,为后面的验证步骤提供执行的软硬件资源,全新构建模拟环境主要包括以下内容:
1.实验环境的整体场景布局,如一共需要几台机器和每台机器的硬件配置信息等。
2.针对每个机器的功能不同,需要安装的软件和策略等配置的信息。
3.将当前的模拟环境信息保存到模板库中。
在全新创建模拟环境时,调度引擎会根据全新创建的模拟环境信息,调用底层基础资源云平台接口,完成模拟环境实例的构建过程,最后返回可运行的模拟环境实例集合,模拟环境中的各主机的软件和配置信息,生成实例的时候已经安装好。此时,新的模拟环境创建完成。之后,我们可以将此实验环境的配置信息数据保存为模拟环境库,用户可以直接使用保存的配置信息生成新实例。在此配置信息相当于模板的作用。
2)自动选择符合特征的模拟环境。
根据漏洞信息的标识和要求,自动的在模拟环境库中选择合适的模拟环境,根据此配置生成模拟环境的实例。
步骤S902,对数据进行封装。
对模拟环境的数据和漏洞数据进行封装,以统一的格式传递数据。
对收集的模拟环境信息数据,按照json数据结构的格式进行封装,单个虚拟机的数据结构实例如下:
{"name":"rewr",虚拟机的名字
"instanceOfferingUuid":"aa9bd1fe19124584872583cf33ab7b9f",虚拟机的实例规格—内存大小和cpu的核数
"imageUuid":"616bf8ee9fc840a59a501893e03d00cb",虚拟机的基础镜像—通过操作系统版本位数等信息选择匹配
"l3NetworkUuids":["68a837ff267f436ca7ac5d67a325d68d"],虚拟机之间的网络方案—默认
"dataDiskOfferingUuids":[],"description":"",
"defaultL3NetworkUuid":"68a837ff267f436ca7ac5d67a325d68d",默认网络
"systemTags":[],
"session":{"uuid":"36ce310f980c4b18a976c94ed15193cc"},与云平台的会话
"timeout":-1
}
数据封装具体实现方式:
漏洞的关键信息包括:模拟环境中的目标地址、操作系统信息、漏洞端口、漏洞类型、漏洞位置、漏洞参数、漏洞标识和应用版本信息等。
执行器信息包括:根据漏洞的标识和内容选取的验证脚本信息、脚本参数信息和脚本的执行环境信息等。
步骤S903,对漏洞进行验证。
数据以任务的形式下发到执行调度器,并根据模拟环境的配置数据,触发模拟环境中的脚本执行器,对模拟环境中的漏洞验证目标进行验证。
漏洞验证具体实现方式:
漏洞验证是整个系统的核心内容,通过前面的步骤,准备好模拟环境后,和准备验证的漏洞的基本信息和执行器基本信息,接下来的工作就是对漏洞进行当前场景下的验证动作,主要是通过统一的调度引擎,完成验证任务的全生命周期的管理和控制,触发目标执行引擎,执行漏洞验证脚本,并将过程中的日志和结果信息全部保存到调度引擎结果字段中。
步骤S904,对漏洞验证结果进行保存。
调度引擎会将验证结果和过程数据,从模拟环境中取回,保存到本次验证的结果信息中。
验证结果保存具体实现方式:
保存的结果根据漏洞的单次执行任务来选取;也就是说可以对相同环境下的漏洞验证多次执行,每次验证有自己对应的结果。
步骤S905,清除验证资源。
验证完成后,可以对模拟环境资源进行释放,也可以多次使用后再释放。
步骤S906,生成漏洞验证报告。
验证报告包括:漏洞基本信息、模拟环境的具体配置、防护策略的配置、验证的脚本、是否存在漏洞和漏洞验证日志结果等信息。
通过基于模拟环境的漏洞验证方法可以有效提高漏洞研究人员的工作效率,并且对漏洞验证过程做到可复用和可追溯。
通过基于模拟环境的漏洞验证方法解决的技术问题主要有两个:
1.在实验的环境构建方面,结合KVM(kernel-based Virtual Machine)虚拟化技术和容器虚拟化技术,可以将复杂的实验环境组合部署,并实现虚拟机和容器的互通,从而使相同的资源上可以构建更多的实验场环境。整体上提高启停和部署的速度。
2.在具体的实验环境中,做到可以执行批量验证,并且使执行验证、抓取结果、结果分析和评价的整个过程可以实现自动完成。
本发明第六实施例,本实施例是在上述实施例的基础上,以基于模拟环境的漏洞验证系统为例,结合附图5~6介绍一个本发明的应用实例。
基于模拟环境的漏洞验证系统包括:漏洞验证任务功能管理模块、实验环境构建模块和知识库管理模块。
其中,漏洞验证任务功能管理模块:用于将漏洞验证实验的每次操作,封装成任务模型的方式执行,任务的结构分为以漏洞为核心的主任务和针对此任务每次验证(验证脚本或参数不同)的子任务。
实验环境构建模块:用于构建漏洞验证的实验环境,主要过程是通过设计台页面,设计出整个实验环境的虚拟机构成,包括有多少个虚拟机组成,每个虚拟机的配置,之后通过底层云平台接口,以构建任务的形式将数据封装成构建任务,下发执行。
其中,虚拟机的配置包括:内存,硬盘,CPU,操作系统和工具软件等。
知识库管理模块:用于提供验证任务和构建任务依赖数据的统一管理,包括操作系统的镜像信息、漏洞信息和漏洞验证脚本信息等。
技术方案原理:
本方案的核心技术原理包括:采用基于KVM虚拟化的Zstack云平台和基于容器虚拟化技术的docker组合方式,搭建底层的基础设施云平台。
业务层采用灵活的任务调度框架,来支撑以任务形式封装的业务请求,并且基于插件式的任务引擎模块,开发支撑多种场景的业务需求。
主要的功能结构图如图5所示,其中上层是具体的业务系统模块的功能,中间服务包括了任务调度框架和任务调度引擎,知识库模块作为对的服务在整个系统中提供数据的统一管理。
由底层创建出来的实验环境集合作为运行时实例,会集中放到实例集合中管理,并且通过代理程序,完成对虚拟机内部运行程序的控制和实现。
如图6所示,系统的部署结构主要分为管理服务器节点、数据库服务器节点、总线服务器节点、资源控制器节点和资源节点。
其中,管理服务器节点、数据库服务器节点和总线服务器节点主要部署的是系统的功能模块和数据存储模块。
资源控制器节点和资源节点是提供整个系统的基础云部署,主要是搭建虚拟机环境的集群。
本发明第七实施例,以基于模拟环境的漏洞验证系统为例,结合附图7介绍一个本发明的应用实例。
基础云平台的方案可以采用开源的openstack+docker的方式部署,将docker作为Nova的一种驱动方式,通过docker的api接口的方式管理docker容器的生命周期。
如图7所示,通过nova-api,docker driver作为hypervisor部署。原理很好理解,nova-computer-api调用virt api将nova docker driver作为http agent和docker restapi互通,从而控制docker和与容器的通信。另外,glance作为docker register服务的本地节点,提供image服务。
本实施例的优点:相比VM的性能优势,特别是Auto-Scale Out的时候;使用经验和资料详细;混合方案,满足不同性能需求。
根据本发明面对的漏洞验证实验环境的构建需求,不需要采用openstack的heat或Magnum的docker集成。主要是因为没有复杂的模板部署编排等需求,不需要复杂的的调度管理和负载均衡等应用。
通过具体实施方式的说明,应当可对本发明为达成预定目的所采取的技术手段及功效得以更加深入且具体的了解,然而所附图示仅是提供参考与说明之用,并非用来对本发明加以限制。

Claims (15)

1.一种基于模拟环境的漏洞验证方法,其特征在于,包括:
步骤一,构建验证漏洞的模拟环境,将所述模拟环境的配置信息以模板形式保存至模板库中;
步骤二,对所述模板库中的模板以设定格式进行封装;
步骤三,根据封装后的模板创建所述模拟环境的实例,并通过所述实例对所述漏洞进行验证。
2.根据权利要求1所述的基于模拟环境的漏洞验证方法,其特征在于,所述漏洞包括:软件安全漏洞、网络安全漏洞或系统安全漏洞。
3.根据权利要求1所述的基于模拟环境的漏洞验证方法,其特征在于,所述步骤一,具体包括:
步骤A1,根据验证目标、执行引擎和防护策略,判断云平台环境上构建所述模拟环境的虚拟机数量及虚拟机类型;
步骤A2,根据所述虚拟机类型,设置所述虚拟机的配置信息;
步骤A3,将所述模拟环境的各虚拟机的配置信息作为所述模板保存至所述模板库中。
4.根据权利要求3所述的基于模拟环境的漏洞验证方法,其特征在于,所述步骤A1中,所述验证目标为待验证的漏洞;
所述执行引擎为验证所述漏洞的执行验证脚本的执行环境;
所述防护策略为修复所述漏洞的补丁、防范所述漏洞的防护软件或所述漏洞的执行防护脚本。
5.根据权利要求3所述的基于模拟环境的漏洞验证方法,其特征在于,所述步骤A1中,所述虚拟机类型包括:验证目标虚拟机、执行引擎虚拟机和防护策略虚拟机。
6.根据权利要求5所述的基于模拟环境的漏洞验证方法,其特征在于,所述验证目标虚拟机的数量为所述待验证的漏洞的数量;
所述执行引擎虚拟机的数量为1或0;若执行引擎安装在验证目标虚拟机时,则执行引擎虚拟机的数量为0;
所述防护策略虚拟机的数量与所述验证目标虚拟机的数量相同。
7.根据权利要求3所述的基于模拟环境的漏洞验证方法,其特征在于,所述步骤A2中,所述验证目标虚拟机的配置信息包括:所述验证目标和所述验证目标的运行环境;
所述执行引擎虚拟机的配置信息包括:所述执行验证脚本和所述执行验证脚本的运行环境;
所述防护策略虚拟机的配置信息包括:所述验证目标的补丁或防护脚本、所述验证目标和所述验证目标的运行环境。
8.根据权利要求1所述的基于模拟环境的漏洞验证方法,其特征在于,所述步骤三,具体包括:
步骤B1,根据所述验证目标的配置信息,在所述模板库中检索与所述验证目标的配置信息匹配的模板;
步骤B2,将被检索到的模板发送至调度执行器,所述调度执行器根据所述被检索到的模板中的虚拟机配置信息在所述模拟环境中配置虚拟机,得到模拟环境的实例;
步骤B3,将设定的执行验证脚本发送至执行引擎中,所述执行引擎控制所述执行验证脚本对所述验证目标进行漏洞验证;所述执行验证脚本的数量为一个或多个。
9.根据权利要求1所述的基于模拟环境的漏洞验证方法,其特征在于,所述方法,还包括:
步骤四,对漏洞验证结果进行保存;
步骤五,当所述漏洞验证完成后,对所述模拟环境进行释放;
步骤六,根据保存的所述漏洞验证结果生成验证报告。
10.根据权利要求9所述的基于模拟环境的漏洞验证方法,其特征在于,所述步骤五,具体包括:
当对所述验证目标进行一次或多次漏洞验证完成后,将所述模拟环境的实例进行删除。
11.一种基于模拟环境的漏洞验证系统,其特征在于,包括:
模拟环境构建模块,用于构建验证漏洞的所述模拟环境,将所述模拟环境的配置信息以模板形式保存至所述模板库中;
封装模块,用于对所述模板库中的模板以设定格式进行封装;
验证模块,用于根据封装后的模板创建所述模拟环境的实例,并通过所述实例对所述漏洞进行验证。
12.根据权利要求11所述的基于模拟环境的漏洞验证系统,其特征在于,所述模拟环境构建模块,具体包括:
虚拟机配置模块,用于根据验证目标、执行引擎和防护策略,判断云平台环境上构建所述模拟环境的虚拟机数量及虚拟机类型;
配置信息模块,用于根据所述虚拟机类型,设置所述虚拟机的配置信息;
模板模块,用于将所述模拟环境的各虚拟机的配置信息作为所述模板保存至所述模板库中。
13.根据权利要求12所述的基于模拟环境的漏洞验证系统,其特征在于,所述验证模块,具体包括:
选择模块,用于根据所述验证目标的配置信息,在所述模板库中检索与所述验证目标的配置信息匹配的模板;
实例模块,用于将被检索到的模板发送至调度执行器,所述调度执行器根据所述被检索到的模板中的虚拟机配置信息在所述模拟环境中配置虚拟机,得到模拟环境的实例;
执行模块,用于将设定的执行验证脚本发送至执行引擎中,执行引擎控制执行验证脚本对验证目标进行漏洞验证;所述执行验证脚本的数量为一个或多个。
14.根据权利要求11所述的基于模拟环境的漏洞验证系统,其特征在于,所述系统,还包括:
保存模块,用于对所述验证模块得到的漏洞验证结果进行保存;
释放模块,用于当所述漏洞验证完成后,对所述模拟环境进行释放;
报告模块,用于根据保存的所述漏洞验证结果生成验证报告。
15.根据权利要求14所述的基于模拟环境的漏洞验证系统,其特征在于,所述释放模块,具体用于:
当对所述验证目标进行一次或多次漏洞验证完成后,将所述模拟环境的实例进行删除。
CN201610557670.2A 2016-07-15 2016-07-15 一种基于模拟环境的漏洞验证方法及系统 Active CN106203126B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610557670.2A CN106203126B (zh) 2016-07-15 2016-07-15 一种基于模拟环境的漏洞验证方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610557670.2A CN106203126B (zh) 2016-07-15 2016-07-15 一种基于模拟环境的漏洞验证方法及系统

Publications (2)

Publication Number Publication Date
CN106203126A true CN106203126A (zh) 2016-12-07
CN106203126B CN106203126B (zh) 2019-07-09

Family

ID=57475956

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610557670.2A Active CN106203126B (zh) 2016-07-15 2016-07-15 一种基于模拟环境的漏洞验证方法及系统

Country Status (1)

Country Link
CN (1) CN106203126B (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106878341A (zh) * 2017-04-14 2017-06-20 北京匡恩网络科技有限责任公司 网络设备的漏洞扫描方法及装置
CN108345796A (zh) * 2017-05-02 2018-07-31 北京安天网络安全技术有限公司 一种漏洞修复及主机加固方法及系统
CN108551439A (zh) * 2018-03-23 2018-09-18 杭州迪普科技股份有限公司 一种策略模板应用的改进方法及装置
CN108718293A (zh) * 2018-04-08 2018-10-30 安徽展航信息科技发展有限公司 一种信息安全网络安全实验室系统
CN109740351A (zh) * 2018-12-28 2019-05-10 广东电网有限责任公司 一种嵌入式固件的漏洞检测方法、装置及设备
CN109960937A (zh) * 2019-04-02 2019-07-02 中国传媒大学 一种漏洞演练环境的构建方法及系统
CN110348210A (zh) * 2018-04-08 2019-10-18 腾讯科技(深圳)有限公司 安全防护方法及装置
CN110443046A (zh) * 2019-08-14 2019-11-12 中国电子信息产业集团有限公司第六研究所 一种漏洞修复的方法及装置
CN111259406A (zh) * 2020-01-14 2020-06-09 中国传媒大学 一种云原生应用漏洞复现环境的自动化构建方法及系统
CN111310194A (zh) * 2020-02-14 2020-06-19 全球能源互联网研究院有限公司 一种漏洞渗透验证方法及装置
CN112134761A (zh) * 2020-09-23 2020-12-25 国网四川省电力公司电力科学研究院 基于固件分析的电力物联网终端脆弱性检测方法及系统
CN113127884A (zh) * 2021-04-28 2021-07-16 国家信息技术安全研究中心 一种基于虚拟化的漏洞并行验证方法及装置
CN113157550A (zh) * 2020-01-23 2021-07-23 北京华顺信安科技有限公司 基于容器的漏洞环境管理方法、系统
CN113760462A (zh) * 2021-09-07 2021-12-07 广东电网有限责任公司 一种调度自动化系统验证环境的构建方法及装置
CN117478440A (zh) * 2023-12-28 2024-01-30 中国人民解放军国防科技大学 一种poc批量验证方法、装置、设备和介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104363236A (zh) * 2014-11-21 2015-02-18 西安邮电大学 一种自动化漏洞验证的方法
CN104751056A (zh) * 2014-12-19 2015-07-01 中国航天科工集团第二研究院七〇六所 一种基于攻击库的漏洞验证系统与方法
CN104778413A (zh) * 2015-04-15 2015-07-15 南京大学 一种基于模拟攻击的软件漏洞检测方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104363236A (zh) * 2014-11-21 2015-02-18 西安邮电大学 一种自动化漏洞验证的方法
CN104751056A (zh) * 2014-12-19 2015-07-01 中国航天科工集团第二研究院七〇六所 一种基于攻击库的漏洞验证系统与方法
CN104778413A (zh) * 2015-04-15 2015-07-15 南京大学 一种基于模拟攻击的软件漏洞检测方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
汪玮等: "基于特征值的模板化库函数识别", 《第四届信息安全漏洞分析与风险评估大会论文集》 *
谢春梅: "基于模拟漏洞攻击的威胁评估研究", 《电脑知识与技术》 *

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106878341A (zh) * 2017-04-14 2017-06-20 北京匡恩网络科技有限责任公司 网络设备的漏洞扫描方法及装置
CN108345796A (zh) * 2017-05-02 2018-07-31 北京安天网络安全技术有限公司 一种漏洞修复及主机加固方法及系统
CN108551439A (zh) * 2018-03-23 2018-09-18 杭州迪普科技股份有限公司 一种策略模板应用的改进方法及装置
CN110348210A (zh) * 2018-04-08 2019-10-18 腾讯科技(深圳)有限公司 安全防护方法及装置
CN108718293A (zh) * 2018-04-08 2018-10-30 安徽展航信息科技发展有限公司 一种信息安全网络安全实验室系统
CN109740351A (zh) * 2018-12-28 2019-05-10 广东电网有限责任公司 一种嵌入式固件的漏洞检测方法、装置及设备
CN109960937A (zh) * 2019-04-02 2019-07-02 中国传媒大学 一种漏洞演练环境的构建方法及系统
CN110443046B (zh) * 2019-08-14 2021-10-29 中国电子信息产业集团有限公司第六研究所 一种漏洞修复的方法及装置
CN110443046A (zh) * 2019-08-14 2019-11-12 中国电子信息产业集团有限公司第六研究所 一种漏洞修复的方法及装置
CN111259406A (zh) * 2020-01-14 2020-06-09 中国传媒大学 一种云原生应用漏洞复现环境的自动化构建方法及系统
CN111259406B (zh) * 2020-01-14 2022-06-07 中国传媒大学 一种云原生应用漏洞复现环境的自动化构建方法及系统
CN113157550A (zh) * 2020-01-23 2021-07-23 北京华顺信安科技有限公司 基于容器的漏洞环境管理方法、系统
CN111310194A (zh) * 2020-02-14 2020-06-19 全球能源互联网研究院有限公司 一种漏洞渗透验证方法及装置
CN112134761A (zh) * 2020-09-23 2020-12-25 国网四川省电力公司电力科学研究院 基于固件分析的电力物联网终端脆弱性检测方法及系统
CN112134761B (zh) * 2020-09-23 2022-05-06 国网四川省电力公司电力科学研究院 基于固件分析的电力物联网终端脆弱性检测方法及系统
CN113127884A (zh) * 2021-04-28 2021-07-16 国家信息技术安全研究中心 一种基于虚拟化的漏洞并行验证方法及装置
CN113760462A (zh) * 2021-09-07 2021-12-07 广东电网有限责任公司 一种调度自动化系统验证环境的构建方法及装置
CN113760462B (zh) * 2021-09-07 2024-05-07 广东电网有限责任公司 一种调度自动化系统验证环境的构建方法及装置
CN117478440A (zh) * 2023-12-28 2024-01-30 中国人民解放军国防科技大学 一种poc批量验证方法、装置、设备和介质
CN117478440B (zh) * 2023-12-28 2024-03-01 中国人民解放军国防科技大学 一种poc批量验证方法、装置、设备和介质

Also Published As

Publication number Publication date
CN106203126B (zh) 2019-07-09

Similar Documents

Publication Publication Date Title
CN106203126A (zh) 一种基于模拟环境的漏洞验证方法及系统
EP3657753A1 (en) Technologies for scalable security architecture of virtualized networks
CN104951354B (zh) 一种基于动态迁移的虚拟机调度算法安全性验证方法
CN103346912B (zh) 告警相关性分析的方法、装置及系统
CN104933366B (zh) 一种移动终端应用程序处理方法
CN108370328B (zh) 一种nfv mano策略描述符的管理方法及装置
CN101488173B (zh) 支持零宕机的可信虚拟域启动文件完整性度量的方法
CN104102878B (zh) 一种Linux平台下的恶意代码分析方法及系统
Sun et al. One quantifiable security evaluation model for cloud computing platform
CN107733895B (zh) 一种云计算平台安全的量化评价方法
CN104732145B (zh) 一种虚拟机中的寄生进程检测方法和装置
CN103345604A (zh) 基于轻量虚拟机监控器的沙盒系统及用其监控os的方法
WO2013061213A1 (en) Passive monitoring of virtual systems using extensible indexing
CN103685564A (zh) 引入插件化应用能力层的行业应用在线运营云平台架构
Behnke et al. Héctor: A framework for testing iot applications across heterogeneous edge and cloud testbeds
WO2023165471A1 (zh) 一种云平台应用部署方法、装置、电子设备及存储介质
CN105704087B (zh) 一种基于虚拟化实现网络安全管理的装置及其管理方法
Li et al. Securing serverless computing: Challenges, solutions, and opportunities
CN106802790B (zh) 基于云平台的应用用户使用信息管理的方法、设备及系统
US20230188432A1 (en) Method and Apparatus for Determining Resource Configuration of Cloud Service System
CN103413093B (zh) 一种基于内存隔离的xen云平台虚拟机隔离方法
US11360871B1 (en) Automatic optimization and hardening of application images
CN105701400A (zh) 一种虚拟机平台的安全控制方法及装置
CN113127884A (zh) 一种基于虚拟化的漏洞并行验证方法及装置
WO2021096346A1 (en) A computer-implemented system for management of container logs and its method thereof

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant