在APP逆向工作中,我们常常会遇到一些加了壳的APK,阻碍我们查看逆向分析工作造成比较大的困扰。这次我们就来学习如何使用frida进行脱壳。
首先,需要判断一个APK是否加壳,使用查壳工具查看APK是否已经加壳。
python查壳工具部分代码可查阅盘古石公众号文章《如何查看apk是否加壳》,或者将APK导入盘古石星源APP溯源分析平台进行查壳。
在对APK进行脱壳操作之前,要保证电脑中已经部署了相关环境,需要的环境如下。
1. python环境(推荐python3.8.3)
2. Frida环境(Frida,Firda tools,Frida server)(可在官网下载)
3. Android模拟器或Android真机(已root)
4. Firda脱壳脚本(下载地址:https://github.com/hluwa/FRIDA-DEXDump)
部署好python环境之后,开始安装Frida环境,首先安装Frida:
再安装frida-tools:
将Frida-server导入到手机的目录中
赋予firda-server权限并执行
之后,使用adb命令查看需要脱壳的apk的包名(这里adb命令的意思是查看当前运行app的包名)
知道需要脱壳的apk的包名之后,执行准备好的frida脚本dexDump.js,并在生成的dex文件中选择正确的代码文件pull到本地。
最后,只需要把得到的dex文件用jadx打开就OK了。
如果你觉得这样的脱壳方式还是比较繁琐,可以使用盘古石星源APP溯源分析平台进行一键脱壳~
安全为先,洞鉴未来,奇安信盘古石取证团队竭诚为您提供电子数据取证专业的解决方案与服务。如需试用,请联系奇安信各区域销售代表,或致电95015,期待您的来电!
“盘古石”团队是奇安信科技集团股份有限公司旗下专注于电子数据取证技术研发的团队,由来自国内最早从事电子数据取证的成员组成。盘古石团队以“安全为先,洞鉴未来”为使命,以“漏洞思维”解决电子数据取证难题,以“数据驱动安全”为技术思想,以安全赋能取证,研发新一代电子数据取证产品,产品涵盖计算机取证、移动终端取证、网络空间取证、IoT取证、取证数据分析平台等电子数据取证全领域产品和解决方案,为包括公安执法、党政机关、司法机关以及行政执法部门等提供全面专业的支持与服务。
原文始发于微信公众号(盘古石取证):简单易学的APK脱壳技巧
评论