记录一次成功反混淆脱壳及抓包激活app全过程前言?近期接到一个需求,要对公司之前开发的一款app进行脱壳 。因为该app是两年前开发的,源代码文件已经丢失 , 只有加壳后的apk文件,近期要查看其中一项功能的源代码,因此需要尝试进行脱壳处理,反编译后发现该app是使用某数字公司的加壳工具进行混淆加壳的 。此外 , 该app是给特定平板使用的,需要激活码进行激活才能使用 , 而原激活码服务器已经停止运行,只能通过抓包修改激活码服务器地址进行激活 。该文档记录了我成功脱壳抓包的全过程 。
?我尝试的Xposed框架的工具均无效 , 使用IDA查看底层代码后发现JNI经过包装,修改难度较大,最终通过blackdex及frida框架的dexdump成功抓取dex文件 。
?注意:软件必须激活能正常使用才能进行抓取dex文件 。
1、使用apktools、dex2jar、jd-gui进行反编译,查看文件源码这三种反编译工具的使用请自行查看相关教程:https://blog.csdn.net/helloc888/article/details/106712649?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-1-106712649-blog-123085977.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-1-106712649-blog-123085977.pc_relevant_default&utm_relevant_index=2 。其实使用jadx也可以查看源码 , 但开始我没有使用jadx查看,而是使用这三种工具 。
![记录一次成功反混淆脱壳及抓包激活app全过程](https://m.360buyimg.com/jdcms/jfs/t1/162242/24/31791/17511/6352565eEc5a25992/fa40c8c3e426748e.png)
文章插图
查看文件源码后发现该apk经过360加固混淆 , 无法查看相关源码,因此开始本次脱壳之路 。
2、下载安装夜神模拟器 , 并配置夜神模拟器下载:https://www.yeshen.com/
由于手上没有用于测试的平板 , 因此安装夜神模拟器进行脱壳测试 。通过网址下载安装即可,注意:电脑要在主板设置中开启VT,加快模拟器运行速度 。
下载安装完成后,进入夜神模拟器并进行初步配置 。文件管理、设置等都在工具文件夹中 。
![记录一次成功反混淆脱壳及抓包激活app全过程](http://img.zhejianglong.com/231018/1RS35331-1.jpg)
文章插图
文件同步路径查看 , 文件同步类似于docker中的文件挂载,在该文件夹中的文件,模拟器和电脑都可以访问,需要传到电脑的文件直接放到该文件夹下就不用导出,导出也是导出到该文件夹下
![记录一次成功反混淆脱壳及抓包激活app全过程](https://m.360buyimg.com/jdcms/jfs/t1/206964/36/26538/26933/6352565eEe1d86cf9/dd147ea0529f5bd7.png)
文章插图
在右上角 设置/基础 中开启root权限
![记录一次成功反混淆脱壳及抓包激活app全过程](https://m.360buyimg.com/jdcms/jfs/t1/166707/19/31026/45858/6352565fEe2bd2abd/e3f1b59c7a0d2045.png)
文章插图
3、安装可能需要使用的软件3.1、安装xposed如果需要xposed框架,那么直接在搜索栏中搜索xposed并安装,授予root权限
![记录一次成功反混淆脱壳及抓包激活app全过程](https://m.360buyimg.com/jdcms/jfs/t1/107184/12/26548/102439/63525660E50e74ba7/af4451f503a0b239.png)
文章插图
打开安装好的xposed软件,安装xposed框架
![记录一次成功反混淆脱壳及抓包激活app全过程](https://m.360buyimg.com/jdcms/jfs/t1/201202/4/26144/105049/63525662E869c9404/09289b242c9c3545.png)
文章插图
需要使用该框架时,则在左上角选项卡中的模块一栏运行相关脱壳软件即可
![记录一次成功反混淆脱壳及抓包激活app全过程](http://img.zhejianglong.com/231018/1RS32K9-6.jpg)
文章插图
3.2、安装终端模拟器模拟器中需要使用linux命令进行授权等操作的话,则要安装终端模拟器apk,使用adb其实也可以不用安装
安卓终端模拟器apk下载:https://f-droid.org/packages/jackpal.androidterm/
使用这款模拟器主要是支持中文输入,可以查找中文文件进行相关操作,可以不安装F-Droid , 只安装终端模拟器,个人推荐
建议使用本机下载apk后,使用夜神模拟器安装功能进行安装,使用夜神模拟器中的浏览器进行下载安装软件会出现失败的情况
模拟器操作与linux常用操作相同,su切换管理员
3.3、安装adbAdb是Android Debug Bridge的简称,是一个Android调试工具
adb下载地址:https://dl.google.com/android/repository/platform-tools-latest-windows.zip,下载后解压即可使用,配置环境变量(此电脑→属性→高级系统设置→环境变量→Path(系统变量)→新建(添加adb绝对路径之后确定)),以便可以系统全局使用
![记录一次成功反混淆脱壳及抓包激活app全过程](https://m.360buyimg.com/jdcms/jfs/t1/181130/27/29163/455529/63525665E59a48de4/72a39af7c4c5965d.png)
文章插图
查看adb版本
![记录一次成功反混淆脱壳及抓包激活app全过程](https://m.360buyimg.com/jdcms/jfs/t1/164513/39/30919/12155/63525665E3636d798/f9fb4615afb24eae.png)
推荐阅读
- Hyperf使用ElasticSearch记录
- 完全看懂《冒死记录中国神秘事件》4部的高手进 冒死记录中国神秘事件
- 文字的世界穿越一次古代怎么过
- Autobus 方法记录
- 剑网三按键精灵怎么才能用(按键精灵5分钟循环一次)
- iphone13第一次怎么下软件(iphone 13怎样安装app)
- 题解 2021 CCPC 威海站 VP记录
- Docker | 发布镜像到镜像仓库
- JavaFx 使用字体图标记录
- 记一次 .NET 某企业OA后端服务 卡死分析