-
公开(公告)号:CN108804308B
公开(公告)日:2021-10-01
申请号:CN201810391348.6
申请日:2018-04-27
Applicant: 北京信息科技大学
Abstract: 本发明实施例提供的一种新版本程序缺陷检测方法及装置,所述方法包括:获取目标应用的历史版本程序和新版本程序;根据所述历史版本程序和所述新版本程序获得对应的函数调用语句集;根据所述函数调用语句集获得所述历史版本程序和所述新版本程序分别对应的关联规则集;根据所述关联规则集获得用于所述新版本程序的检测用关联规则集;根据所述检测用关联规则集和所述新版本程序的函数调用语句集获得疑似缺陷集,能有效过滤隐式编程规则,从而减少待确认缺陷,提高缺陷自动检测效率。
-
公开(公告)号:CN115033490B
公开(公告)日:2024-08-30
申请号:CN202210746493.8
申请日:2022-06-29
Applicant: 北京信息科技大学
IPC: G06F11/36
Abstract: 本发明公开了一种控件层次关系图制导的Android应用错误复现方法,应用于软件测试技术领域,首先,使用被测应用项目文件生成APK文件,分析APK文件获取函数调用,结合函数调用和被测应用项目文件分析得到界面跳转和控件与函数间的关联关系,完成控件层次关系图的构建;其次,定位可疑控件,并使用控件层次关系图和可疑控件计算控件适应度;最后,识别被测应用当前界面中的控件信息,使用控件适应度计算出每个控件被选择的概率,根据概率选择控件进行操作,并检测应用运行状态。本方法关注于错误报告中涉及到的可疑控件,减少对非必要路径的探索,提高复现效率。
-
公开(公告)号:CN117350367A
公开(公告)日:2024-01-05
申请号:CN202311470614.1
申请日:2023-11-07
Applicant: 北京信息科技大学
IPC: G06N3/096 , G06N3/0464
Abstract: 本发明公开了一种基于解释分析的深度神经网络模型迁移测试方法,涉及模型迁移测试技术领域,包括以下步骤:S1:模型行为解释分析;S2:通用测试数据生成;S3:迭代扰动。本发明有效分析测试数据中不同元素的贡献程度,并根据贡献程度选择不同元素进行变异,使生成的测试数据能有效测试与被分析模型功能类似结构未知的其他DNN模型;首次使用解释方法对DNN模型行为进行解释,并以此制导DNN模型的测试数据生成;使用迭代优化的方式迭代分析测试数据中的重要元素并对其添加扰动以生成更有效的测试数据;将通过分析白盒源模型的内部信息来生成可迁移测试目标黑盒模型的测试数据。
-
公开(公告)号:CN116108450A
公开(公告)日:2023-05-12
申请号:CN202310174564.6
申请日:2023-02-28
Applicant: 北京信息科技大学
Abstract: 本发明公开了基于操作码指令聚类的智能合约漏洞检测方法及系统,涉及智能合约技术领域,将智能合约的EVM字节码转换为操作码指令,通过词嵌入模型将操作码指令特征向量化;对向量化后的操作码指令进行聚类;选择有漏洞的合约进行切片组建漏洞库,根据聚类结果将漏洞库的合约中属于同一簇的操作码指令统一替换;将待检测合约进行切片,利用聚类结果将待检测合约中属于同一簇的操作码指令统一替换,通过与漏洞库中合约比较相似度来检测漏洞。本发明提供的基于操作码指令聚类的智能合约漏洞检测方法及系统解决了由于编译器版本不同造成编译生成的操作码指令差异,导致难以检测不同版本编译器生成的操作码指令中同类漏洞以及漏洞检测时间开销大的问题。
-
公开(公告)号:CN112199295B
公开(公告)日:2023-05-05
申请号:CN202011180145.6
申请日:2020-10-29
Applicant: 北京信息科技大学
IPC: G06F11/36 , G06N3/0464 , G06N3/06
Abstract: 本发明公开了一种基于频谱的深度神经网络缺陷定位方法,属于软件测试技术领域,包括以下步骤:1、获取正确的测试用例和错误的测试用例,2、获取待测深度神经网络模型频谱信息,3、计算神经元的怀疑度,并按照怀疑度对神经元进行排序。本发明依据深度神经网络对测试集的运行输出和分类结果量化深度神经网络中的神经元,然后利用怀疑度公式计算其怀疑度,并对其进行排名,定位到最有可能是缺陷的位置。该方法及系统将神经元的输出和测试数据的运行结果结合,可以将深度神经网络模型中的缺陷直观的使用数值体现出来,更准确快捷的定位到深度神经网络模型缺陷的具体位置。
-
公开(公告)号:CN112685320B
公开(公告)日:2023-04-25
申请号:CN202110026716.9
申请日:2021-01-09
Applicant: 北京信息科技大学
Abstract: 本发明公开了一种基于多候选程序的软件缺陷修复方法及装置,方法具体包括:S1:在待修复程序中定位缺陷单元,将缺陷单元存放至缺陷集合中,对缺陷单元生成对应的补丁单元,同时将补丁单元存放至补丁集合;S2:将补丁集合添加到待修复程序中,生成对应的修复程序集合;S3:构造适应度函数,利用适应度函数对修复程序集合进行评估得到对应的适应度值,将适应度值进行排序,选取其中排名前k的修复程序作为候选修复程序集合;S4:对候选修复程序集合进行多数决机制投票,输出多数决投票得分最高的候选修复程序运行结果,并将候选修复程序和多数决机制封装成一个整体程序;本发明通过并行运行多个版本的程序提高容错性。
-
公开(公告)号:CN115934541A
公开(公告)日:2023-04-07
申请号:CN202211591311.0
申请日:2022-12-12
Applicant: 北京信息科技大学
IPC: G06F11/36
Abstract: 本发明公开了一种Android应用运行时权限错误动态检测方法,涉及Android应用技术领域,包括:对被测应用的APK文件进行权限误用分析,获取受权限误用影响的API并进行插桩,对APK重新签名;将插桩后可安装运行的APK文件安装到Android设备上,动态探索被测应用以生成状态转换图,并在动态探索的过程中记录目标控件,即能够调用受权限误用影响的API的控件;自动化探索被测应用,在探索过程中根据状态转换图和目标控件选择控件进行操作,在检测出Android运行时权限错误后输出测试报告。相比其他自动化测试工具,本发明考虑ARP机制,能够更高效地检测Android应用内的ARP错误,提高检测效率。
-
公开(公告)号:CN115033490A
公开(公告)日:2022-09-09
申请号:CN202210746493.8
申请日:2022-06-29
Applicant: 北京信息科技大学
IPC: G06F11/36
Abstract: 本发明公开了一种控件层次关系图制导的Android应用错误复现方法,应用于软件测试技术领域,首先,使用被测应用项目文件生成APK文件,分析APK文件获取函数调用,结合函数调用和被测应用项目文件分析得到界面跳转和控件与函数间的关联关系,完成控件层次关系图的构建;其次,定位可疑控件,并使用控件层次关系图和可疑控件计算控件适应度;最后,识别被测应用当前界面中的控件信息,使用控件适应度计算出每个控件被选择的概率,根据概率选择控件进行操作,并检测应用运行状态。本方法关注于错误报告中涉及到的可疑控件,减少对非必要路径的探索,提高复现效率。
-
公开(公告)号:CN115328804A
公开(公告)日:2022-11-11
申请号:CN202211076243.4
申请日:2022-09-05
Applicant: 北京信息科技大学
IPC: G06F11/36
Abstract: 本发明公开了一种基于组合覆盖的循环代码模糊测试方法,涉及软件测试技术领域,首先对待测试程序进行插桩,执行初始种子测试用例并计算其覆盖情况,将未触发崩溃的初始种子测试用例加入测试用例队列;然后从测试用例队列中逐个取出种子测试用例ti,计算其适应度以分配对应的资源来变异生成子代测试用例集,在待测试程序上运行子代测试用例集,根据子代测试用例对循环代码块及其中判定分支语句的覆盖情况,决定是否将其插入测试用例队列中;最后,判断是否满足模糊测试停止条件,若是,则结束测试,若否,则从测试用例队列中选择下一个种子测试用例进行测试。本发明可以对循环代码块进行有针对性的模糊测试,提高测试效率和准确率。
-
公开(公告)号:CN115328803A
公开(公告)日:2022-11-11
申请号:CN202211068715.1
申请日:2022-09-02
Applicant: 北京信息科技大学
Abstract: 本发明公开了一种映射关系制导的循环代码模糊测试方法,应用于软件测试领域,包括:将测试用例不断变异,输入到测试用例队列,发送至经插桩循环代码结构得到的被测程序运行,当满足模糊测试终止条件时输出覆盖情况统计表;训练深度学习模型并反向计算权重距离和,构建并输出测试用例的字节序列与循环代码结构覆盖情况之间的映射关系;基于映射关系,对与循环代码结构覆盖情况对应的测试用例中的相应字节序列分配变异概率并进行变异,生成子代测试用例,并将其作为被测程序的输入,进行模糊测试,直到满足模糊测试终止条件,输出模糊测试报告。本方法基于映射关系对测试用例字节序列进行变异,能够针对性地生成提高循环代码结果覆盖率的测试用例。
-
-
-
-
-
-
-
-
-