【技术实现步骤摘要】
本专利技术涉及计算机
以及信息安全
,尤其涉及一种引擎漏洞检测的方法以及检测装置。
技术介绍
如今,随着信息技术的不断发展,应用程序也日益普及化。为了丰富人们的日常生活,开发人员开发了多种多样的应用程序,例如社交类应用、游戏类应用、电商类应用、搜索类应用以及论坛类应用等。然而,在开发应用程序的过程中应用程序编程接口(英文全称:ApplicationProgrammingInterface,英文缩写:API)可能会出现漏洞,从而导致该应用程序在运行过程中发生宕机的情况。为了降低应用程序在运行过程中出现宕机的频率,目前可以采用一种手段对API是否存在漏洞进行检测。具体如图1所示,图1为现有技术中检测应用程序编程接口漏洞的流程示意图。步骤101中开发人员需要先熟悉应用程序核心功能和架构,然后设计可能存在性能问题的场景。步骤102中,开发人员可以为开发引擎中的每条API编写接口测试用例,使得在步骤103中能够采用每条接口测试用例对相应的每个API进行接口测试。由于修改开发引擎底层API风险较高,且不利于更新和维护引擎代码,一般需要通过步骤104来调用接口的上层逻辑代码。最后,在步骤105中,将输出步骤104中定位得到的高危API代码行,开发人员可以根据输出的高危API代码行进行及时修复。然而,由于开发引擎的API有很多,且存在较多的开发引擎版本,每个版本的API又存在着一定的差异,因此需要为每个开发版本编写大量的测试用例,从而耗费巨大的API漏洞检测成本。
技术实现思路
本专利技术实施例提供了一种引擎漏洞检测的方法以及检测装置,可以不用为每个应用开发引擎 ...
【技术保护点】
一种引擎漏洞检测的方法,其特征在于,包括:获取待检测应用程序;获取第一应用开发引擎的应用程序编程接口经验库,所述第一应用开发引擎用于开发所述待检测应用程序,所述应用程序编程接口经验库中包含至少一项存在安全漏洞的应用程序编程接口信息;提取所述待检测应用程序的应用程序编程接口;根据所述应用程序编程接口经验库,判断所述待检测应用程序的应用程序编程接口是否存在安全漏洞,若是,则从所述待检测应用程序的应用程序编程接口中确定存在安全漏洞的目标应用程序编程接口。
【技术特征摘要】
1.一种引擎漏洞检测的方法,其特征在于,包括:获取待检测应用程序;获取第一应用开发引擎的应用程序编程接口经验库,所述第一应用开发引擎用于开发所述待检测应用程序,所述应用程序编程接口经验库中包含至少一项存在安全漏洞的应用程序编程接口信息;提取所述待检测应用程序的应用程序编程接口;根据所述应用程序编程接口经验库,判断所述待检测应用程序的应用程序编程接口是否存在安全漏洞,若是,则从所述待检测应用程序的应用程序编程接口中确定存在安全漏洞的目标应用程序编程接口。2.根据权利要求1所述的方法,其特征在于,所述获取第一应用开发引擎的应用程序编程接口经验库之前,所述方法还包括:获取所述第一应用开发引擎的源代码;查找所述第一应用开发引擎的源代码中存在安全漏洞的应用程序编程接口;根据所述存在安全漏洞的应用程序编程接口,建立所述应用程序编程接口经验库。3.根据权利要求1或2所述的方法,其特征在于,所述查找所述第一应用开发引擎的源代码中存在安全漏洞的应用程序编程接口,包括:检测所述第一应用开发引擎的源代码中存在空指针的应用程序编程接口;获取所述存在空指针的应用程序编程接口所对应的应用程序编程接口名称和参数位置。4.根据权利要求3所述的方法,其特征在于,所述根据所述存在安全漏洞的应用程序编程接口,建立所述应用程序编程接口经验库,包括:根据所述存在空指针的应用程序编程接口所对应的应用程序编程接口名称和参数位置,建立所述第一应用开发引擎的应用程序编程接口经验库。5.根据权利要求2至4中任一项所述的方法,其特征在于,所述获取第一应用开发引擎的应用程序编程接口经验库之后,所述方法还包括:当所述第一应用开发引擎更新为第二应用开发引擎时,获取所述第二应用开发引擎的源代码;查找所述第二应用开发引擎的源代码中存在安全漏洞的应用程序编程接口;根据所述存在安全漏洞的应用程序编程接口,将所述第一应用开发引擎的应用程序编程接口经验库更新为所述第二应用开发引擎的应用程序编程接口经验库。6.根据权利要求4所述的方法,其特征在于,所述根据所述应用程序编程接口经验库,判断所述待检测应用程序的应用程序编程接口是否存在安全漏洞,包括:遍历所述待检测应用程序的应用程序编程接口名称;判断所述待检测应用程序的应用程序编程接口名称是否与所述应用程序编程接口经验库中包含的应用程序编程接口名称一致,若是,则根据所述应用程序编程接口经验库获取所述待检测应用程序中所述应用程序编程接口名称对应的参数位置;若所述参数位置上对应的参数为空指针,则确定所述待检测应用程序的应用程序编程接口存在安全漏洞。7.根据权利要求1所述的方法,其特征在于,所述从所述待检测应用程序的应用程序编程接口中确定存在安全漏洞的目标应用程序编程接口之后,所述方法还包括:输出所述待检测应用程序中的风险信息,所述风险信息包括存在所述目标应用程序编程接口的待检测应用程序的文件名、代码位置、调用的应用程序编程接口名称以及报错信息中的至少一项。8.一种检测装置,其特征在于,包括:第一获取模块,用于获取待检测应用程序;第二获取模块,用于获取第一应用开发引擎的应用程序编程接口经验库,所述第一应用开发引擎用于开发所述第一获取模块获取的所述待检测应用程序,所...
【专利技术属性】
技术研发人员:张蓓,邹越,袁明凯,严明,魏学峰,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。