[发明专利]应用程序的字节码文件获取方法及装置有效
申请号: | 201910854832.2 | 申请日: | 2019-09-10 |
公开(公告)号: | CN110597496B | 公开(公告)日: | 2021-09-24 |
发明(设计)人: | 郑升;黄斌;王烨坤;袁明凯;罗章龙;严明 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F8/41;G06F8/61;G06F9/445;G06F11/36 |
代理公司: | 深圳市隆天联鼎知识产权代理有限公司 44232 | 代理人: | 刘抗美 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用程序 字节 文件 获取 方法 装置 | ||
1.一种应用程序的字节码文件获取方法,其特征在于,包括:
基于应用程序的安装包运行所述应用程序;
在确定所述应用程序的预定库文件被加载后,获取预定接口的地址;
以权限用户的方式运行钩子函数;
将所述钩子函数关联至所述应用程序;
远程调用加载动态链接库函数以获取lua加载标准接口的地址;
由所述预定接口地址获取接口参数;以及对所述接口参数进行解析以获取所述应用程序的字节码文件。
2.如权利要求1所述的方法,其特征在于,基于应用程序的安装包运行所述应用程序包括:
对所述安装包进行静态解码以确定所述字节码文件的加密方式;以及
在所述加密方式为私有加密方式时,基于应用程序的安装包运行所述应用程序。
3.如权利要求2所述的方法,其特征在于,还包括:
在所述加密方式为非私有加密方式时,对所述安装包中的预定文件夹中的资源数据进行解析以获取所述字节码文件。
4.如权利要求3所述的方法,其特征在于,对所述安装包中的预定文件夹中的资源数据进行解析以获取所述字节码文件包括:
基于所述安装包中预定文件夹中的资源数据的头文件确定解密秘钥;以及
通过所述解密秘钥对所述资源数据进行解密以获取所述应用程序的字节码。
5.如权利要求1所述的方法,其特征在于,基于应用程序的安装包运行所述应用程序包括:
通过所述安装包在虚拟空间中创建所述应用程序;以及
通过虚拟化引擎方式运行所述应用程序。
6.如权利要求1所述的方法,其特征在于,在确定所述应用程序的预定库文件被加载后,获取预定接口的地址包括:
通过监听内存代码段基址的方式确定所述应用程序的标准lua库文件被加载后,根据加载动态链接库函数获取lua加载标准接口的地址。
7.如权利要求1所述的方法,其特征在于,所述方法还包括:
通过直接调用钩子函数的方式获取由所述预定接口地址传输的所述接口参数。
8.如权利要求1所述的方法,其特征在于,还包括:
将所述字节码文件存储至区块链系统中。
9.一种应用程序的字节码文件获取装置,其特征在于,包括:
运行模块,用于基于应用程序的安装包运行所述应用程序;
监听模块,用于在确定所述应用程序的预定库文件被加载后,获取预定接口的地址;
钩子模块,用于以权限用户的方式运行钩子函数;将所述钩子函数关联至所述应用程序;远程调用加载动态链接库函数以获取lua加载标准接口的地址;由所述预定接口地址获取接口参数;以及
解析模块,用于对所述接口参数进行解析以获取所述应用程序的字节码文件。
10.一种计算机可读介质,其上存储有计算机程序,该计算机程序被处理器执行时实现权利要求1至8中任意一项所述的应用程序的字节码文件获取方法。
11.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至8中任意一项所述的应用程序的字节码文件获取方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910854832.2/1.html,转载请声明来源钻瓜专利网。