[发明专利]一种基于复杂网络分析的小程序克隆检测方法在审
申请号: | 202310045745.9 | 申请日: | 2023-01-30 |
公开(公告)号: | CN116028112A | 公开(公告)日: | 2023-04-28 |
发明(设计)人: | 范铭;鄢子强;王寅;石吉飞;刘峻峰;陶俊杰;刘烃;晋武侠 | 申请(专利权)人: | 西安交通大学 |
主分类号: | G06F8/75 | 分类号: | G06F8/75 |
代理公司: | 西安通大专利代理有限责任公司 61200 | 代理人: | 王艾华 |
地址: | 710049 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 复杂 网络分析 程序 克隆 检测 方法 | ||
本发明公开一种基于复杂网络分析的小程序克隆检测方法,以解决目前小程序克隆检测问题。本方法首先对待检测小程序进行预处理,并通过静态分析从源代码中提取粗粒度的统计特征以及细粒度的布局特征和代码特征,根据其统计特征将划分到不同的克隆小程序家族簇中,根据布局特征和代码特征计算待检测小程序与克隆小程序家族簇中每个小程序的相似度向量,由分类器判断两个小程序是否克隆。通过以上方法,可以检测小程序的克隆情况,减少了误报率和漏报率,提升了用户在使用移动应用时的安全保障。为小程序的克隆检测提供了一种新的方法。
技术领域
本发明涉及移动应用程序中的程序克隆检测领域,特别涉及一种基于复杂网络分析的微信小程序克隆检测方法。
背景技术
随着互联网技术的发展,以微信、支付宝、百度等多家厂商为代表的第三方平台搭载式应用即小程序,逐渐成为人们生活中不可或缺的一种服务方式。2021年全网小程序超700万,微信小程序开发者突破300万,DAU超过4.5亿;日均使用次数同比增长32%,活跃小程序则增长41%。与此同时,小程序的大量增长及其潜在的利益使得其成为恶意开发者所觊觎的目标。
抄袭行为会严重侵犯原创开发者的权利,例如替换广告链接牟取经济利益,又或者混淆视听给恶意小程序引流。这种行为将危害小程序生态。同时抄袭者也可能引入恶意代码,进行窃取用户相关隐私等恶意行为。
目前,关于代码克隆检测技术主要可以分为四大类:基于文本、基于词法、基于语法和基于语义。
基于文本的检测方法分为两种,一种是将其视为字符串相似问题,仅仅从字符上去比较;另一种则是从字符的角度去提取细粒度特征例如特殊字符。基于文本的检测速度快,但准确率低,很难抗混淆。
基于词法的检测方法也可分为基于Token的检测方法及基于API的检测方法这两种方法。基于Token的检测方法对代码中标识符做了处理,返回Token进行源代码比较,可以有效解决变量名及函数名的替换问题。由于API是系统或框架预先提供给开发者的函数,不管剽窃者对代码的控制流、数据流如何做混淆,最基本的API调用都不会发生大的改变,基于API的检测方法通常会提取API调用次数作为特征。基于词法的检测准确率比基于文本的检测准确率稍高,但因缺少语法和语义分析,容易误判。
基于语法的检测通常认为相似的代码段也有相似的语法结构。这种方法会使用解析器目标源代码解析为AST抽象语法树,再通过比较代码间的树形结构或者从树形结构提取特征来比较树的相似性,其中相似的子树所对应的源代码段就是克隆代码。基于语法的检测计算开销很大,但准确率高。
基于语义的检测方法会从源代码分析出控制流图和数据流图,再结合控制流图和数据流图构建PDG,也有仅依赖于控制流图和数据流图检测的。利用子图同构算法或者提取图特征的算法来比较图相似性,相似的图对应的源代码就是克隆代码。基于语义的检测抗混淆能力强,准确率高,但同样计算开销很大。
发明内容
本发明的内容在于提出一种基于复杂网络分析的小程序克隆检测方法,以解决目前小程序克隆检测单一方法无法兼顾检测速度和检测精度的问题。本方法首先对待检测小程序进行预处理,并通过静态分析从源代码中提取粗粒度的统计特征SF以及细粒度的布局特征LF和代码维度的特征即自定义函数特征CFF、文件依赖特征FDF和双层依赖特征TLDF,根据其统计特征SF将划分到不同的克隆小程序家族簇中,根据布局特征LF、自定义函数特征CFF、文件依赖特征FDF和双层依赖特征TLDF计算待检测小程序与克隆小程序家族簇中每个小程序的相似度向量,由分类器判断两个小程序是否克隆。通过以上方法,可以检测小程序的克隆情况,加快了检测速度,减少了误报率和漏报率,提升了用户在使用移动应用时的安全保障。弥补了小程序克隆检测方法的空白。
为了实现上述目的,本发明采用以下技术方案:
步骤S101:对于待检测小程序S进行预处理,包括反编译、反混淆和提取主包;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安交通大学,未经西安交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310045745.9/2.html,转载请声明来源钻瓜专利网。