一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种应用程序代码检测方法和计算机可读存储介质与流程

2022-05-18 11:51:43 来源:中国专利 TAG:

技术特征:
1.一种应用程序代码检测方法,其特征在于,包括:获取待检测应用程序的代码文件,所述代码文件包括多段代码;对所述多段代码进行符号化处理,得到所述多段代码的语法链;在所述语法链中识别出所述待检测应用程序中接收外部数据的至少一数据接收函数;根据所述至少一数据接收函数,在所述代码文件中确定出所述外部数据的数据参数;基于所述数据参数,对所述代码文件中的代码进行规则扫描,得到所述待检测应用程序的代码检测结果。2.根据权利要求1所述的应用程序代码检测方法,其特征在于,所述获取待检测应用程序的代码文件,包括:获取所述待检测应用程序的开发数据,并在所述开发数据中筛选出初始代码文件;当所述初始代码文件的类型为源代码文件时,将所述初始代码文件作为所述待检测应用程序的代码文件;当所述初始代码文件的类型为二进制文件时,对所述初始代码文件进行反编译,得到所述初始代码文件对应伪代码文件,并将所述伪代码文件作为所述待检测应用程序的代码文件,且所述代码文件的类型为伪代码文件。3.根据权利要求2所述的应用程序代码检测方法,其特征在于,所述对所述多段代码进行符号化处理,得到所述多段代码的语法链,包括:当所述代码文件的类型为伪代码文件时,对所述代码文件中的伪代码进行调整,得到目标代码,并对所述目标代码进行符号化处理,得到所述多段代码的语法链;当所述代码文件的类型为源代码文件时,将所述代码文件中的代码作为目标代码,并对所述目标代码进行符号化处理,得到所述多段代码的语法链。4.根据权利要求3所述的应用程序代码检测方法,其特征在于,所述对所述目标代码进行符号化处理,得到所述多段代码的语法链,包括:在所述目标代码中识别出语法元素对应的语法代码;在所述目标代码中对所述语法代码进行切割,得到所述目标代码的对象结构;根据所述对象结构,将所述切割后的语法代码进行连接,得到所述多段代码的语法链。5.根据权利要求1至4任一项所述的应用程序代码检测方法,其特征在于,所述根据所述至少一数据接收函数,在所述代码文件中确定出所述外部数据的数据参数,包括:在所述代码文件中筛选出所述至少一数据接收函数对应的代码,得到接收函数代码;在所述接收函数代码中识别出所述外部数据的数据参数。6.根据权利要求5所述的应用程序代码检测方法,其特征在于,所述基于所述数据参数,对所述代码文件中的代码进行规则扫描,得到所述待检测应用程序的代码检测结果,包括:在所述接收函数代码中确定出所述数据参数对应的目标接收函数代码和调用所述数据参数的第一数据调用函数;根据所述目标接收函数代码和第一数据调用函数,对所述代码文件中的代码进行规则扫描,得到所述待检测应用程序的代码检测结果。7.根据权利要求6所述的应用程序代码检测方法,其特征在于,所述根据所述目标接收函数代码和第一数据调用函数,对所述代码文件中的代码进行规则扫描,得到所述待检测
应用程序的代码检测结果,包括:对所述目标接收函数代码进行规则扫描,得到第一检测结果;根据所述第一数据调用函数,在所述代码文件中识别出调用所述数据参数的函数对应的目标函数代码,并对所述目标函数代码进行规则扫描,得到第二检测结果;将所述第一检测结果与第二检测结果进行融合,得到所述待检测应用程序的代码检测结果。8.根据权利要求7所述的应用程序代码检测方法,其特征在于,所述对所述目标接收函数代码进行规则扫描,得到第一检测结果,包括:根据所述目标接收函数代码的代码类型,确定所述目标接收函数代码的检测规则;基于所述检测规则,对所述目标接收函数代码进行规则扫描,得到使所述待检测应用程序产生宕机风险的异常代码信息,将所述异常代码信息作为所述第一检测结果。9.根据权利要求7所述的应用程序代码检测方法,其特征在于,所述根据所述第一数据调用函数,在所述代码文件中识别出调用所述数据参数的函数对应的目标函数代码,并对所述目标函数代码进行规则扫描,得到第二检测结果,包括:在所述代码文件中识别出所述第一数据调用函数对应的调用函数代码,并在调用函数代码中确定出调用所述数据参数的第一调用参数;在所述调用函数代码中筛选出所述第一调用参数对应的目标调用函数代码和调用所述数据参数的第二数据调用函数,并对所述目标调用函数代码进行规则扫描;返回执行在所述代码文件中识别出所述第二数据调用函数对应的调用函数代码的步骤,直至所述数据参数的调用层次超过预设层次阈值或所述代码文件中调用所述数据参数的数据调用函数对应的目标函数代码全部扫描为止,得到第二检测结果,所述调用层次为数据调用函数调用所述数据参数的层次,所述第一数据调用函数的调用层次为一次,所述第二数据调用函数的调用层次为两次。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至9任一项所述的应用程序代码检测方法中的步骤。

技术总结
本发明实施例公开了一种应用程序代码检测方法和计算机可读存储介质;本发明实施例在获取待检测应用程序的代码文件后,该代码文件包括多段代码,对多段代码进行符号化处理,得到多段代码的语法链,然后,在语法链中识别出待检测应用程序中接收外部数据的至少一数据接收函数,根据至少一数据接收函数,在代码文件中确定出外部数据的数据参数,然后,基于数据参数,对代码文件中的代码进行规则扫描,得到待检测应用程序的代码检测结果;该方案可以提升应用程序代码检测的检测准确率和检测效率。率。率。


技术研发人员:王烨坤 袁明凯 罗章龙 黄斌 严明
受保护的技术使用者:腾讯科技(深圳)有限公司
技术研发日:2020.11.17
技术公布日:2022/5/17
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献