CN107742080A - 针对虚拟化环境的漏洞挖掘方法及装置 - Google Patents
针对虚拟化环境的漏洞挖掘方法及装置 Download PDFInfo
- Publication number
- CN107742080A CN107742080A CN201710920326.XA CN201710920326A CN107742080A CN 107742080 A CN107742080 A CN 107742080A CN 201710920326 A CN201710920326 A CN 201710920326A CN 107742080 A CN107742080 A CN 107742080A
- Authority
- CN
- China
- Prior art keywords
- target device
- device simulator
- simulator
- crash
- collapse
- 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
Links
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
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种针对虚拟化环境的漏洞挖掘方法及装置,涉及数据安全技术领域,能够挖掘出设备模拟器中的漏洞。本发明的方法主要包括:向虚拟机中的目标设备模拟器发起特定访问,所述特定访问能够在所述目标设备模拟器存在漏洞的情况下,触发所述目标设备模拟器产生崩溃;获取与所述目标设备模拟器相对应的崩溃日志;从所述崩溃日志中提取所述目标设备模拟器崩溃时的关键崩溃信息,以便基于所述关键崩溃信息确定所述目标设备模拟器中存在的漏洞。本发明主要适用于在虚拟化环境中进行漏洞挖掘的场景中。
Description
技术领域
本发明涉及数据安全技术领域,特别是涉及一种针对虚拟化环境的漏洞挖掘方法及装置。
背景技术
虚拟机技术是指在一个物理机上通过虚拟机软件模拟出一个或多个虚拟机。为了在虚拟化环境下实现与网卡、磁盘等硬件设备相同的功能,一种设备模拟器应运而生。例如,可以使用网卡设备模拟器模拟网卡,使用磁盘设备模拟器模拟磁盘。
然而,由于设备模拟器本质上是一段程序,且程序员在编写某个设备模拟器时,很可能考虑不周,对于一些没有想到的数据的有效处理方法没有编写进去,所以导致在设备模拟器实际运行中,若遇到这些数据,则可能会产生漏洞,导致运行异常。因此,如何挖掘出设备模拟器中的漏洞是亟待解决的。
发明内容
有鉴于此,本发明提供的针对虚拟化环境的漏洞挖掘方法及装置,能够解决现有技术中无法挖掘出设备模拟器中的漏洞的问题。
本发明的目的是采用以下技术方案来实现的:
第一方面,本发明提供了一种针对虚拟化环境的漏洞挖掘方法,所述方法包括:
向虚拟机中的目标设备模拟器发起特定访问,所述特定访问能够在所述目标设备模拟器存在漏洞的情况下,触发所述目标设备模拟器产生崩溃;
获取与所述目标设备模拟器相对应的崩溃日志;
从所述崩溃日志中提取所述目标设备模拟器崩溃时的关键崩溃信息,以便基于所述关键崩溃信息确定所述目标设备模拟器中存在的漏洞。
第二方面,本发明提供了一种针对虚拟化环境的漏洞挖掘装置,所述装置包括:
发起单元,用于向虚拟机中的目标设备模拟器发起特定访问,所述特定访问能够在所述目标设备模拟器存在漏洞的情况下,触发所述目标设备模拟器产生崩溃;
获取单元,用于获取与所述目标设备模拟器相对应的崩溃日志;
提取单元,用于从所述崩溃日志中提取所述目标设备模拟器崩溃时的关键崩溃信息,以便基于所述关键崩溃信息确定所述目标设备模拟器中存在的漏洞。
第三方面,本发明提供了一种存储介质,所述存储介质存储有多条指令,所述指令适用于由处理器加载并执行如第一方面所述的针对虚拟化环境的漏洞挖掘方法。
第四方面,本发明提供了一种电子设备,所述电子设备包括存储介质和处理器;
所述处理器,适于实现各指令;
所述存储介质,适于存储多条指令;
所述指令适于由所述处理器加载并执行如第一方面所述的针对虚拟化环境的漏洞挖掘方法。
借由上述技术方案,与现有技术中无法挖掘出设备模拟器的漏洞相比,本发明提供的针对虚拟化环境的漏洞挖掘方法及装置,能够向虚拟机中的目标设备模拟器发起触发该目标设备模拟器产生崩溃的特定访问,以获得该目标设备模拟器发生时能生成的崩溃日志,从而从崩溃日志中提取出目标设备模拟器崩溃时的关键崩溃信息,并能够基于该关键崩溃信息确定出目标设备模拟器中存在的漏洞。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种针对虚拟化环境的漏洞挖掘方法的流程图;
图2示出了本发明实施例提供的另一种针对虚拟化环境的漏洞挖掘方法的流程图;
图3示出了本发明实施例提供的一种针对虚拟化环境的漏洞挖掘装置的组成框图;
图4示出了本发明实施例提供的一种针对虚拟化环境的漏洞挖掘装置的组成框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例提供了一种针对虚拟化环境的漏洞挖掘方法,如图1所示,所述方法主要包括:
101、向虚拟机中的目标设备模拟器发起特定访问。
目标设备模拟器可以是程序员在编写本发明程序的时候设定的设备模拟器;在设定目标设备模拟器时,可以直接设定该目标设备模拟器的模拟器标识,也可以只设定目标模拟器的设备类型,以便向虚拟机中的目标设备模拟器发起特定访问之前,先根据设定的设备类型,从虚拟机查找满足该设备类型的所有目标设备模拟器,并依次或者并发向这些目标设备模拟器发起特定访问。
其中,所述特定访问能够在所述目标设备模拟器存在漏洞的情况下,触发所述目标设备模拟器产生崩溃。也就是说,本发明实施例中的访问不是一般的正常访问,而是专门引发目标设备模拟器体现出所隐藏的漏洞。另外,设备模拟器可以基于hypervisor***生成。
102、获取与所述目标设备模拟器相对应的崩溃日志。
在访问目标设备模拟器的过程中,若目标设备模拟器因存在漏洞而产生崩溃,则会生成相应的崩溃日志,因此可以获取与该目标设备模拟器相对应的崩溃日志,以便通过对崩溃日志分析,从中确定该目标设备模拟器存在的漏洞。
103、从所述崩溃日志中提取所述目标设备模拟器崩溃时的关键崩溃信息,以便基于所述关键崩溃信息确定所述目标设备模拟器中存在的漏洞。
其中,所述关键崩溃信息包括所述目标设备模拟器崩溃时所执行指令所处的位置和/或寄存器的状态,也就是说,当发生崩溃时,会记录目标设备模拟器是在执行哪个指令时发生崩溃的,也会记录发生崩溃时寄存器的状态以及其他信息。在获得关键崩溃信息后,程序员可以根据该关键崩溃信息分析目标设备模拟器存在的漏洞的具体类型、具体危害等,或者通过机器自学习的方式由计算机自动对该关键崩溃信息进行分析。
其中,寄存器是中央处理器的组成部分。寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令、数据和地址。
需要补充的是,在通过101-103的顺序执行完成一次后,为了挖掘出目标设备模拟器存在的更多漏洞,可以再循环执行上述步骤。
与现有技术中无法挖掘出设备模拟器的漏洞相比,本发明实施例提供的针对虚拟化环境的漏洞挖掘方法,能够向虚拟机中的目标设备模拟器发起触发该目标设备模拟器产生崩溃的特定访问,以获得该目标设备模拟器发生时能生成的崩溃日志,从而从崩溃日志中提取出目标设备模拟器崩溃时的关键崩溃信息,并能够基于该关键崩溃信息确定出目标设备模拟器中存在的漏洞。
进一步的,依据图1所示的方法,本发明的另一个实施例还提供了一种针对虚拟化环境的漏洞挖掘方法,如图2所示,所述方法主要包括:
201、向虚拟机中的目标设备模拟器发起特定访问。
由于所述特定访问是能够在所述目标设备模拟器存在漏洞的情况下,触发所述目标设备模拟器产生崩溃的访问,所以在向所述目标设备模拟器发起访问时,其具体的访问手段也是特定的。具体的,向目标设备模拟器发起特定访问的具体实现方式可以为:向所述目标设备模拟器中的特定端口和/或特定内存发起读/写访问。
其中,所述特定端口或者特定内存可以是预先设置的,也可以是随机生成的。例如,当目标设备模拟器是网卡模拟器时,该网卡模拟器的数据输入端口的基地址和区间是固定的,但是对某一具体端口的操作类型(包括读操作和写操作)、操作内容以及端口地址却可以是随机生成的。
202、获取与所述目标设备模拟器相对应的崩溃日志。
在实际应用中,可以有专门记录日志的日志记录程序来记录目标设备模拟器对应的崩溃日志。具体的,可以在一次访问结束后,获取由日志记录程序记录的与所述目标设备模拟器相对应的崩溃日志。其中,所述日志记录程序位于宿主机中,用于监控并记录各个设备模拟器的进程状态。
为了便于区分不同设备模拟器对应的崩溃日志,可以分别将不同设备模拟器对应的崩溃日志记录在不同的文件夹当中,并针对一次访问,将相关的崩溃日志记录在一个文件中,即一次访问对应一个崩溃日志文件。由此,电子设备可以根据目标设备模拟器的模拟器标识查找到对应的崩溃日志文件夹,然后根据访问结束时间,从崩溃日志文件夹中获取具体的崩溃日志文件,并对该崩溃日志文件中的崩溃日志进行分析。
203、从所述崩溃日志中提取所述目标设备模拟器崩溃时的关键崩溃信息,以便基于所述关键崩溃信息确定所述目标设备模拟器中存在的漏洞。
本步骤的具体实现方式与上述步骤103的具体实现方式一致,在此不再赘述。
204、判断所述目标设备模拟器的运行状态是否达到边界条件。
其中,所述边界条件是用于衡量所述特定访问已经满足本次漏洞挖掘需求的条件。也就是说,通过循环执行上述步骤201-203到达一定条件时,可以挖掘出基于特定访问能够挖掘出的目标设备模拟器中存在的所有漏洞,若再继续挖掘,则不会挖掘出新的漏洞。为了节省漏洞挖掘耗费的资源,可以在恰好能够满足本次漏洞挖局需要时,就停止漏洞挖掘,而不再继续做没有意义的操作。
具体的,运行状态包括但不限于崩溃次数和运行时间。
当运行状态是崩溃次数时,本步骤的具体实现方式可以为:判断所述目标设备模拟器的崩溃次数是否达到预设次数阈值;若所述崩溃次数达到所述预设次数阈值,则确定所述目标设备模拟器的运行状态达到所述边界条件;若所述崩溃次数未达到所述预设次数阈值,则确定所述目标设备模拟器的运行状态未达到所述边界条件
其中,预设次数阈值是根据历史挖掘经验设置的关于崩溃次数的阈值。示例性的,若预设次数阈值为10次,则开始向虚拟机中的目标设备模拟器发起特定访问后,可以实时或者周期性地判断所述目标设备模拟器的崩溃次数是否达到10次;若崩溃次数达到10次,则执行步骤205,即停止访问所述目标设备模拟器;若崩溃次数还未达到10次,则继续执行步骤201,即继续向所述目标设备模拟器发起特定访问。
当运行状态是运行时间时,本步骤的具体实现方式可以为:判断所述目标设备模拟器的运行时间是否达到预设时间阈值;若所述运行时间达到所述预设时间阈值,则确定所述目标设备模拟器的运行状态达到所述边界条件;若所述运行时间未达到所述预设时间阈值,则确定所述目标设备模拟器的运行状态未达到所述边界条件。
其中,预设时间阈值是根据历史挖掘经验设置的关于一次漏洞挖掘所需的时间阈值。示例性的,若预设时间阈值为72小时,则开始向虚拟机中的目标设备模拟器发起特定访问后,可以实时或者周期性的判断所述目标设备模拟器的运行时间是否达到72小时;若运行时间达到72小时,则执行步骤205,即停止访问所述目标设备模拟器;若运行时间还未达到72小时,则继续执行步骤201,即继续向所述目标设备模拟器发起特定访问。
205、若所述运行状态达到所述边界条件,则停止访问所述目标设备模拟器。
若所述运行状态未达到所述边界条件,则继续执行步骤201。
当停止访问该目标设备模拟器,从而停止本次挖掘后,程序员可以更新挖掘程序,待更新完成后,继续执行上述步骤201-205,以便继续对所述目标设备模拟器进行漏洞挖掘,以挖掘出其他漏洞。
与现有技术中无法挖掘出设备模拟器的漏洞相比,本发明实施例提供的针对虚拟化环境的漏洞挖掘方法,不仅能够自动地挖掘出各个设备模拟器中存在的漏洞,在漏洞挖掘达到一定界限后(即已经挖掘出所能挖掘的所有漏洞后),立即停止漏洞挖掘,避免因继续进行漏洞挖掘而产生资源浪费的现象。
进一步的,依据上述方法实施例,本发明的另一个实施例还提供了一种针对虚拟化环境的漏洞挖掘装置,如图3所示,所述装置主要包括:
发起单元31,用于向虚拟机中的目标设备模拟器发起特定访问,所述特定访问能够在所述目标设备模拟器存在漏洞的情况下,触发所述目标设备模拟器产生崩溃;也就是说,本发明实施例中的访问不是一般的正常访问,而是专门引发目标设备模拟器体现出所隐藏的漏洞。另外,设备模拟器可以基于hypervisor***生成。
获取单元32,用于获取与所述目标设备模拟器相对应的崩溃日志;
提取单元33,用于从所述崩溃日志中提取所述目标设备模拟器崩溃时的关键崩溃信息,以便基于所述关键崩溃信息确定所述目标设备模拟器中存在的漏洞。
可选的,所述关键崩溃信息包括所述目标设备模拟器崩溃时所执行指令所处的位置和/或寄存器的状态。
可选的,所述发起单元31用于向所述目标设备模拟器中的特定端口和/或特定内存发起读/写访问。
其中,所述特定端口或者特定内存可以是预先设置的,也可以是随机生成的。例如,当目标设备模拟器是网卡模拟器时,该网卡模拟器的数据输入端口的基地址和区间是固定的,但是对某一具体端口的操作类型(包括读操作和写操作)、操作内容以及端口地址却可以是随机生成的。
可选的,所述获取单元32用于在一次访问结束后,获取由日志记录程序记录的与所述目标设备模拟器相对应的崩溃日志;所述日志记录程序位于宿主机中,用于监控并记录各个设备模拟器的进程状态。
可选的,如图4所示,所述装置还包括:
判断单元34,用于判断所述目标设备模拟器的运行状态是否达到边界条件,所述边界条件是用于衡量所述特定访问已经满足本次漏洞挖掘需求的条件;
停止单元35,用于当所述运行状态达到所述边界条件时,停止访问所述目标设备模拟器。
可选的,所述判断单元34包括:
第一判断模块341,用于判断所述目标设备模拟器的崩溃次数是否达到预设次数阈值;
第一确定模块342,用于当所述崩溃次数达到所述预设次数阈值时,确定所述目标设备模拟器的运行状态达到所述边界条件。
可选的,所述判断单元34包括:
第二判断模块343,用于判断所述目标设备模拟器的运行时间是否达到预设时间阈值;
第二确定模块344,用于当所述运行时间达到所述预设时间阈值时,确定所述目标设备模拟器的运行状态达到所述边界条件。
与现有技术中无法挖掘出设备模拟器的漏洞相比,本发明实施例提供的针对虚拟化环境的漏洞挖掘装置,能够向虚拟机中的目标设备模拟器发起触发该目标设备模拟器产生崩溃的特定访问,以获得该目标设备模拟器发生时能生成的崩溃日志,从而从崩溃日志中提取出目标设备模拟器崩溃时的关键崩溃信息,并能够基于该关键崩溃信息确定出目标设备模拟器中存在的漏洞。在漏洞挖掘达到一定界限后(即已经挖掘出所能挖掘的所有漏洞后),立即停止漏洞挖掘,避免因继续进行漏洞挖掘而产生资源浪费的现象。
进一步的,依据上述方法实施例,本发明的另一个实施例还提供了一种存储介质,所述存储介质存储有多条指令,所述指令适用于由处理器加载并执行如上所述的针对虚拟化环境的漏洞挖掘方法。
与现有技术中无法挖掘出设备模拟器的漏洞相比,本发明实施例提供的存储介质中存储的指令,能够向虚拟机中的目标设备模拟器发起触发该目标设备模拟器产生崩溃的特定访问,以获得该目标设备模拟器发生时能生成的崩溃日志,从而从崩溃日志中提取出目标设备模拟器崩溃时的关键崩溃信息,并能够基于该关键崩溃信息确定出目标设备模拟器中存在的漏洞。在漏洞挖掘达到一定界限后(即已经挖掘出所能挖掘的所有漏洞后),立即停止漏洞挖掘,避免因继续进行漏洞挖掘而产生资源浪费的现象。
进一步的,依据上述方法实施例,本发明的另一个实施例还提供了一种电子设备,所述电子设备包括存储介质和处理器;
所述处理器,适于实现各指令;
所述存储介质,适于存储多条指令;
所述指令适于由所述处理器加载并执行如上所述的针对虚拟化环境的漏洞挖掘方法。
与现有技术中无法挖掘出设备模拟器的漏洞相比,本发明提供的电子设备,能够向虚拟机中的目标设备模拟器发起触发该目标设备模拟器产生崩溃的特定访问,以获得该目标设备模拟器发生时能生成的崩溃日志,从而从崩溃日志中提取出目标设备模拟器崩溃时的关键崩溃信息,并能够基于该关键崩溃信息确定出目标设备模拟器中存在的漏洞。在漏洞挖掘达到一定界限后(即已经挖掘出所能挖掘的所有漏洞后),立即停止漏洞挖掘,避免因继续进行漏洞挖掘而产生资源浪费的现象。
本发明实施例还提供了:
A1、一种针对虚拟化环境的漏洞挖掘方法,所述方法包括:
向虚拟机中的目标设备模拟器发起特定访问,所述特定访问能够在所述目标设备模拟器存在漏洞的情况下,触发所述目标设备模拟器产生崩溃;
获取与所述目标设备模拟器相对应的崩溃日志;
从所述崩溃日志中提取所述目标设备模拟器崩溃时的关键崩溃信息,以便基于所述关键崩溃信息确定所述目标设备模拟器中存在的漏洞。
A2、根据A1所述的方法,所述关键崩溃信息包括所述目标设备模拟器崩溃时所执行指令所处的位置和/或寄存器的状态。
A3、根据A1所述的方法,所述向虚拟机中的目标设备模拟器发起特定访问包括:
向所述目标设备模拟器中的特定端口和/或特定内存发起读/写访问。
A4、根据A1至A3中任一项所述的方法,所述获取与所述目标设备模拟器相对应的崩溃日志包括:
在一次访问结束后,获取由日志记录程序记录的与所述目标设备模拟器相对应的崩溃日志;所述日志记录程序位于宿主机中,用于监控并记录各个设备模拟器的进程状态。
A5、根据A1至A3中任一项所述的方法,所述方法还包括:
判断所述目标设备模拟器的运行状态是否达到边界条件,所述边界条件是用于衡量所述特定访问已经满足本次漏洞挖掘需求的条件;
若所述运行状态达到所述边界条件,则停止访问所述目标设备模拟器。
A6、根据A5所述的方法,所述判断所述目标设备模拟器的运行状态是否达到边界条件包括:
判断所述目标设备模拟器的崩溃次数是否达到预设次数阈值;
若所述崩溃次数达到所述预设次数阈值,则确定所述目标设备模拟器的运行状态达到所述边界条件。
A7、根据A5所述的方法,所述判断所述目标设备模拟器的运行状态是否达到边界条件包括:
判断所述目标设备模拟器的运行时间是否达到预设时间阈值;
若所述运行时间达到所述预设时间阈值,则确定所述目标设备模拟器的运行状态达到所述边界条件。
B8、一种针对虚拟化环境的漏洞挖掘装置,所述装置包括:
发起单元,用于向虚拟机中的目标设备模拟器发起特定访问,所述特定访问能够在所述目标设备模拟器存在漏洞的情况下,触发所述目标设备模拟器产生崩溃;
获取单元,用于获取与所述目标设备模拟器相对应的崩溃日志;
提取单元,用于从所述崩溃日志中提取所述目标设备模拟器崩溃时的关键崩溃信息,以便基于所述关键崩溃信息确定所述目标设备模拟器中存在的漏洞。
B9、根据B8所述的装置,所述关键崩溃信息包括所述目标设备模拟器崩溃时所执行指令所处的位置和/或寄存器的状态。
B10、根据B8所述的装置,所述发起单元用于向所述目标设备模拟器中的特定端口和/或特定内存发起读/写访问。
B11、根据B8至B10中任一项所述的装置,所述获取单元用于在一次访问结束后,获取由日志记录程序记录的与所述目标设备模拟器相对应的崩溃日志;所述日志记录程序位于宿主机中,用于监控并记录各个设备模拟器的进程状态。
B12、根据B8至B10中任一项所述的装置,所述装置还包括:
判断单元,用于判断所述目标设备模拟器的运行状态是否达到边界条件,所述边界条件是用于衡量所述特定访问已经满足本次漏洞挖掘需求的条件;
停止单元,用于当所述运行状态达到所述边界条件时,停止访问所述目标设备模拟器。
B13、根据B12所述的装置,所述判断单元包括:
第一判断模块,用于判断所述目标设备模拟器的崩溃次数是否达到预设次数阈值;
第一确定模块,用于当所述崩溃次数达到所述预设次数阈值时,确定所述目标设备模拟器的运行状态达到所述边界条件。
B14、根据B12所述的方法,所述判断单元包括:
第二判断模块,用于判断所述目标设备模拟器的运行时间是否达到预设时间阈值;
第二确定模块,用于当所述运行时间达到所述预设时间阈值时,确定所述目标设备模拟器的运行状态达到所述边界条件。
C15、一种存储介质,所述存储介质存储有多条指令,所述指令适用于由处理器加载并执行如A1-A7中任一项所述的针对虚拟化环境的漏洞挖掘方法。
D16、一种电子设备,所述电子设备包括存储介质和处理器;
所述处理器,适于实现各指令;
所述存储介质,适于存储多条指令;
所述指令适于由所述处理器加载并执行如A1-A7中任一项所述的针对虚拟化环境的漏洞挖掘方法。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
可以理解的是,上述方法及装置中的相关特征可以相互参考。另外,上述实施例中的“第一”、“第二”等是用于区分各实施例,而并不代表各实施例的优劣。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在此提供的算法和显示不与任何特定计算机、虚拟***或者其它设备固有相关。各种通用***也可以与基于在此的示教一起使用。根据上面的描述,构造这类***所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的针对虚拟化环境的漏洞挖掘方法及装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (10)
1.一种针对虚拟化环境的漏洞挖掘方法,其特征在于,所述方法包括:
向虚拟机中的目标设备模拟器发起特定访问,所述特定访问能够在所述目标设备模拟器存在漏洞的情况下,触发所述目标设备模拟器产生崩溃;
获取与所述目标设备模拟器相对应的崩溃日志;
从所述崩溃日志中提取所述目标设备模拟器崩溃时的关键崩溃信息,以便基于所述关键崩溃信息确定所述目标设备模拟器中存在的漏洞。
2.根据权利要求1所述的方法,其特征在于,所述关键崩溃信息包括所述目标设备模拟器崩溃时所执行指令所处的位置和/或寄存器的状态。
3.根据权利要求1所述的方法,其特征在于,所述向虚拟机中的目标设备模拟器发起特定访问包括:
向所述目标设备模拟器中的特定端口和/或特定内存发起读/写访问。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述获取与所述目标设备模拟器相对应的崩溃日志包括:
在一次访问结束后,获取由日志记录程序记录的与所述目标设备模拟器相对应的崩溃日志;所述日志记录程序位于宿主机中,用于监控并记录各个设备模拟器的进程状态。
5.根据权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:
判断所述目标设备模拟器的运行状态是否达到边界条件,所述边界条件是用于衡量所述特定访问已经满足本次漏洞挖掘需求的条件;
若所述运行状态达到所述边界条件,则停止访问所述目标设备模拟器。
6.根据权利要求5所述的方法,其特征在于,所述判断所述目标设备模拟器的运行状态是否达到边界条件包括:
判断所述目标设备模拟器的崩溃次数是否达到预设次数阈值;
若所述崩溃次数达到所述预设次数阈值,则确定所述目标设备模拟器的运行状态达到所述边界条件。
7.根据权利要求5所述的方法,其特征在于,所述判断所述目标设备模拟器的运行状态是否达到边界条件包括:
判断所述目标设备模拟器的运行时间是否达到预设时间阈值;
若所述运行时间达到所述预设时间阈值,则确定所述目标设备模拟器的运行状态达到所述边界条件。
8.一种针对虚拟化环境的漏洞挖掘装置,其特征在于,所述装置包括:
发起单元,用于向虚拟机中的目标设备模拟器发起特定访问,所述特定访问能够在所述目标设备模拟器存在漏洞的情况下,触发所述目标设备模拟器产生崩溃;
获取单元,用于获取与所述目标设备模拟器相对应的崩溃日志;
提取单元,用于从所述崩溃日志中提取所述目标设备模拟器崩溃时的关键崩溃信息,以便基于所述关键崩溃信息确定所述目标设备模拟器中存在的漏洞。
9.一种存储介质,其特征在于,所述存储介质存储有多条指令,所述指令适用于由处理器加载并执行如权利要求1-7中任一项所述的针对虚拟化环境的漏洞挖掘方法。
10.一种电子设备,其特征在于,所述电子设备包括存储介质和处理器;
所述处理器,适于实现各指令;
所述存储介质,适于存储多条指令;
所述指令适于由所述处理器加载并执行如权利要求1-7中任一项所述的针对虚拟化环境的漏洞挖掘方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710920326.XA CN107742080B (zh) | 2017-09-30 | 2017-09-30 | 针对虚拟化环境的漏洞挖掘方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710920326.XA CN107742080B (zh) | 2017-09-30 | 2017-09-30 | 针对虚拟化环境的漏洞挖掘方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107742080A true CN107742080A (zh) | 2018-02-27 |
CN107742080B CN107742080B (zh) | 2021-06-08 |
Family
ID=61236613
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710920326.XA Active CN107742080B (zh) | 2017-09-30 | 2017-09-30 | 针对虚拟化环境的漏洞挖掘方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107742080B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114124567A (zh) * | 2021-12-07 | 2022-03-01 | 哈尔滨班竹科技有限公司 | 基于大数据漏洞挖掘的云服务处理方法及人工智能*** |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060236127A1 (en) * | 2005-04-01 | 2006-10-19 | Kurien Thekkthalackal V | Local secure service partitions for operating system security |
US20120272240A1 (en) * | 2011-04-25 | 2012-10-25 | Microsoft Corporation | Virtual Disk Storage Techniques |
CN104268085A (zh) * | 2014-10-24 | 2015-01-07 | 重庆邮电大学 | 一种基于属性提取的软件漏洞挖掘***及方法 |
CN105590063A (zh) * | 2015-12-25 | 2016-05-18 | 北京金山安全软件有限公司 | 一种挖掘漏洞的方法、装置及电子设备 |
CN105787364A (zh) * | 2014-12-23 | 2016-07-20 | 深圳市腾讯计算机***有限公司 | 任务的自动化测试方法、装置及*** |
CN106095682A (zh) * | 2016-06-15 | 2016-11-09 | 浪潮软件集团有限公司 | 一种模拟复杂网络的安卓应用稳定性测试方法 |
CN106557701A (zh) * | 2016-11-28 | 2017-04-05 | 北京奇虎科技有限公司 | 基于虚拟机的内核漏洞检测方法及装置 |
-
2017
- 2017-09-30 CN CN201710920326.XA patent/CN107742080B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060236127A1 (en) * | 2005-04-01 | 2006-10-19 | Kurien Thekkthalackal V | Local secure service partitions for operating system security |
US20120272240A1 (en) * | 2011-04-25 | 2012-10-25 | Microsoft Corporation | Virtual Disk Storage Techniques |
CN104268085A (zh) * | 2014-10-24 | 2015-01-07 | 重庆邮电大学 | 一种基于属性提取的软件漏洞挖掘***及方法 |
CN105787364A (zh) * | 2014-12-23 | 2016-07-20 | 深圳市腾讯计算机***有限公司 | 任务的自动化测试方法、装置及*** |
CN105590063A (zh) * | 2015-12-25 | 2016-05-18 | 北京金山安全软件有限公司 | 一种挖掘漏洞的方法、装置及电子设备 |
CN106095682A (zh) * | 2016-06-15 | 2016-11-09 | 浪潮软件集团有限公司 | 一种模拟复杂网络的安卓应用稳定性测试方法 |
CN106557701A (zh) * | 2016-11-28 | 2017-04-05 | 北京奇虎科技有限公司 | 基于虚拟机的内核漏洞检测方法及装置 |
Non-Patent Citations (1)
Title |
---|
王春海: "《VMWARE虚拟化与云计算应用案例详解》", 30 June 2016, 中国铁道出版社 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114124567A (zh) * | 2021-12-07 | 2022-03-01 | 哈尔滨班竹科技有限公司 | 基于大数据漏洞挖掘的云服务处理方法及人工智能*** |
Also Published As
Publication number | Publication date |
---|---|
CN107742080B (zh) | 2021-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10360142B2 (en) | Proactive and selective regression testing based on historic test results | |
CN108647145B (zh) | 软件内存安全检测方法及*** | |
EP3132353B1 (en) | User interface test coverage | |
Carrier et al. | Categories of digital investigation analysis techniques based on the computer history model | |
CN104391787B (zh) | 一种针对目标方法的监控、热切入方法及装置 | |
US9824000B1 (en) | Testing calling code dynamically with random error injection based on user-specified configuration | |
CN107292168A (zh) | 检测程序代码的方法及装置、服务器 | |
CN107545178A (zh) | 一种云应用的检测方法及云应用检测装置 | |
CN106528429A (zh) | 一种ui界面测试方法及装置 | |
CN101388055A (zh) | 一种用于漏洞模型检测的程序操作特征提取方法 | |
Said et al. | Towards Interactive Mining of Understandable State Machine Models from Embedded Software. | |
CN107229867A (zh) | 内核漏洞挖掘方法、装置、计算设备及计算机存储介质 | |
CN111221721B (zh) | 一种单元测试案例自动化录制和执行方法及装置 | |
CN113342629B (zh) | 操作轨迹还原方法、装置、计算机设备和存储介质 | |
CN107742080A (zh) | 针对虚拟化环境的漏洞挖掘方法及装置 | |
CN101937395B (zh) | 一种用于漏洞检测的检测对象程序特征提取方法 | |
CN108090352A (zh) | 检测***及检测方法 | |
CN103970507B (zh) | 64位虚拟机处理访存指令的方法及装置 | |
CN113127331B (zh) | 一种基于故障注入的测试方法、装置及计算机设备 | |
CN106528551A (zh) | 申请内存的方法和装置 | |
CN102831334A (zh) | 一种目标地址定位方法和*** | |
CN101930401A (zh) | 一种基于检测对象的软件漏洞模型检测方法 | |
EP3692456B1 (en) | Binary image stack cookie protection | |
CN106709338A (zh) | 一种程序检测方法及装置 | |
CN108984386A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |