CN109145609A - 一种数据处理方法和装置 - Google Patents
一种数据处理方法和装置 Download PDFInfo
- Publication number
- CN109145609A CN109145609A CN201811037800.5A CN201811037800A CN109145609A CN 109145609 A CN109145609 A CN 109145609A CN 201811037800 A CN201811037800 A CN 201811037800A CN 109145609 A CN109145609 A CN 109145609A
- Authority
- CN
- China
- Prior art keywords
- error information
- exceptional sample
- sample file
- program
- classification
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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是本发明实施例提供的另一种数据处理方法的流程示意图;
图5是本发明实施例提供的一种电子装置的结构示意图;
图6是本发明实施例提供的一种数据处理装置的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置展示该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
下面对本发明实施例进行详细介绍。
请参阅图1,图1为本发明实施例中一种数据处理方法流程示意图,如图1所示,所述数据处理方法包括:
S101、获取用于模糊测试的多个异常样本文件。
具体地,模糊测试(fuzz testing)是一种黑盒测试技术,该技术构造一些随机或半随机的数据(称为fuzz),即异常样本文件,作为被测试软件的输入,并监测被测试软件的响应和/或状态,以确定在被测软件中是否存在安全漏洞。作为一种黑盒测试工具,模糊测试通常用于大型软件开发项目,其优势在于:进行测试的成本相对较低,并且完全可以自动实现;并且,模糊测试经常能找出比较严重、且可被攻击者加以利用的安全漏洞。
在进行测试之前,需要生成异常样本文件,异常样本文件的生成可以程序完全自动地生成,也可以由测试人员添加一些限定,例如可以将文件内容限制为ASCII文本或非零字节等。
S102、将所述多个异常样本文件输入待测试的程序中进行所述模糊测试,获取所述程序针对所述多个异常样本文件输出的多个报错信息。
具体地,因为异常样本文件是随机或半随机的数据,因此将异常样本文件输入程序后,会导致程序出错,进而发现隐藏的漏洞,程序将输出报错信息。例如第一次将异常样本文件输入程序中,程序不能针对异常样本文件进行响应,说明程序存在漏洞(bug),输入第一个报错信息;随后,第二次输入异常样本文件继续测试系统,发现程序能针对异常样本文件进行响应,但响应结果不正确,说明程序存在bug,输出第二个报错信息。因此,也可知对于同一个程序,输入的异常样本文件不同,获得的报错信息有可能相同,也有可能不同。如表1所示:
表1异常样本文件与报错信息的对应关系表
标准输入(stdin) | 标准错误输出(stderr) |
异常样本文件1 | 报错信息1 |
异常样本文件2 | 报错信息1 |
异常样本文件3 | 报错信息2 |
由表1可知,不同的异常样本文件输入,有可能获得相同的报错信息。因为不同的异常样本文件输入,有可能触发相同的漏洞。
S103、对所述多个报错信息进行分类,并根据所述分类确定所述多个报错信息中的误报错信息。
具体地,将异常样本文件输入程序后,会获得对应的报错信息,通常情况下,报错信息具有文本描述内容,而文本描述内容中具有一些关键字。
可选情况下,可以针对关键字对多个报错信息进行分类。具体包括:获取已有的错误信息类别及其关键字标识;获取多个报错信息中每个报错信息的类别关键字;将每个报错信息中的类别关键字与已有的错误信息类别的关键字标识进行匹配,确定每个报错信息所属的已有错误信息类别。
例如“SUMMARY:AddressSanitizer:heap-buffer-overflow/home/Ubuntu/binutils/……”,由关键字“heap-buffer-overflow”可知这是一条关于内存溢出的报错信息,因此,可以通过关键字匹配确定该报错信息所属的类别。
可选的,在对多个报错信息进行分类之前,该方法还包括建立错误信息类别,具体包括:根据非程序漏洞相关报错信息建立非程序漏洞类别,非程序漏洞相关报错信息包括系统预设的异常处理机制和程序预设的异常处理机制;根据程序漏洞相关报错信息建立程序漏洞类别;根据非程序漏洞类别和程序漏洞类别建立错误信息类别,且程序漏洞类别和非程序分别包括对应的关键字标识,用于唯一标识非程序漏洞类别和程序漏洞类别。
将异常样本文件输入程序后,会输出几类报错信息,例如在文件被截断(filetruncated)时,程序终止运行并输出错误信息;或者系统执行一个文件或者其它对象映射进内存(mmap)失败时,也会输出错误信息。对于前者,开发者在写代码时,考虑到会出现file truncated这种错误,从而加入了检查这种错误,并输出报错信息的代码,因此这是软件预设的错误处理机制。对于后者,当程序执行时,需要利用系统调用来获得所需内存,系统提前考虑到mmap失败这种情况,因而预设了输出的报错信息。因此mmap失败是系统预设的异常处理机制。这两种报错信息都不是程序本身的漏洞造成的,将这些报错信息设置为非程序漏洞类别。而若输出的报错信息是SEGV(内存段异常)问题或heap-buffer-overflow(堆溢出)等相关问题,就是与程序本身漏洞相关的问题,这类报错信息对应设置为程序漏洞类别。
这个过程可如表2所示:
表2报错信息分类表
根据报错信息的关键字建立了报错信息类别后,将这些报错信息的关键字用来表示其对应的分类,这样,对于输出的报错信息,根据现有的报错信息类别的关键字标识与输出的报错信息的关键字之间的匹配关系,则可确定输出的报错信息的类别。如果输出的报错信息不包含已有的报错信息类别的关键字标识,说明该报错信息超出预测,通常情况下,非程序漏洞相关的报错信息,包括系统预设的异常处理机制或程序预设的异常处理机制,都是一定范围可预测的内容,而程序漏洞相关的报错信息,不可预测性更大,因此,标记该输出的报错信息,以便测试人员后续查阅,并且确定该报错信息为非误报错信息。
可见,在本发明实施例中,通过对报错信息进行程序漏洞和非程序漏洞的分类,然后将非程序漏洞对应的报错信息确定为误报错信息,将程序漏洞对应的报错信息确定为非误报错信息,而对于与现有分类匹配失败的报错信息,直接归类为非误报错信息。如此,对报错信息进行了明确分类,能够进一步对异常样本文件进行分类,进而提升测试人员对异常样本文件的处理效率。
S104、根据所述误报错信息识别所述多个异常样本文件中的误报异常样本文件。
因为报错信息是根据输入程序中的异常样本文件获得的,所以每一个报错信息都有其对应的异常样本文件。同样的,根据误报错信息即可识别误报异常样本文件。
可选的,根据误报错信息识别多个异常样本文件中的误报异常样本文件包括:获取多个异常样本文件中的每个异常样本文件及其对应的报错信息;若确定报错信息为误报错信息,则识别误报错信息对应的异常样本文件为误报异常样本文件。
如果已经确定报错信息为误报错信息,说明引发程序输出该条报错信息的异常样本文件不能引发程序漏洞相关的报错,其对应的异常样本文件也失去了分析的价值,因此,可以将这些异常样本文件识别为误报异常样本文件,后续测试人员可以直接忽略这些误报异常样本文件而不需要再对其进行分析。
可选的,根据误报错信息识别多个异常样本文件中的误报异常样本文件包括:获取多个异常样本文件中的每个异常样本文件及其对应的报错信息;若确定报错信息为非误报错信息,则检测是否存在与报错信息重复的多条非误报错信息;若是,则获取多条非误报错信息对应的多条异常样本文件;将多条异常样本文件中的一条识别为非异常样本文件,并将多条异常样本文件中其余异常样本文件识别为误报异常样本文件。
对于非误报错信息,有可能存在多条重复的报错信息,例如针对程序中的heap-buffer-overflow问题,有可能输入的多个异常样本文件都触发了这一类bug,导致输出了多条此类报错信息,而对于触发这一类报错信息的多个异常样本文件,并不需要进行一一分析,只需要保留一条用于后续测试员分析即可。因此,若果检测到存在多条重复的报错信息,则获取其对应的多个异常样本文件,保留其中一个,而将另外的都识别为误报异常样本文件。报错信息分类与误报异常样本文件的对应关系如表3所示:
表3报错信息分类与误报异常样本文件的对应关系
可见,在本申请实施例中,将非程序漏洞类别报错信息对应的异常样本文件归类为误报异常样本文件,然后将重复的多条相同关键字的报错信息对应的异常样本文件保留其中一条为非误报异常样本文件,剩余的多条异常样本文件都归类为误报异常样本文件。这个过程一方面过滤掉了没有引发程序漏洞报错的异常样本文件,同时过滤掉了引发同一类漏洞报错的重复异常样本文件,提升了异常样本文件的处理效率,减少了测试人员的时间消耗。
可选的,该方法还包括:对非误报异常样本文件进行特征提取,建立异常样本文件构造模型;根据异常样本文件构造模型生成可用异常样本文件;将可用异常样本文件用于模糊测试。
在构建异常样本文件时,是将正常的文件替换成不规则的字符串或编码,而在替换的过程中,某些位置的字符改变会更大概率地触发程序bug的发现,因此,根据历史异常样本文件,可以得出异常样本文件触发报错消息的规律,而对非误报异常样本文件进行特征提取生成的异常样本文件,能够更大概率地成为非误报异常样本文件,进而能够有效触发程序bug并输出相关报错信息。
可见,在本发明实施例中,电子设备首先获取用于模糊测试的异常样本文件,然后将异常样本文件输入需要进行测试的程序中,获取异常样本文件对应的报错信息,并对报错信息进行分类,确定报错信息中的误报错信息,最后根据误报错信息识别异常样本文件中的误报异常样本文件。在这个过程中,通过获取异常样本文件对应的报错信息,并对报错信息进行分类,确定误报错信息,进而确定误报错信息对应的误报异常样本文件,减少了测试人员对于误报异常样本文件的处理时间,提升了异常样本文件的分析效率。
请参阅图2,图2是本发明实施例提供的一种误报错信息确定方法的流程示意图,如图所示,本实施例中的误报错信息确定方法包括:
201、根据非程序漏洞相关报错信息建立非程序漏洞类别,所述非程序漏洞相关报错信息包括系统预设的异常处理机制和程序预设的异常处理机制;
202、根据程序漏洞相关报错信息建立程序漏洞类别;
203、根据所述非程序漏洞类别和所述程序漏洞类别建立所述错误信息类别,且所述程序漏洞类别和所述非程序分别包括对应的关键字标识,用于唯一标识所述非程序漏洞类别和所述程序漏洞类别;
204、获取错误信息类别及其关键字标识;
205、获取所述多个报错信息中每个报错信息的类别关键字;
206、将所述每个报错信息中的类别关键字与所述错误信息类别的关键字标识进行匹配,确定每个报错信息所属的所述错误信息类别;
207、若所述报错信息属于所述非程序漏洞类别,则确定所述报错信息为误报错信息;
208、若所述报错信息属于所述程序漏洞类别,则确定所述报错信息为非误报错信息;
209、若所述报错信息不属于所述非程序漏洞类别,且不属于所述程序漏洞类别,则标记所述报错信息,并确定所述报错信息为非误报错信息。
可见,在本发明实施例中,建立程序漏洞类别和非程序漏洞类别,然后将报错信息与已有分类进行关键字匹配,确定报错信息的类别。最后根据报错信息的类别,确定误报错信息。在这个过程中,通过报错信息的关键字与已有分类的匹配结果,确定误报错信息,提升了误报错信息的筛选效率和准确率,有助于后续对误报异常样本文件的发现。
请参阅图3,图3是本发明实施例提供的另一种数据处理方法的流程示意图,如图所示,本实施例中的数据处理方法包括:
301、获取用于模糊测试的多个异常样本文件;
302、将所述多个异常样本文件依次输入待测试的程序中进行所述模糊测试,获取所述程序针对所述多个异常样本文件输出的多个报错信息;
303、对所述多个报错信息进行分类,并根据所述分类确定所述多个报错信息中的误报错信息和非误报错信息;
304、获取多个异常样本文件中的每个异常样本文件及其对应的报错信息;
305、若确定所述报错信息为误报错信息,则识别所述误报错信息对应的异常样本文件为误报异常样本文件;
306、若确定所述报错信息为非误报错信息,则检测是否存在与所述报错信息重复的多条非误报错信息;
307、若是,则获取所述多条非误报错信息对应的多条异常样本文件;
308、将所述多条异常样本文件中的一条识别为非异常样本文件,并将所述多条异常样本文件中其余异常样本文件识别为误报异常样本文件。
可见,在本发明实施例中,通过将误报错信息和关键字相同的同类重复报错信息对应的异常样本文件识别为误报异常样本文件,对大量异常样本文件进行了快速筛选,减少了测试人员对于误报异常样本文件的处理时间,提升了异常样本文件的分析效率。
请参阅图4,图4是本发明实施例提供的另一种数据处理方法的流程示意图,如图所示,本实施例中的数据处理方法包括:
401、获取用于模糊测试的多个异常样本文件;
402、将所述多个异常样本文件依次输入待测试的程序中进行所述模糊测试,获取所述程序针对所述多个异常样本文件输出的多个报错信息;
403、对所述多个报错信息进行分类,并根据所述分类确定所述多个报错信息中的误报错信息;
404、根据所述误报错信息识别所述多个异常样本文件中的误报异常样本文件和非误报异常样本文件;
405、对所述非误报异常样本文件进行特征提取,建立异常样本文件构造模型;
406、根据所述异常样本文件构造模型生成可用异常样本文件;
407、将所述可用异常样本文件用于模糊测试。
可见,在本发明实施例中,通过获取异常样本文件对应的报错信息,并对报错信息进行分类,确定误报错信息,进而确定误报错信息对应的误报异常样本文件,对大量异常样本文件进行了快速筛选,减少了测试人员对于误报异常样本文件的处理时间,提升了异常样本文件的分析效率。另外,通过对异常样本文件的特征提取,建立异常样本文件构造模型,最后根据异常样本文件构造模型生成可用异常样本文件,用于下一轮模糊测试,能够提升异常样本文件测试程序的有效率,进而提升程序的测试效率,同时减少测试人员对异常样本文件的处理时间。
图5是本发明实施例提供的一种电子装置的结构示意图,如图5所示,该电子装置包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行以下步骤的指令:
获取用于模糊测试的多个异常样本文件;
将所述多个异常样本文件依次输入待测试的程序中进行所述模糊测试,获取所述程序针对所述多个异常样本文件输出的多个报错信息;
对所述多个报错信息进行分类,并根据所述分类确定所述多个报错信息中的误报错信息;
根据所述误报错信息识别所述多个异常样本文件中的误报异常样本文件。
可以看出,在本发明实施例中,电子设备首先获取用于模糊测试的异常样本文件,然后将异常样本文件输入需要进行测试的程序中,获取异常样本文件对应的报错信息,并对报错信息进行分类,确定报错信息中的误报错信息,最后根据误报错信息识别异常样本文件中的误报异常样本文件。在这个过程中,通过获取异常样本文件对应的报错信息,并对报错信息进行分类,确定误报错信息,进而确定误报错信息对应的误报异常样本文件,对大量异常样本文件进行了快速筛选,减少了测试人员对于误报异常样本文件的处理时间,提升了异常样本文件的分析效率。
在一个可能的示例中,在所述对所述报错信息进行分类方面,所述程序包括用于执行以下步骤的指令:
获取错误信息类别及其关键字标识;
获取所述多个报错信息中每个报错信息的类别关键字;
将所述每个报错信息中的类别关键字与错误信息类别的关键字标识进行匹配,确定所述每个报错信息所属的所述错误信息类别。
在一个可能的示例中,在对所述多个报错信息进行分类之前,所述方法还包括建立错误信息类别,所述程序还包括用于执行以下步骤的指令:
根据非程序漏洞相关报错信息建立非程序漏洞类别,所述非程序漏洞相关报错信息包括系统预设的异常处理机制和程序预设的异常处理机制;
根据程序漏洞相关报错信息建立程序漏洞类别;
根据所述非程序漏洞类别和所述程序漏洞类别建立所述错误信息类别,且所述程序漏洞类别和所述非程序分别包括对应的关键字标识,用于唯一标识所述非程序漏洞类别和所述程序漏洞类别。
在一个可能的示例中,在所述确定所述报错信息中的多个误报错信息方面,所述程序包括用于执行以下步骤的指令:
若所述报错信息属于所述非程序漏洞类别,则确定所述报错信息为误报错信息;
若所述报错信息属于所述程序漏洞类别,则确定所述报错信息为非误报错信息;
若所述报错信息不属于所述非程序漏洞类别,且不属于所述程序漏洞类别,则标记所述报错信息,并确定所述报错信息为非误报错信息。
在一个可能的示例中,在所述根据所述误报错信息识别所述多个异常样本文件中的误报异常样本文件方面,所述程序包括用于执行以下步骤的指令:
获取多个异常样本文件中的每个异常样本文件及其对应的报错信息;
若确定所述报错信息为误报错信息,则识别所述误报错信息对应的异常样本文件为误报异常样本文件。
在一个可能的示例中,在所述根据所述误报错信息识别所述多个异常样本文件中的误报异常样本文件方面,所述程序包括用于执行以下步骤的指令:
若确定所述报错信息为非误报错信息,则检测是否存在与所述报错信息重复的多条非误报错信息;
若是,则获取所述多条非误报错信息对应的多条异常样本文件;
将所述多条异常样本文件中的一条识别为非异常样本文件,并将所述多条异常样本文件中其余异常样本文件识别为误报异常样本文件。
在一个可能的示例中,所述程序包还括用于执行以下步骤的指令:
对所述非误报异常样本文件进行特征提取,建立异常样本文件构造模型;
根据所述异常样本文件构造模型生成可用异常样本文件;
将所述可用异常样本文件用于模糊测试。
图6是本发明实施例中所涉及的数据处理装置600的功能单元组成框图。该数据处理装置600应用于电子装置,所述数据处理装置包括:
获取单元601,用于获取用于模糊测试的多个异常样本文件;
测试单元602,用于将所述多个异常样本文件依次输入待测试的程序中进行所述模糊测试,获取所述程序针对所述多个所述异常样本文件输出的多个报错信息;
分类单元603,用于对所述多个报错信息进行分类,并根据所述分类确定所述多个报错信息中的误报错信息;
识别单元604,用于根据所述误报错信息识别所述多个异常样本文件中的误报异常样本文件。
其中,上述获取单元601、测试单元602、分类单元603和识别单元604的具体工作过程参见上述步骤S101-S104的相关描述。在此不再赘述。
可以看出,在本发明实施例中,电子设备首先获取用于模糊测试的异常样本文件,然后将异常样本文件输入需要进行测试的程序中,获取异常样本文件对应的报错信息,并对报错信息进行分类,确定报错信息中的误报错信息,最后根据误报错信息识别异常样本文件中的误报异常样本文件。在这个过程中,通过获取异常样本文件对应的报错信息,并对报错信息进行分类,确定误报错信息,进而确定误报错信息对应的误报异常样本文件,对大量异常样本文件进行了快速筛选,减少了测试人员对于误报异常样本文件的处理时间,提升了异常样本文件的分析效率。
在可选情况下,在对所述报错信息进行分类方面,所述分类单元603具体用于:
获取错误信息类别及其关键字标识;
获取所述多个报错信息中每个报错信息的类别关键字;
将所述每个报错信息中的类别关键字与所述错误信息类别的关键字标识进行匹配,确定所述每个报错信息所属的所述错误信息类别。
在可选情况下,在对所述多个报错信息进行分类之前,所述方法还包括建立错误信息类别,所述分类单元603还具体用于:
根据非程序漏洞相关报错信息建立非程序漏洞类别,所述非程序漏洞相关报错信息包括系统预设的异常处理机制和程序预设的异常处理机制;
根据程序漏洞相关报错信息建立程序漏洞类别;
根据所述非程序漏洞类别和所述程序漏洞类别建立所述错误信息类别,且所述程序漏洞类别和所述非程序分别包括对应的关键字标识,用于唯一标识所述非程序漏洞类别和所述程序漏洞类别。
在可选情况下,在根据所述分类确定所述多个报错信息中的误报错信息方面,所述分类单元603具体用于:
若所述报错信息属于所述非程序漏洞类别,则确定所述报错信息为误报错信息;
若所述报错信息属于所述程序漏洞类别,则确定所述报错信息为非误报错信息;
若所述报错信息不属于所述非程序漏洞类别,且不属于所述程序漏洞类别,则标记所述报错信息,并确定所述报错信息为非误报错信息。
在可选情况下,在根据所述误报错信息识别所述多个异常样本文件中的误报异常样本文件方面,所述识别单元604具体用于:
获取多个异常样本文件中的每个异常样本文件及其对应的报错信息;
若确定所述报错信息为误报错信息,则识别所述误报错信息对应的异常样本文件为误报异常样本文件。
在可选情况下,在根据所述误报错信息识别所述多个异常样本文件中的误报异常样本文件方面,所述识别单元604还具体用于:
若确定所述报错信息为非误报错信息,则检测是否存在与所述非误报错信息重复的多条非误报错信息;
若是,则获取所述多条非误报错信息对应的多条异常样本文件;
将所述多条异常样本文件中的一条识别为非异常样本文件,并将所述多条异常样本文件中其余异常样本文件识别为误报异常样本文件。
在可选情况下,所述数据处理装置600还包括生成单元605,具体用于:
对所述非误报异常样本文件进行特征提取,建立异常样本文件构造模型;
根据所述异常样本文件构造模型生成可用异常样本文件;
将所述可用异常样本文件用于模糊测试。
本发明实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤,上述计算机包括移动终端。
本发明实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括移动终端。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元若以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、ROM、RAM、磁盘或光盘等。
以上对本发明实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种数据处理方法,其特征在于,所述方法包括:
获取用于模糊测试的多个异常样本文件;
将所述多个异常样本文件依次输入待测试的程序中进行所述模糊测试,获取所述程序针对所述多个异常样本文件输出的多个报错信息;
对所述多个报错信息进行分类,并根据所述分类确定所述多个报错信息中的误报错信息;
根据所述误报错信息识别所述多个异常样本文件中的误报异常样本文件。
2.根据权利要求1所述的方法,其特征在于,所述对所述多个报错信息进行分类,包括:
获取错误信息类别及其关键字标识;
获取所述多个报错信息中每个报错信息的类别关键字;
将所述每个报错信息中的类别关键字与所述错误信息类别的关键字标识进行匹配,确定所述每个报错信息所属的所述错误信息类别。
3.根据权利要求2所述的方法,其特征在于,在对所述多个报错信息进行分类之前,所述方法还包括建立错误信息类别,具体包括:
根据非程序漏洞相关报错信息建立非程序漏洞类别,所述非程序漏洞相关报错信息包括系统预设的异常处理机制和程序预设的异常处理机制;
根据程序漏洞相关报错信息建立程序漏洞类别;
根据所述非程序漏洞类别和所述程序漏洞类别建立所述错误信息类别,且所述程序漏洞类别和所述非程序分别包括对应的关键字标识,用于唯一标识所述非程序漏洞类别和所述程序漏洞类别。
4.根据权利要求3所述的方法,其特征在于,所述根据所述分类确定所述多个报错信息中的误报错信息包括:
若所述报错信息属于所述非程序漏洞类别,则确定所述报错信息为误报错信息;
若所述报错信息属于所述程序漏洞类别,则确定所述报错信息为非误报错信息;
若所述报错信息不属于所述非程序漏洞类别,且不属于所述程序漏洞类别,则标记所述报错信息,并确定所述报错信息为非误报错信息。
5.根据权利要求4所述的方法,其特征在于,所述根据所述误报错信息识别所述多个异常样本文件中的误报异常样本文件包括:
获取多个异常样本文件中的每个异常样本文件及其对应的报错信息;
若确定所述报错信息为误报错信息,则识别所述误报错信息对应的异常样本文件为误报异常样本文件。
6.根据权利要求4或5所述的方法,其特征在于,所述根据所述误报错信息识别所述多个异常样本文件中的误报异常样本文件包括:
若确定所述报错信息为非误报错信息,则检测是否存在与所述报错信息重复的多条非误报错信息;
若是,则获取所述多条非误报错信息对应的多条异常样本文件;
将所述多条异常样本文件中的一条识别为非异常样本文件,并将所述多条异常样本文件中其余异常样本文件识别为误报异常样本文件。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:
对所述非误报异常样本文件进行特征提取,建立异常样本文件构造模型;
根据所述异常样本文件构造模型生成可用异常样本文件;
将所述可用异常样本文件用于模糊测试。
8.一种数据处理装置,其特征在于,所述数据处理装置包括:
获取单元,用于获取用于模糊测试的多个异常样本文件;
测试单元,用于将所述多个异常样本文件依次输入待测试的程序中进行所述模糊测试,获取所述程序针对所述多个异常样本文件输出的多个报错信息;
分类单元,用于对所述多个报错信息进行分类,并根据所述分类确定所述多个报错信息中的误报错信息;
识别单元,用于根据所述误报错信息识别所述多个异常样本文件中的误报异常样本文件。
9.一种电子装置,包括处理器、存储器、通信接口,以及一个或多个程序,所述一个或多个程序被存储在所述存储器中,并且被配置由所述处理器执行,所述程序包括用于执行权利要求1-7任意方法中的步骤的指令。
10.一种计算机可读存储介质,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行权利要求1-7中任一方法所述的步骤的指令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811037800.5A CN109145609B (zh) | 2018-09-06 | 2018-09-06 | 一种数据处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811037800.5A CN109145609B (zh) | 2018-09-06 | 2018-09-06 | 一种数据处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109145609A true CN109145609A (zh) | 2019-01-04 |
CN109145609B CN109145609B (zh) | 2023-06-23 |
Family
ID=64827402
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811037800.5A Active CN109145609B (zh) | 2018-09-06 | 2018-09-06 | 一种数据处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109145609B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113051571A (zh) * | 2019-12-27 | 2021-06-29 | 中国移动通信集团湖南有限公司 | 一种误报漏洞的检测方法、装置及计算机设备 |
WO2023039973A1 (zh) * | 2021-09-17 | 2023-03-23 | 上海观安信息技术股份有限公司 | 异常误报的处理方法及装置、存储介质、终端 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050204241A1 (en) * | 2004-02-03 | 2005-09-15 | Matsushita Electric Industrial Co., Ltd. | Method and device for analyzing software error |
US20100100871A1 (en) * | 2008-10-22 | 2010-04-22 | International Business Machines Corporation | Method and system for evaluating software quality |
US8087088B1 (en) * | 2006-09-28 | 2011-12-27 | Whitehat Security, Inc. | Using fuzzy classification models to perform matching operations in a web application security scanner |
CN103853650A (zh) * | 2012-11-28 | 2014-06-11 | 西门子公司 | 一种模糊测试的测试用例生成方法及装置 |
CN106909502A (zh) * | 2017-01-13 | 2017-06-30 | 河南工业大学 | 偶然正确性测试用例识别方法和软件错误定位方法 |
CN107665309A (zh) * | 2016-07-27 | 2018-02-06 | 展讯通信(天津)有限公司 | 基于模糊测试的安全漏洞检测方法、装置及移动终端 |
US20180114026A1 (en) * | 2016-10-25 | 2018-04-26 | Nanjing University | Method and system automatic buffer overflow warning inspection and bug repair |
-
2018
- 2018-09-06 CN CN201811037800.5A patent/CN109145609B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050204241A1 (en) * | 2004-02-03 | 2005-09-15 | Matsushita Electric Industrial Co., Ltd. | Method and device for analyzing software error |
US8087088B1 (en) * | 2006-09-28 | 2011-12-27 | Whitehat Security, Inc. | Using fuzzy classification models to perform matching operations in a web application security scanner |
US20100100871A1 (en) * | 2008-10-22 | 2010-04-22 | International Business Machines Corporation | Method and system for evaluating software quality |
CN103853650A (zh) * | 2012-11-28 | 2014-06-11 | 西门子公司 | 一种模糊测试的测试用例生成方法及装置 |
CN107665309A (zh) * | 2016-07-27 | 2018-02-06 | 展讯通信(天津)有限公司 | 基于模糊测试的安全漏洞检测方法、装置及移动终端 |
US20180114026A1 (en) * | 2016-10-25 | 2018-04-26 | Nanjing University | Method and system automatic buffer overflow warning inspection and bug repair |
CN106909502A (zh) * | 2017-01-13 | 2017-06-30 | 河南工业大学 | 偶然正确性测试用例识别方法和软件错误定位方法 |
Non-Patent Citations (8)
Title |
---|
于璐;吴礼发;庄洪林;沈毅;: "Fuzzing测试中异常分析技术的研究", no. 07, pages 82 - 86 * |
印杰;李千目;: "软件代码漏洞的电子取证技术综述", no. 12, pages 57 - 67 * |
宋广军;宋婉约;: "软件漏洞检测系统的设计研究", no. 29, pages 10 * |
张婧;周安民;刘亮;贾鹏;刘露平;: "Crash可利用性分析方法研究综述", no. 05, pages 8 * |
张高举;郭绍忠;许瑾晨;王磊;张辛;: "并发错误检测技术研究综述", no. 05, pages 110 - 117 * |
杨莎滢;: "论软件安全漏洞挖掘技术", no. 01, pages 34 - 36 * |
马金鑫;张涛;李舟军;张江霄;: "Fuzzing过程中的若干优化方法", no. 05, pages 28 - 33 * |
高峻;徐志大;李健;: "漏洞自动挖掘技术研究进展", no. 01, pages 105 - 109 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113051571A (zh) * | 2019-12-27 | 2021-06-29 | 中国移动通信集团湖南有限公司 | 一种误报漏洞的检测方法、装置及计算机设备 |
CN113051571B (zh) * | 2019-12-27 | 2022-11-29 | 中国移动通信集团湖南有限公司 | 一种误报漏洞的检测方法、装置及计算机设备 |
WO2023039973A1 (zh) * | 2021-09-17 | 2023-03-23 | 上海观安信息技术股份有限公司 | 异常误报的处理方法及装置、存储介质、终端 |
Also Published As
Publication number | Publication date |
---|---|
CN109145609B (zh) | 2023-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9237161B2 (en) | Malware detection and identification | |
CN107819627B (zh) | 系统故障处理方法及服务器 | |
Podgurski et al. | Automated support for classifying software failure reports | |
CN108090567B (zh) | 电力通信系统故障诊断方法及装置 | |
US20180357214A1 (en) | Log analysis system, log analysis method, and storage medium | |
CN110764980A (zh) | 日志处理方法和装置 | |
CN104699735A (zh) | 企业级数据中心的数据处理方法及装置 | |
Dasgupta et al. | Towards auto-remediation in services delivery: Context-based classification of noisy and unstructured tickets | |
CN110737689A (zh) | 数据标准符合性检测方法、装置、系统及存储介质 | |
CN109408361A (zh) | Monkey测试复原方法、装置、电子设备及计算机可读存储介质 | |
CN109145609A (zh) | 一种数据处理方法和装置 | |
JPWO2018069950A1 (ja) | ログ分析方法、システムおよびプログラム | |
CN108304276A (zh) | 一种日志处理方法、装置及电子设备 | |
CN107908525B (zh) | 告警处理方法、设备及可读存储介质 | |
CN108388513B (zh) | 一种自动化测试方法及装置 | |
Reidemeister et al. | Diagnosis of recurrent faults using log files | |
CN113609008A (zh) | 测试结果分析方法、装置和电子设备 | |
CN116340172A (zh) | 基于测试场景的数据收集方法、装置及测试用例检测方法 | |
CN111459796A (zh) | 自动化测试方法、装置、计算机设备和存储介质 | |
Murtaza et al. | On the comparison of user space and kernel space traces in identification of software anomalies | |
CN113778875B (zh) | 一种系统测试缺陷分类方法、装置、设备及存储介质 | |
Amankwah et al. | Fast bug detection algorithm for identifying potential vulnerabilities in juliet test cases | |
CN112612702B (zh) | 一种基于web的自动测试方法及装置 | |
JP6547341B2 (ja) | 情報処理装置、方法及びプログラム | |
CN110134610A (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 |