3

简单apk脱壳工具源码

skyun 2018-8-7 17:40 4928

0x00 序1

刚看f8大佬开源了自己的脱壳机(能脱下函数抽取)。敬佩之心油然而生。瞬间也想开源一下我写的垃圾代码 来骗几个赞:之前也写过dalvik版的脱壳机 可惜不能脱函数抽取 不过改一下应该可以吧

0x01 序2

这个软件 涉及到的姿势有动态解析appminifest,xposed 和ndk 。ndk其实就是动态解析dex

0x02 序3

代码这东西好久不看真的会忘。这个代码是8个月前写的。写的时候感觉印象很深。现在不让看代码 描述一下。真是描述不了。代码开源出来 希望 有用

0x03 工具介绍

本工具是一个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

 

解析method的截图

0x04 代码

具体代码在github
https://github.com/skyun1314/hook_and_parse_dex2/tree/master/app



快讯:[看雪招聘]十八年来,看雪平台输出了大量安全人才,影响三代安全人才!

最后于 2018-8-7 17:44 被skyun编辑 ,原因:
本主题帖已收到 1 次赞赏,累计¥2.00
最新回复 (15)
猫子 2018-8-7 17:44
2
只能膜拜你们这些大佬
junkboy 2018-8-7 17:47
3
支持一下
默NJ 2018-8-7 17:59
4
6666666666666 大佬
不知世事 2018-8-7 19:23
5
大佬们动不动就开源脱壳机。。
yikuaiyingbi 2018-8-7 19:34
6
6666666
xianhuimin 2018-8-8 11:38
7
貌似不行,有稍微具体点的用法吗?
聖blue 6天前
8
tianhaoday 2天前
9
有成品嘛 劳烦编译一个给小白们用啊 好多APP检测XP框架
dryzh 2天前
10
xp框架吗?
tDasm 2天前
11
学习
zhuangbx 2天前
12
学习
fzyspark 19小时前
13
学习了,双击666
重庆rcbing 18小时前
14
先留影,顶上去.收藏.
kkang 16小时前
15
学习
你瞒我瞒 13小时前
16
这种老大,必须顶一个啊。技术分享最帅
返回