CN114416520A - 一种面向Windows程序图形界面绕过的模糊测试方法及装置 - Google Patents
一种面向Windows程序图形界面绕过的模糊测试方法及装置 Download PDFInfo
- Publication number
- CN114416520A CN114416520A CN202111491030.3A CN202111491030A CN114416520A CN 114416520 A CN114416520 A CN 114416520A CN 202111491030 A CN202111491030 A CN 202111491030A CN 114416520 A CN114416520 A CN 114416520A
- Authority
- CN
- China
- Prior art keywords
- function
- fuzzy test
- graphical interface
- sequence
- data source
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- 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/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开一种面向Windows程序图形界面绕过的模糊测试方法及装置,该方法包括:对于待分析的用户图形界面应用程序,通过动态二进制插桩工具跟踪其执行时所经过的执行路径,提取并记录执行过程中线程的ID等,得到原始函数轨迹投影序列;根据原始函数轨迹投影序列,利用动态轨迹函数调用关系提取算法进行指针类型与数据依赖关系的提取;结合静态分析工具对处理后的原始函数轨迹投影序列进行分析,并对序列中的函数原型进行推断、重构;通过重构出的函数信息与序列顺序对模糊测试驱动的框架进行内容的填充;合成模糊测试驱动并进行测试,最终产生符合要求的模糊测试驱动。本发明有效解决了用户图形界面应用程序阻碍模糊测试进程的问题。
Description
技术领域
本发明属于网络安全技术领域,尤其涉及一种面向Windows程序图形界面绕过的模糊测试方法及装置。
背景技术
模糊测试(Fuzzing)是一种自动化软件测试技术,通过将恶意构造的数据作为输入提供给测试程序并监测程序是否出现异常的一种测试方法。由于其简单、高效的特点,已经被各大软件厂商应用到软件开发测试中来保证他们的关键产品的质量并且发现了大量的安全漏洞。
然而,多数自动化模糊测试的对象都集中在Linux系统上,而很大程度上忽略了Windows的模糊测试;截至2021年Windows系统仍占据约为73%市场份额,并且由于其为终端用户直接接触的系统,因此它仍是攻击者的重要目标,但Windows应用程序严重依赖图形用户界面(Graphical User Interface)与最终用户进行交互,这对模糊测试构成了主要障碍。
为了进一步减少这种阻碍,研究人员通过借助编写行为回放脚本来模拟人为操作、基于补丁来消除需用户交互的GUI元素代码和编写促进集成测试而构建的模糊测试驱动三种方式来与模糊测试过程相结合,但行为回放受限于脚本执行的低速,会极大降低模糊测试的效率;基于补丁由于对安全人员的逆向分析能力要求较高,实现起来十分困难;最终编写模糊测试驱动成为主流的方法,但手工编写驱动依旧十分繁琐。为了实现模糊测试驱动的自动化构建,研究人员提出了一系列新的技术与方法,但现有的自动化构建方法多需要访问源代码无法轻松处理闭源程序,单纯依赖人工进行模糊测试驱动构建费时费力,因而急需一个自动化的框架来辅助完成针对Windows平台用户图形界面程序模糊测试驱动构建的过程。
目前的模糊测试驱动自动化生成技术中,FUDGE[D.Babic,S.Bucur,Y.Chen,F.Ivan,T.King,M.Kusano,C.Lemieux,L.Szekeres,and W.Wang,“FUDGE:Fuzz DriverGeneration At Scale,”in Proceedings of the 2019 27th ACM Joint Meeting onEuropean Software Engineering Conference and Symposium on the Foundations ofSoftware Engineering.ACM,2019,pp.975–985.]旨利用ClangMR对目标源码进行代码切片,提取API的调用序列及上下文创建模糊测试驱动并利用动态分析进行测试;FuzzGen[K.K.Ispoglou,D.Austin,V.Mohan,and M.Payer,“FuzzGen:Automatic FuzzerGeneration,”in Proceedings of the 29th USENIX Security Symposium(Security),Boston,MA,USA,Aug.2020.]则利用目标源码进行函数调用关系的推断,并以此构建抽象的API函数调用依赖图(A2DG),最终基于A2DG合成模糊测试驱动程序;IntelliGen[Zhang M,Liu J,Ma F,et al.IntelliGen:Automatic Driver Synthesis for Fuzz Testing[C]//2021 IEEE/ACM 43rd International Conference on Software Engineering:SoftwareEngineering in Practice(ICSE-SEIP).IEEE,2021:318-327.]提出通过分层参数替换和类型推断为选定的入口函数生成模糊驱动程序以进行模糊测试;Autoharness则利用codeql针对源码生成控制流图,并据此对驱动程序的生成进行有根据的猜测,以上方法均对目标程序有开源的要求以获取函数关系。对于Windows平台无源码的应用程序,上述方法则不适用。
发明内容
本发明针对用户图形界面阻碍模糊测试进程的问题,提出一种面向Windows程序图形界面绕过的模糊测试方法及装置,利用动态二进制插桩(分析)工具代替传统的开源头文件进行关系提取,并借助函数关系提取算法对依赖关系筛选,在静态分析方法的帮助下进行恢复重构,本发明更适用于Windows平台无源码的应用程序,动静结合两种方法即可解决用户图形界面阻碍模糊测试进程这一问题。
为了实现上述目的,本发明采用以下技术方案:
本发明一方面提出一种面向Windows程序图形界面绕过的模糊测试方法,包括:
步骤1:对于待分析的用户图形界面应用程序,通过动态二进制插桩工具跟踪其执行时所经过的执行路径,提取并记录执行过程中线程的ID、函数调用者、调用地址、符号与参数,从而得到原始函数轨迹投影序列;
步骤2:根据原始函数轨迹投影序列,利用动态轨迹函数调用关系提取算法进行指针类型与数据依赖关系的提取;
步骤3:结合静态分析工具对步骤2处理后的原始函数轨迹投影序列进行分析,并对序列中的函数原型进行推断、重构;
步骤4:通过重构出的函数信息与序列顺序对模糊测试驱动的框架进行内容的填充;
步骤5:合成模糊测试驱动并测试是否正常运行,最终产生符合实际要求的模糊测试驱动以进行漏洞挖掘。
进一步地,所述动态二进制插桩工具为DynamoRIO。
进一步地,所述步骤2包括:
针对动态二进制插桩工具提取出的原始函数轨迹投影序列进行初步的类型判断,并将对应的函数与指针数据信息对应存储到暂存数组D中;随后针对D中任意两个代表函数Fα与Fγ,若其生产数据源与消费数据源类型相匹配,并且满足(Fα.in∩Fγ.out)∪(Fγ.in∩Fα.out)≠0,则将其放在最终解析完成后的数据依赖关系集合S中进行存储;其中Fα.in表示函数Fα的输入、即消费数据源,Fγ.out表示函数Fα的输出、即生产数据源,Fγ.in表示函数Fγ的输入、即消费数据源,Fα.out表示函数Fγ的输出、即生产数据源。
本发明另一方面提出一种面向Windows程序图形界面绕过的模糊测试装置,包括:
轨迹提取模块,用于对于待分析的用户图形界面应用程序,通过动态二进制插桩工具跟踪其执行时所经过的执行路径,提取并记录执行过程中线程的ID、函数调用者、调用地址、符号与参数,从而得到原始函数轨迹投影序列;
动态函数关系提取模块,用于根据原始函数轨迹投影序列,利用动态轨迹函数调用关系提取算法进行指针类型与数据依赖关系的提取;
静态分析模块,用于结合静态分析工具对动态轨迹函数调用提取模块处理后的原始函数轨迹投影序列进行分析,并对序列中的函数原型进行推断、重构;
模糊测试驱动框架填充模块,用于通过重构出的函数信息与序列顺序对模糊测试驱动的框架进行内容的填充;
模糊测试驱动合成模块,用于合成模糊测试驱动并测试是否正常运行,最终产生符合实际要求的模糊测试驱动以进行漏洞挖掘。
进一步地,所述动态二进制插桩工具为DynamoRIO。
进一步地,所述动态函数关系提取模块具体用于:
针对动态二进制插桩工具提取出的原始函数轨迹投影序列进行初步的类型判断,并将对应的函数与指针数据信息对应存储到暂存数组D中;随后针对D中任意两个代表函数Fα与Fγ,若其生产数据源与消费数据源类型相匹配,并且满足(Fα.in∩Fγ.out)∪(Fγ.in∩Fα.out)≠0,则将其放在最终解析完成后的数据依赖关系集合S中进行存储;其中Fα.in表示函数Fα的输入、即消费数据源,Fγ.out表示函数Fα的输出、即生产数据源,Fγ.in表示函数Fγ的输入、即消费数据源,Fα.out表示函数Fγ的输出、即生产数据源。
与现有技术相比,本发明具有的有益效果:
本发明从动态二进制插桩的工作机制入手,以控制流分析和数据流分析为基础,提出了一种面向Windows程序图形界面绕过的模糊测试方法及装置,有效解决用户图形界面应用程序阻碍模糊测试进程的问题。本发明相较人工书写驱动其目标覆盖率与崩溃发现数量均有明显提升,并且发现了新的未公开漏洞,具有良好的适用性。
附图说明
图1为本发明实施例一种面向Windows程序图形界面绕过的模糊测试方法的流程图之一;
图2为本发明实施例一种面向Windows程序图形界面绕过的模糊测试方法的流程图之二;
图3为本发明实施例一种面向Windows程序图形界面绕过的模糊测试方法与人工书写驱动覆盖率对比结果;
图4为本发明实施例一种面向Windows程序图形界面绕过的模糊测试方法与人工书写驱动崩溃数量对比结果。
具体实施方式
下面结合附图和具体的实施例对本发明做进一步的解释说明:
如图1、图2所示,一种面向Windows程序图形界面绕过的模糊测试方法,该方法主要由动态路径追踪框架、函数调用关系识别提取与调用关系恢复重建共三阶段组成。其中函数调用关系的识别提取为核心,具体来说将程序及用户给定的程序输入放在插桩监控环境中执行,通过动态路径追踪框架完成程序执行过程路径信息的提取,主要包括功能模块与主程序之间的关键调用函数、参数以及返回值等信息,利用函数调用关系提取算法进一步判定指针类型与函数间依赖关系,收集依赖信息并以此来进行调用关系的恢复重建,最终生成可以不依赖用户图形界面运行的驱动程序以进行模糊测试;具体包括:
步骤1:对于待分析的用户图形界面应用程序,通过动态二进制插桩工具跟踪其执行时所经过的执行路径,提取并记录执行过程中线程的ID、函数调用者、调用地址、符号与参数,从而得到原始函数轨迹投影序列;
步骤2:根据原始函数轨迹投影序列,利用动态轨迹函数调用关系提取算法进行指针类型与数据依赖关系的提取;
步骤3:结合二进制静态分析工具IDA对步骤2处理后的原始函数轨迹投影序列进行分析,并对序列中的函数原型进行推断、重构;
步骤4:通过重构出的函数信息与序列顺序对模糊测试驱动的框架进行内容的填充;
步骤5:合成模糊测试驱动并测试是否正常运行,最终产生符合实际要求的模糊测试驱动以进行漏洞挖掘。
其中,步骤1属于动态路径追踪框架阶段,步骤2属于函数调用关系识别提取阶段,步骤3、步骤4、步骤5属于调用关系恢复重建阶段。
进一步地,所述动态二进制插桩工具为DynamoRIO。
具体地,为描述动态轨迹函数调用关系提取算法,需要对数据源、依赖关系与函数的嵌套关系等进行定义:
定义1.数据源。针对任一目标函数F,将其输入设置为F.in,其输出设置为F.out,这两者分别表示为目标函数F的消费数据源与生产数据源。
定义2.数据依赖关系。若目标函数的某输入参数为另一函数的输出返回值,或者另一函数的某个输入参数为目标函数的输出返回值,则称该两者之间存在数据依赖关系,若设置两函数分别为α与γ,且满足条件判定关系(Fα.in∩Fγ.out)∪(Fγ.in∩Fα.out)≠0,则可记为(Fα,Fγ)表示两函数间存在依赖关系。
定义3.状态轨迹投影。设程序P关于输入I的长度为k的状态轨迹是一个有序对T=<(ρ1,σ1),(ρ2,σ2),…,(ρk,σk)>的有限序列,则其中ρi∈N(1≤i≤k),<ρ1,ρ2,…,ρk>为轨迹的路径,而σi(1≤i≤k)则称为从程序变量到ρi执行前值的函数映射。
此外,本发明通过实验发现,动态二进制插桩工具在对程序轨迹提取时有以下特征:
(1)CPU寄存器与堆栈中可能存在潜在参数信息。
对于应用程序中不同模块函数之间控制流的每个调用和跳转,动态二进制插桩工具会记录当前线程ID、调用者、调用地址、符号与参数等;但如果没有函数的原型信息,则会选择保守地将所有CPU寄存器和上层堆栈内的信息视为潜在参数,需要进一步识别与筛选。
(2)对于可访问内存区域内数值,默认将其作为指针进行转储操作。
应用程序在动态执行过程中,若任何值落入可访问内存区域内,动态二进制插桩工具会保守地将其均视为指针,并转储其引用的内存以进行进一步分析;针对双指针等多级指针类型的关系,动态二进制插桩工具将以递归方式重复此过程进行信息获取。
根据上述定义及程序轨迹提取的特征,在动态二进制程序插桩工具DynamoRIO上实现动态轨迹函数调用关系提取算法如算法1所示。
所示算法为动态轨迹函数调用关系的提取算法,在初始化的阶段针对最终解析完成后的依赖关系集合S与原始关系序列函数经过提取后的暂存数列D都将初始化为空;随后该算法会针对动态二进制插桩工具提取出的原始函数轨迹投影序列进行初步的类型判断,并将对应的函数与指针数据信息对应存储到暂存数组D中。随后针对D中任意两代表函数Fα与Fγ,若其数据源的生产数据与消费数据类型相匹配,并且满足定义中对于数据依赖关系的判定条件,则将其放在最终解析完成后的数据依赖关系集合S中进行存储,为进一步的模糊测试驱动重构提供相关的依赖数据信息。
调用关系恢复重建阶段中,在跟踪中搜索与模糊目标有关的函数调用。本专利将调用函数序列放入模糊测试驱动框架中,至此该框架为一系列简单的API调用;随后将分析跟踪以推断出调用序列中每个函数的原型;跟踪包含有关主要二进制文件和库之间的API的详细信息,例如参数和返回值,恢复重构后对模糊测试驱动进行简单测试。
使用本发明方法生成的模糊测试驱动(DriverGen)与人工书写(Manually)的相比,多数实验对象可比手动编写的驱动程序覆盖更多的块,如图3、图4所示,其中图3内IranView、Acrobat、Format Factory与Xvideo依次为Windows平台下常见的图像解析、文档渲染、格式转换与视频播放软件,图3中(a)、(b)、(c)、(d)分别表示IranView、Acrobat、Format Factory与Xvideo在模糊测试过程中覆盖的基本块数量随时间的变化情况,图4内a、b分别指IrfanView与Format Factory特定时间内产生的崩溃数量,这是由于每个应用程序所对应模糊测试驱动的覆盖范围都有一个理论的上限:人工书写的驱动受限于获取信息不全、所调用函数关系级别较低,不能覆盖很多基本块;而利用本发明方法生成的驱动在提取轨迹信息时考虑到了函数之间依赖嵌套关系,优先考虑级别高、包含更多行为特征的函数调用,可以在运行一段时间后覆盖更多的基本块;且生成的模糊测试驱动内部所含的函数调用关系数量要远大于人工书写,利用本发明方法发现了更明确的依赖关系、扩大了程序路径的搜索空间,与人工书写的测试驱动相比包含更多的函数调用,意味着在模糊测试的过程中能够到达更多的基本块、循环与调用,所发现漏洞的概率相应也有所增加。
在上述实施例的基础上,本发明还提出一种面向Windows程序图形界面绕过的模糊测试装置,包括:
轨迹提取模块,用于对于待分析的用户图形界面应用程序,通过动态二进制插桩工具跟踪其执行时所经过的执行路径,提取并记录执行过程中线程的ID、函数调用者、调用地址、符号与参数,从而得到原始函数轨迹投影序列;
动态函数关系提取模块,用于根据原始函数轨迹投影序列,利用动态轨迹函数调用关系提取算法进行指针类型与数据依赖关系的提取;
静态分析模块,用于结合静态分析工具对动态轨迹函数调用提取模块处理后的原始函数轨迹投影序列进行分析,并对序列中的函数原型进行推断、重构;
模糊测试驱动框架填充模块,用于通过重构出的函数信息与序列顺序对模糊测试驱动的框架进行内容的填充;
模糊测试驱动合成模块,用于合成模糊测试驱动并测试是否正常运行,最终产生符合实际要求的模糊测试驱动以进行漏洞挖掘。
进一步地,所述动态二进制插桩工具为DynamoRIO。
进一步地,所述动态函数关系提取模块具体用于:
针对动态二进制插桩工具提取出的原始函数轨迹投影序列进行初步的类型判断,并将对应的函数与指针数据信息对应存储到暂存数组D中;随后针对D中任意两个代表函数Fα与Fγ,若其生产数据源与消费数据源类型相匹配,并且满足(Fα.in∩Fγ.out)∪(Fγ.in∩Fα.out)≠0,则将其放在最终解析完成后的数据依赖关系集合S中进行存储;其中Fα.in表示函数Fα的输入、即消费数据源,Fγ.out表示函数Fα的输出、即生产数据源,Fγ.in表示函数Fγ的输入、即消费数据源,Fα.out表示函数Fγ的输出、即生产数据源。
综上所述,本发明区别于传统的模糊测试驱动自动生成技术,提出使用动态轨迹函数调用关系提取的概念,利用二进制插桩工具提取出的控制流与数据流,收集依赖信息并以此来进行调用关系的恢复重建,最终生成可以不依赖用户图形界面运行的驱动程序以进行模糊测试,解决了用户图形界面阻碍模糊测试过程这一问题。本发明相较人工书写驱动其目标覆盖率与崩溃发现数量均有明显提升,并且发现了新的未公开漏洞,具有良好的适用性。
以上所示仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (6)
1.一种面向Windows程序图形界面绕过的模糊测试方法,其特征在于,包括:
步骤1:对于待分析的用户图形界面应用程序,通过动态二进制插桩工具跟踪其执行时所经过的执行路径,提取并记录执行过程中线程的ID、函数调用者、调用地址、符号与参数,从而得到原始函数轨迹投影序列;
步骤2:根据原始函数轨迹投影序列,利用动态轨迹函数调用关系提取算法进行指针类型与数据依赖关系的提取;
步骤3:结合静态分析工具对步骤2处理后的原始函数轨迹投影序列进行分析,并对序列中的函数原型进行推断、重构;
步骤4:通过重构出的函数信息与序列顺序对模糊测试驱动的框架进行内容的填充;
步骤5:合成模糊测试驱动并测试是否正常运行,最终产生符合实际要求的模糊测试驱动以进行漏洞挖掘。
2.根据权利要求1所述的一种面向Windows程序图形界面绕过的模糊测试方法,其特征在于,所述动态二进制插桩工具为DynamoRIO。
3.根据权利要求1或2所述的一种面向Windows程序图形界面绕过的模糊测试方法,其特征在于,所述步骤2包括:
针对动态二进制插桩工具提取出的原始函数轨迹投影序列进行初步的类型判断,并将对应的函数与指针数据信息对应存储到暂存数组D中;随后针对D中任意两个代表函数Fα与Fγ,若其生产数据源与消费数据源类型相匹配,并且满足(Fα.in∩Fγ.out)∪(Fγ.in∩Fα.out)≠0,则将其放在最终解析完成后的数据依赖关系集合S中进行存储;其中Fα.in表示函数Fα的输入、即消费数据源,Fγ.out表示函数Fα的输出、即生产数据源,Fγ.in表示函数Fγ的输入、即消费数据源,Fα.out表示函数Fγ的输出、即生产数据源。
4.一种面向Windows程序图形界面绕过的模糊测试装置,其特征在于,包括:
轨迹提取模块,用于对于待分析的用户图形界面应用程序,通过动态二进制插桩工具跟踪其执行时所经过的执行路径,提取并记录执行过程中线程的ID、函数调用者、调用地址、符号与参数,从而得到原始函数轨迹投影序列;
动态函数关系提取模块,用于根据原始函数轨迹投影序列,利用动态轨迹函数调用关系提取算法进行指针类型与数据依赖关系的提取;
静态分析模块,用于结合静态分析工具对动态轨迹函数调用提取模块处理后的原始函数轨迹投影序列进行分析,并对序列中的函数原型进行推断、重构;
模糊测试驱动框架填充模块,用于通过重构出的函数信息与序列顺序对模糊测试驱动的框架进行内容的填充;
模糊测试驱动合成模块,用于合成模糊测试驱动并测试是否正常运行,最终产生符合实际要求的模糊测试驱动以进行漏洞挖掘。
5.根据权利要求4所述的一种面向Windows程序图形界面绕过的模糊测试装置,其特征在于,所述动态二进制插桩工具为DynamoRIO。
6.根据权利要求4或5所述的一种面向Windows程序图形界面绕过的模糊测试装置,其特征在于,所述动态函数关系提取模块具体用于:
针对动态二进制插桩工具提取出的原始函数轨迹投影序列进行初步的类型判断,并将对应的函数与指针数据信息对应存储到暂存数组D中;随后针对D中任意两个代表函数Fα与Fγ,若其生产数据源与消费数据源类型相匹配,并且满足(Fα.in∩Fγ.out)∪(Fγ.in∩Fα.out)≠0,则将其放在最终解析完成后的数据依赖关系集合S中进行存储;其中Fα.in表示函数Fα的输入、即消费数据源,Fγ.out表示函数Fα的输出、即生产数据源,Fγ.in表示函数Fγ的输入、即消费数据源,Fα.out表示函数Fγ的输出、即生产数据源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111491030.3A CN114416520A (zh) | 2021-12-08 | 2021-12-08 | 一种面向Windows程序图形界面绕过的模糊测试方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111491030.3A CN114416520A (zh) | 2021-12-08 | 2021-12-08 | 一种面向Windows程序图形界面绕过的模糊测试方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114416520A true CN114416520A (zh) | 2022-04-29 |
Family
ID=81266096
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111491030.3A Pending CN114416520A (zh) | 2021-12-08 | 2021-12-08 | 一种面向Windows程序图形界面绕过的模糊测试方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114416520A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115017059A (zh) * | 2022-08-08 | 2022-09-06 | 北京北大软件工程股份有限公司 | 图形用户界面程序的模糊测试方法及系统 |
-
2021
- 2021-12-08 CN CN202111491030.3A patent/CN114416520A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115017059A (zh) * | 2022-08-08 | 2022-09-06 | 北京北大软件工程股份有限公司 | 图形用户界面程序的模糊测试方法及系统 |
CN115017059B (zh) * | 2022-08-08 | 2022-11-11 | 北京北大软件工程股份有限公司 | 图形用户界面程序的模糊测试方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hamou-Lhadj et al. | A survey of trace exploration tools and techniques | |
CN109739755B (zh) | 一种基于程序追踪和混合执行的模糊测试系统 | |
KR101904911B1 (ko) | 하이브리드 퍼징 기반 보안 취약점 자동 탐색 방법 및 그 장치 | |
KR101981028B1 (ko) | 바이너리 기반 보안 취약점 탐색 시스템, 그 방법 및 프로그램 | |
CN106557413A (zh) | 基于代码覆盖率获取测试用例的方法和设备 | |
CN112090079B (zh) | 游戏任务运行方法、装置、计算机设备和存储介质 | |
CN106681919A (zh) | 一种用户界面自动化测试方法及系统 | |
Myers et al. | Utilizing debug information to compact loops in large program traces | |
CN113590454A (zh) | 测试方法、装置、计算机设备和存储介质 | |
CN114416520A (zh) | 一种面向Windows程序图形界面绕过的模糊测试方法及装置 | |
Ghaleb et al. | Program comprehension through reverse‐engineered sequence diagrams: A systematic review | |
WO2020038376A1 (zh) | 统一地执行特征抽取的方法及系统 | |
CN103713995A (zh) | 潜在缺陷识别 | |
AbuOdeh et al. | A novel AI-based methodology for identifying cyber attacks in honey pots | |
CN111459796A (zh) | 自动化测试方法、装置、计算机设备和存储介质 | |
CN114707151B (zh) | 一种基于api调用和网络行为的僵尸软件检测方法 | |
CN113419960B (zh) | 用于可信操作系统内核模糊测试的种子生成方法及系统 | |
Yu et al. | Universally Adaptive Cross-Platform Reinforcement Learning Testing via GUI Image Understanding | |
CN112015633B (zh) | 测试激励多平台复用方法、装置、设备及存储介质 | |
CN114546836A (zh) | 基于下推自动机引导的公共组件库自动化测试方法及装置 | |
US20160299786A1 (en) | Code examination by scheduler timeline manipulation | |
Salva et al. | Autofunk, a fast and scalable framework for building formal models from production systems | |
US20200133825A1 (en) | Systems and methods for debugging applications created with a graphical programming language | |
Rilling et al. | Predicate-based dynamic slicing of message passing programs | |
CN111190813A (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 |