首页
社区
课程
招聘
[原创] 某类抽取加固APP的脱壳与修复
发表于: 2020-3-31 00:46 11290

[原创] 某类抽取加固APP的脱壳与修复

2020-3-31 00:46
11290

写在前面
APP来自看雪安卓2w班3月份题目,题目主要关键点在于dex的dump和恢复,但是实际上由于这个APP的壳保护较弱,实际上如果脱壳点时机稍微晚一点,就可以完全dump下来,也不需要修复。不过为了应对其他无法完整dump下来的APP,解题时还是采用了较为一般的方法。

使用至少两种方法完成对dex的dump和修复

选取脱壳点

这里选取我之前总结的调用图中的DexFileVerifier::VerifyDexFileVerifier以及OpenFile函数与DexFile::DexFile函数作为脱壳点,
在函数中插入以下dump dex的代码

编译源码,刷机,
刷机成功后,安装并给予应用存储权限,然后运行app,并在sdcard目录下使用grep命令过滤dex,最终得到脱壳后的文件如下

dump下来之后就是修复,使用FART确认是否有抽取的dex,

fart.py,然后一一分析想要分析的方法
最终修复效果

我自己写了一个脚本,关键代码如下

这个脚本是实现的抽取壳中空间不变的情况,使用方法和完整代码见here,程序个人完成,如果有bug,欢迎指摘。最终修复效果如下:


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

最后于 2020-4-1 12:00 被Simp1er编辑 ,原因:
上传的附件:
收藏
免费 5
支持
分享
最新回复 (5)
雪    币: 5330
活跃值: (5464)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
2
不错
2020-4-3 09:45
0
雪    币: 19950
活跃值: (4942)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
谢谢楼主先收藏起来
2020-4-7 13:26
0
雪    币: 334
活跃值: (392)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
感谢大牛
2021-4-1 15:28
0
雪    币: 334
活跃值: (392)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5

大牛,这个错误是啥原因

2021-4-1 15:32
0
雪    币: 2677
活跃值: (5340)
能力值: ( LV10,RANK:177 )
在线值:
发帖
回帖
粉丝
6
mark了,感谢simple哥
2021-4-1 15:36
0
游客
登录 | 注册 方可回帖
返回
//