-
-
简单apk脱壳工具源码
-
发表于:
2018-8-7 17:40
25162
-
刚看f8大佬开源了自己的脱壳机(能脱下函数抽取)。敬佩之心油然而生。瞬间也想开源一下我写的垃圾代码 来骗几个赞:之前也写过dalvik版的脱壳机 可惜不能脱函数抽取 不过改一下应该可以吧
这个软件 涉及到的姿势有动态解析appminifest,xposed 和ndk 。ndk其实就是动态解析dex
代码这东西好久不看真的会忘。这个代码是8个月前写的。写的时候感觉印象很深。现在不让看代码 描述一下。真是描述不了。代码开源出来 希望 有用
本工具是一个apk软件,打开后listview显示手机上安装的所有用户apk(图标➕apk名字),然后可以选择需要脱壳apk,然后再运行需要脱壳apk。即可完成脱壳。
代码实现:
1解析选择apk的apkminifest,获取其包名,ApplicationName,MainActityName。
2Xposed hook android.content.ContextWrapper attachBaseContext得到壳的classloder
3根据classloder继续hook真正类的oncreate。
4继续根据classloader获取内存中的所有cookie。
5继续调用jni。根据cookie能转换成DexFile,然后其实就是解析dex文件了。
6在内存其实他的指向都是完整的。只不过没有在连续的地方。dump下来的也就不完整。那么我就分部dump。1。classdef之前的,2classdef之后的,3classdef4.classdata,5opcode然后修改指向组合。
项目难点:得完全掌握dex文件格式,才能分模块dump各个段,然后组合成dex
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!
最后于 2018-8-7 17:44
被skyun编辑
,原因: