[发明专利]基于张量分解的安卓APP重打包检测方法有效

专利信息
申请号: 201910428020.1 申请日: 2019-05-22
公开(公告)号: CN110245492B 公开(公告)日: 2021-04-20
发明(设计)人: 刘烃;池剑磊;王子骏;郑庆华;范伟杰 申请(专利权)人: 西安交通大学
主分类号: G06F21/56 分类号: G06F21/56;G06K9/62
代理公司: 西安通大专利代理有限责任公司 61200 代理人: 田洲
地址: 710049 *** 国省代码: 陕西;61
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 基于 张量 分解 app 打包 检测 方法
【权利要求书】:

1.基于张量分解的安卓APP重打包检测方法,其特征在于,包括以下步骤:

步骤S1):构建Java的API调用类集合SA={si|1≤i≤I},其中si表示第i个API调用类,I表示Java的API调用类的总数,然后对所有待检测的安卓APP进行反编译,得到各个APP的全部Smali文件集合,并对得到的Smali文件进行第三方库过滤;

步骤S2):利用API调用在Smali文件中出现的位置,得到各个Smali文件的协同出现矩阵,对每个APP的所有Smali文件的协同出现矩阵取并集操作,获得每个APP的协同出现矩阵SC={sk|1≤k≤K},其中sk表示第k个APP的协同出现矩阵,K表示待检测的APP总数;

步骤S3):利用所有APP的协同出现矩阵组成三阶张量

步骤S4):采用张量分解算法将得到的三阶张量X降维为二阶矩阵,从而,将每个APP的协同出现矩阵表示成一阶向量;

步骤S5):利用张量分解后得到的APP的向量表示,计算APP两两之间的欧氏距离Di,j;利用排序算法,将距离每个APP最近的前个APP与该APP相连;若两个APP被相连,则认为它们是重打包关系。

2.根据权利要求1所述基于张量分解的安卓APP重打包检测方法,其特征在于,步骤S1)具体包括:爬取Java的全部API调用类,构建Java的API调用类集合SA={si|1≤i≤I},其中si表示第i个API调用类,I表示Java的API调用类的总数;然后使用反编译工具apktool,得到各个APP的Smali文件;并使用第三方库过滤工具libradar,对现有的库进行聚类后,得到白名单,对得到的Smali文件进行过滤。

3.根据权利要求1所述基于张量分解的安卓APP重打包检测方法,其特征在于,步骤S2)中利用API调用在Smali文件中出现的位置,得到各个Smali文件的协同出现矩阵,从而得到APP的协同出现矩阵;具体包括以下步骤:

步骤S201:抽取下一个待分析的APP;

步骤S202:对于第k个APP所有的待分析Smali文件,均分别初始化一个全为0的协同出现矩阵其中表示第k个APP的第n个Smali文件的协同出现矩阵,N表示第k个APP的Smali文件数,并设置一个滑动窗ω;

步骤S203:抽取当前APP待分析的Smali文件中的下一条语句;

步骤S204:判断该语句是否是一条API调用语句,如果是则跳至步骤S205,否则转入步骤S203;

步骤S205:判断在该API调用语句的滑动窗内是否出现其他的API调用语句,若出现则跳至步骤S206,否则转入步骤S203;

步骤S206:将协同出现矩阵中对应于两种API的位置置1;

步骤S207:判断当前APP的所有Smali文件是否分析完毕,若分析完毕则跳至步骤S208,否则转入步骤S203;

步骤S208:对该APP的所有Smali文件的协同出现矩阵取并集,得到该APP的协同出现矩阵

步骤S209:若所有APP都已分析完毕,则停止算法,如果尚存在未分析的APP,则返回步骤S201继续迭代。

4.根据权利要求1所述基于张量分解的安卓APP重打包检测方法,其特征在于,步骤S3)具体包括:将各个APP的协同出现矩阵按次序沿竖直方向排放在一起,组成三阶张量其中X(i,j,k)表示第k个APP中第i种API调用类和第j种API调用类在预先定义的滑动窗内出现的情况。

5.根据权利要求1所述基于张量分解的安卓APP重打包检测方法,其特征在于,步骤S4)中,采用张量CP分解算法将得到的三阶张量X降维为二阶矩阵,从而,将每个APP的协同出现矩阵表示成一阶向量,具体分解方法如下:

步骤S401:将三阶张量X近似地表示为有限个秩为一的张量外积和,即成分个数R为APP协同出现矩阵向量表示的维数;

步骤S402:张量X任意位置(i,j,k)上的元素估计值为将分解后的一阶向量组合为三个因子矩阵A=[a1a2…aR],B=[b1b2…bR],

步骤S403:在嵌入空间中,利用矩阵C的各行表示各APP的协同出现矩阵,得到各APP的一阶向量表示。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安交通大学,未经西安交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201910428020.1/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top