记录一次成功反混淆脱壳及抓包激活app全过程

记录一次成功反混淆脱壳及抓包激活app全过程前言?近期接到一个需求 , 要对公司之前开发的一款app进行脱壳 。因为该app是两年前开发的 , 源代码文件已经丢失 , 只有加壳后的apk文件 , 近期要查看其中一项功能的源代码 , 因此需要尝试进行脱壳处理 , 反编译后发现该app是使用某数字公司的加壳工具进行混淆加壳的 。此外 , 该app是给特定平板使用的 , 需要激活码进行激活才能使用 , 而原激活码服务器已经停止运行 , 只能通过抓包修改激活码服务器地址进行激活 。该文档记录了我成功脱壳抓包的全过程 。
?我尝试的Xposed框架的工具均无效 , 使用IDA查看底层代码后发现JNI经过包装 , 修改难度较大 , 最终通过blackdex及frida框架的dexdump成功抓取dex文件 。
【记录一次成功反混淆脱壳及抓包激活app全过程】?注意:软件必须激活能正常使用才能进行抓取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全过程

文章插图
查看文件源码后发现该apk经过360加固混淆 , 无法查看相关源码 , 因此开始本次脱壳之路 。
2、下载安装夜神模拟器 , 并配置夜神模拟器下载:https://www.yeshen.com/
由于手上没有用于测试的平板 , 因此安装夜神模拟器进行脱壳测试 。通过网址下载安装即可 , 注意:电脑要在主板设置中开启VT , 加快模拟器运行速度 。
下载安装完成后 , 进入夜神模拟器并进行初步配置 。文件管理、设置等都在工具文件夹中 。
记录一次成功反混淆脱壳及抓包激活app全过程

文章插图
文件同步路径查看 , 文件同步类似于docker中的文件挂载 , 在该文件夹中的文件 , 模拟器和电脑都可以访问 , 需要传到电脑的文件直接放到该文件夹下就不用导出 , 导出也是导出到该文件夹下
记录一次成功反混淆脱壳及抓包激活app全过程

文章插图
在右上角 设置/基础 中开启root权限
记录一次成功反混淆脱壳及抓包激活app全过程

文章插图
3、安装可能需要使用的软件3.1、安装xposed如果需要xposed框架 , 那么直接在搜索栏中搜索xposed并安装 , 授予root权限
记录一次成功反混淆脱壳及抓包激活app全过程

文章插图
打开安装好的xposed软件 , 安装xposed框架
记录一次成功反混淆脱壳及抓包激活app全过程

文章插图
需要使用该框架时 , 则在左上角选项卡中的模块一栏运行相关脱壳软件即可

经验总结扩展阅读