The invention provides a loophole detection method, a loophole detection device and a server. The method includes: obtaining the sample data, a plurality of sample data are input to the target program in operation, to determine at least one running path; for each sample data compilation, and construct the new sample data set based on the compiled result; each sample data set in the new sample data are input to the target program in the operation, to determine the path of the new operation; new path to detect target based procedures, to determine the presence of target program vulnerabilities. Based on the sample data, compile the sample data more, greatly reducing the number of encoding rules according to the sample data, reduce vulnerability detection due to cost of generating sample data in time and resources, and improve the efficiency of determining the running path, and improve the detection efficiency of vulnerability detection.
【技术实现步骤摘要】
漏洞检测方法、漏洞检测装置及服务器
本专利技术涉及计算机
,具体而言,本专利技术涉及漏洞检测方法、漏洞检测装置及服务器。
技术介绍
目前,随着计算机技术的不断发展,很多恶意程序(例如,计算机病毒、后门程序、木马、间谍软件以及广告软件等)利用漏洞植入到目标程序中,从而导致目标程序瘫痪,给用户操作带来不便,或者导致用户私人信息泄漏,给用户的人身财产安全带来隐患,等等;因此,实时地对目标程序中存在的漏洞进行检测和修复显得尤为重要。现有技术在漏洞检测时,首先,确定运行路径,其次,对各个运行路径进行漏洞检测,查找各个运行路径中存在的漏洞,并对漏洞进行修复,从而减低恶意程序入侵目标程序的几率。为了更全面有效地检测目标程序中存在的漏洞,需要尽可能地确定出更多的运行路径,从而可通过尽可能全面的运行路径对目标程序进行全方位的漏洞检测;同时,在实际应用中,一个程序所包含的运行路径的数量十分庞大,且并不是每个运行路径都是“透明”的,因此,在漏洞检测的过程中,需要不断地确定出新的运行路径。通常,现有技术确定新的运行路径的方法是:将多个样本数据输入到目标程序中运行,通过分析这些样本数 ...
【技术保护点】
一种漏洞检测方法,其特征在于,包括:获取样本数据,将多个样本数据分别输入至目标程序中运行,以确定至少一条运行路径;对各个样本数据进行编译处理,并基于编译结果构建新的样本数据集合;将所述样本数据集合中的各个新的样本数据分别输入至所述目标程序中运行,以确定新的运行路径;基于所述新的运行路径对所述目标程序进行检测,以确定所述目标程序中存在的漏洞。
【技术特征摘要】
1.一种漏洞检测方法,其特征在于,包括:获取样本数据,将多个样本数据分别输入至目标程序中运行,以确定至少一条运行路径;对各个样本数据进行编译处理,并基于编译结果构建新的样本数据集合;将所述样本数据集合中的各个新的样本数据分别输入至所述目标程序中运行,以确定新的运行路径;基于所述新的运行路径对所述目标程序进行检测,以确定所述目标程序中存在的漏洞。2.根据权利要求1所述的漏洞检测方法,其特征在于,所述获取样本数据的步骤,具体包括:对所述目标程序进行插桩,并将预先确定的样本数据符号化;将所述符号化的样本数据输入至目标程序中运行,监测运行过程中产生的数据流,并在运行路径的分支处收集路径约束条件;对收集到路径约束条件中的任一条件取反,调用求解器进行求解,生成新的样本数据。3.根据权利要求1所述的漏洞检测方法,其特征在于,所述将多个样本数据分别输入至目标程序中运行,以确定至少一条运行路径的步骤,具体包括:将所述多个样本数据分别输入至目标程序中运行,并监测运行过程中产生的各个事件;将所述各个事件对应的日志分别打包为数据包发送至相应的硬件中处理,所述硬件将所述数据包记录在预先配置的内存中;解析所述数据包,提取所述数据包中包含的目标代码片段;分析所述目标代码片段,以确定所述至少一条运行路径。4.根据权利要求3所述的漏洞检测方法,其特征在于,所述分析所述目标代码片段,以确定所述至少一条运行路径的步骤,具体包括:分析所述目标代码片段,以提取与各个样本数据对应的运行路径;将与各个样本数据对应的运行路径中的相同运行路径去重,以确定至少一条运行路径。5.根据权利要求4所述的漏洞检测方法,其特征在于,所述方法还包括:将所述各个样本数据对应的运行路径以位图的形式存储;以及所述将与各个样本数据对应的运行路径中的相同运行路径去重,以确定至少一条运行路径的步骤,具体包括:将所述各个样本数据对应的运行路径的位图进行比较,若位图相同,将相同位图的运行路径去重,以确定至少一条运行路径...
【专利技术属性】
技术研发人员:潘剑锋,闫广禄,范晓草,
申请(专利权)人:北京奇虎科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。