[发明专利]一种应用程序的脱壳方法、装置、终端设备和介质在审
申请号: | 201811580273.2 | 申请日: | 2018-12-24 |
公开(公告)号: | CN111353154A | 公开(公告)日: | 2020-06-30 |
发明(设计)人: | 李果;刘亚国;宋小龙;罗企;葛贤亮 | 申请(专利权)人: | 中移(杭州)信息技术有限公司;中国移动通信集团有限公司 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 郭润湘 |
地址: | 311100 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用程序 脱壳 方法 装置 终端设备 介质 | ||
本申请公开了一种应用程序的脱壳方法、装置、终端设备和介质,属于通信技术领域,该方法包括,基于接收的包含指定文件名的文件获取消息,向服务器返回指定文件,指定文件中包含OpenMemory方法的签名信息;接收服务器发送的包含OpenMemory方法的签名信息的脱壳脚本,脱壳脚本用于:根据OpenMemory方法的签名信息拦截OpenMemory方法获得目标应用的脱壳文件的地址信息,并根据地址信息导出脱壳文件;加载脱壳脚本并运行目标应用,获得脱壳文件。这样,简化了软件脱壳的繁琐操作,兼容性高,适用范围广。
技术领域
本申请涉及通信技术领域,尤其涉及一种应用程序的脱壳方法、装置、终端设备和介质。
背景技术
随着终端设备的发展,安卓(Android)平台的应用的不断增多,Android平台的恶意软件也在不断增多。用户的隐私和资产安全受到了严重的威胁。由于恶意应用通过加壳技术对恶意代码逻辑进行了隐藏,因此,为分析恶意软件行为,通常需要针对加壳的Android应用进行脱壳操作,从而对获得的脱壳文件进行代码分析。
其中,软件加壳是指在一些计算机软件里有一段专门负责保护软件不被非法修改或反编译的程序。软件脱壳是对软件加壳的逆操作,把软件上存在的壳去掉,获取软件的源代码。在Android平台上是指获得加壳前的dex文件。
现有技术下,针对Android平台的应用脱壳时,通常采用以下两种方式:
第一种方式为:定制Android系统,即在Android系统代码中插入脱壳代码,获取原始的dex文件。
但是,采用这种方式,需要对源代码比较熟悉,并且每次修改系统源代码后都需要进行重新编译和刷机,操作步骤繁琐。
第二种方式为:采用容器技术动态加载需要脱壳的应用,并通过拦截dex调用的关键方法,获取原始的dex文件。
但是,很多加固的应用会检测自身的运行环境,若检测到自身运行在容器中时退出,导致无法脱壳,存在兼容性问题,适用范围较小。
发明内容
本申请实施例提供一种应用程序的脱壳方法、装置、终端设备和介质,用以在对应用进行软件脱壳时,简化软件脱壳的复杂步骤,扩大适用范围。
一方面,提供一种应用程序的脱壳方法,包括:
基于接收的包含指定文件名的文件获取消息,向服务器返回指定文件,指定文件中包含OpenMemory方法的签名信息;
接收服务器发送的包含OpenMemory方法的签名信息的脱壳脚本,脱壳脚本用于:根据OpenMemory方法的签名信息拦截OpenMemory方法获得目标应用的脱壳文件的地址信息,并根据地址信息导出脱壳文件;
加载脱壳脚本并运行目标应用,获得脱壳文件。
较佳的,加载脱壳脚本并运行目标应用,获得脱壳文件,包括:
运行目标应用;
根据OpenMemory方法的签名信息,若确定目标应用调用OpenMemory方法,则通过指定的拦截hook应用拦截OpenMemory方法,获得目标应用的脱壳文件的地址信息;
根据脱壳文件的地址信息,确定脱壳文件的文件大小;
根据脱壳文件的地址信息和文件大小,将脱壳文件从内存导出至指定目录下。
较佳的,在基于接收的包含指定文件名的文件获取消息,向服务器返回指定文件之前,进一步包括:
获取系统用户权限;
安装并运行指定hook应用;
通过指定hook应用,建立监听。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中移(杭州)信息技术有限公司;中国移动通信集团有限公司,未经中移(杭州)信息技术有限公司;中国移动通信集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811580273.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种灶具系统及其控制方法
- 下一篇:一种车牌识别方法、装置及电子设备