首页
社区
课程
招聘
[原创] FRIDA-DEXDump: 一吻便杀一个人,三秒便脱一个壳
发表于: 2020-2-25 23:04 32689

[原创] FRIDA-DEXDump: 一吻便杀一个人,三秒便脱一个壳

2020-2-25 23:04
32689

APP 加固发展到现在已经好几代了,从整体加固到代码抽取到虚拟机保护,加固和脱壳的方案也逐渐趋于稳定。随着保护越来越强,脱壳机们也变得越来越费劲,繁琐。

不过对于我来说,很多时候其实并不需要那些被强保护起来的代码,我只是想单纯的看看这个地方的业务逻辑。所以,我追求的是更加快速、简便的脱壳方法。

得益于FRIDA, 在 PC 上面进行内存搜索、转储都变得十分方便,再也不需要考虑什么Xposed、什么Android开发、什么代码注入,只需要关注如何去搜索想要的东西,于是依赖一个几十行代码的小脚本,就可以将大部分内存中的 dex 脱下来。在过去的一年,我几乎所有脱壳的工作都是由此脚本来完成,目前已经随手开源:FRIDA-DEXDump, 欢迎star。

对于完整的 dex,采用暴力搜索 dex035 即可找到。而对于抹头的 dex,通过匹配一些特征来找到。

有人问我无头dex的匹配原理是什么,这里补充一下: 因为许多加固抹头的时候只会抹掉dex035这个magic bytes, 但是其实 DexHeader 里很多其他的字段也是可以当作特征来匹配: 比如 header 的长度、string\type\field\proto 表的索引,索引指向的位置顺序等等。

虽然单一一个字段拿出来无法作为准确的特征,但如果有多条规则进行匹配,那么就完成了一个相对精确的模糊搜索,这样就能搜到 dex035 的dex了。代码里我仅仅只加了一条string_id_off的规则,所以加了个 improveTODO, 不过我觉得基本上够用,有兴趣的补全可以过来提 pr 鸭。

目前基本上我遇到的大部分 tx、bb、ijm、360、baidu 很多都是可以 dump 的,毕竟现代壳的核心功能并不是为了保护整体 DEX

(不会安装使用 FRIDA 的,请先自行百度学会..)

或者可以将脚本封装成命令,就像这样:

图片描述

原文:秃头的逆向痴想


[培训]科锐逆向工程师培训第53期2025年7月8日开班!

最后于 2021-8-22 20:57 被葫芦娃编辑 ,原因:
收藏
免费 8
支持
分享
最新回复 (47)
雪    币: 2722
活跃值: (4050)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
2
膜拜大佬,学习了
2020-2-26 00:03
0
雪    币: 17
活跃值: (891)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
爱解密内抽取脱得dex也是空得把
2020-2-26 09:37
0
雪    币: 17
活跃值: (891)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
实测可以脱360 爱加密APP直接闪退 
2020-2-26 09:53
0
雪    币: 7117
活跃值: (9934)
能力值: ( LV17,RANK:797 )
在线值:
发帖
回帖
粉丝
5
你咋这么骚。
能教教我怎么安装frida吗
最后于 2020-2-26 13:35 被无名侠编辑 ,原因:
2020-2-26 13:34
0
雪    币: 632
活跃值: (604)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
牛批
2020-2-26 13:58
0
雪    币: 30
活跃值: (1183)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
30dK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6s2N6h3!0c8K9h3q4F1k6K6p5&6z5e0y4Q4x3V1k6r3M7X3W2V1j5g2)9J5k6p5q4H3K9#2)9J5k6q4g2F1M7r3q4U0K9#2)9J5c8X3u0D9L8$3u0Q4x3V1k6E0j5i4y4@1k6i4u0Q4x3V1k6V1k6i4S2p5N6h3#2H3i4K6u0W2K9Y4x3`.
这个内存搜索的也很好用
2020-2-26 14:08
0
雪    币: 914
活跃值: (3554)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
8
无名侠 你咋这么骚。能教教我怎么安装frida吗
来我家,手把手教学
2020-2-26 14:11
0
雪    币: 914
活跃值: (3554)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
9
uvbs 8ebK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6s2N6h3!0c8K9h3q4F1k6K6p5&6z5e0y4Q4x3V1k6r3M7X3W2V1j5g2)9J5k6p5q4H3K9#2)9J5k6q4g2F1M7r3q4U0K9#2)9J5c8X3u0D9L8$3u0Q4x3V1k6E0j5i4y4@1k6i4u0Q4x3V1k6V1k6i4S2p5N6h3#2H3i4K6u0W2K9Y4x3`. 这个内存搜索的也很好用
嗯,不过不是一个原理。
2020-2-26 14:12
0
雪    币: 21
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
10
2020-2-28 15:52
0
雪    币: 745
活跃值: (1515)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
11
2020-2-28 16:22
0
雪    币: 130
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
大佬啊。
2020-3-3 17:59
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
13
好像脱不了BB企业版,核心代码还是Help.stub()
2020-3-4 10:26
0
雪    币: 8519
活跃值: (9142)
能力值: ( LV12,RANK:360 )
在线值:
发帖
回帖
粉丝
14
大佬!请收下我的膝盖!
2020-3-10 20:59
0
雪    币: 866
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
15
3秒脱壳,不虚此言!
2020-3-28 19:51
0
雪    币: 1387
活跃值: (5614)
能力值: ( LV3,RANK:25 )
在线值:
发帖
回帖
粉丝
16
大佬!请收下我的膝盖!
2020-3-29 09:55
0
雪    币: 866
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
17
大佬,脱下来的dex,如何在回填使用呢?
请大佬给个参考,谢谢!
2020-3-29 18:57
0
雪    币: 243
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
18
用过 dexDump(b30K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6s2N6h3!0c8K9h3q4F1k6K6p5&6z5e0y4Q4x3V1k6r3M7X3W2V1j5g2)9J5k6p5q4H3K9#2)9J5k6q4g2F1M7r3q4U0K9#2)9J5c8X3u0D9L8$3u0Q4x3V1k6E0j5i4y4@1k6i4u0Q4x3V1k6V1k6i4S2p5N6h3#2H3i4K6u0W2K9Y4y4Q4x3U0k6F1j5Y4y4H3i4K6y4n7i4@1g2r3i4@1u0o6i4K6R3&6i4@1f1$3i4@1p5#2i4@1u0o6i4@1f1@1i4@1t1^5i4K6S2m8i4K6b7H3N6i4k6T1M7#2!0q4y4W2)9^5c8g2!0m8z5q4!0q4z5q4)9^5c8q4)9&6x3q4!0q4y4#2)9&6b7g2)9^5y4q4!0q4c8W2!0n7b7#2)9^5b7#2!0q4z5q4)9^5y4q4!0n7x3g2!0q4y4g2!0m8x3#2!0n7x3#2!0q4y4W2)9^5y4q4)9&6c8W2!0q4z5q4!0m8y4#2)9^5z5g2!0q4z5q4!0n7c8W2)9&6z5q4!0q4y4g2)9^5c8W2!0m8c8W2!0q4y4q4!0n7b7W2!0m8y4g2!0q4c8W2!0n7b7#2)9^5b7#2!0q4y4#2)9&6b7#2)9^5b7W2!0q4y4g2)9^5c8g2)9&6c8W2!0q4y4#2)9&6x3q4)9^5y4W2!0q4y4q4!0n7z5q4!0n7b7W2!0q4z5q4!0m8y4W2)9^5x3g2!0q4y4g2)9^5c8g2!0n7b7X3S2G2L8$3E0Q4x3U0k6F1j5Y4y4H3i4K6y4n7L8r3W2T1j5i4u0@1i4K6u0W2M7$3!0Q4c8e0c8Q4b7U0S2Q4b7f1c8Q4c8e0N6Q4z5f1q4Q4z5o6c8Q4c8e0N6Q4b7U0y4Q4b7V1u0Q4c8e0N6Q4b7V1u0Q4z5f1k6Q4c8e0g2Q4z5o6N6Q4b7V1c8Q4c8e0k6Q4z5e0g2Q4b7U0m8Q4c8f1k6Q4b7V1y4Q4z5p5y4Q4c8e0k6Q4z5p5u0Q4b7V1k6Q4c8e0g2Q4z5o6S2Q4b7U0m8V1k6i4S2Q4c8e0k6Q4z5e0k6Q4z5o6N6Q4c8e0c8Q4b7V1u0Q4b7U0k6Q4c8e0N6Q4z5f1q4Q4z5o6c8Q4c8e0g2Q4z5f1y4Q4b7U0m8Q4c8e0g2Q4z5f1c8Q4z5o6m8Q4c8e0N6Q4z5o6c8Q4b7U0k6Q4c8e0g2Q4z5e0m8Q4z5p5g2V1N6h3#2H3i4@1f1K6i4K6R3H3i4K6R3J5i4@1f1@1i4@1u0p5i4K6R3$3i4@1f1$3i4K6W2o6i4K6R3H3i4@1f1^5i4@1u0r3i4K6V1I4i4@1f1&6i4K6R3I4i4K6R3%4i4@1f1#2i4K6R3^5i4@1t1H3i4@1f1@1i4@1t1^5i4@1q4m8i4@1f1#2i4@1p5K6i4@1t1K6i4K6t1$3L8X3u0K6M7q4)9K6b7W2)9J5y4X3&6T1M7%4m8Q4x3@1u0V1k6i4S2p5N6h3#2H3i4K6t1$3L8X3u0K6M7q4)9K6b7W2!0q4z5q4)9^5y4q4!0n7x3g2!0q4y4q4!0n7z5q4)9^5c8q4!0q4y4q4!0n7b7g2)9^5y4W2!0q4c8W2!0n7b7#2)9^5x3g2)9J5y4X3&6T1M7%4m8Q4x3@1u0Q4x3U0k6F1j5Y4y4H3i4K6y4n7i4@1f1^5i4@1q4r3i4K6V1#2i4@1f1^5i4@1q4r3i4K6V1#2i4@1f1$3i4@1p5#2i4@1u0o6i4@1f1@1i4@1t1^5i4@1u0n7i4@1f1%4i4K6W2m8i4K6R3@1i4@1f1$3i4K6V1$3i4@1t1&6i4@1f1$3i4@1t1K6i4K6V1#2i4@1g2r3i4@1u0o6i4K6R3I4
2020-3-30 16:40
0
雪    币: 243
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
19
经验证,楼主脚本可以三秒脱!   请教楼主个问题,看脚本是  枚举当前进程中已经映射到地址空间中的所有内存块,然后查找dex文件特征,最后dump!  问题是,内存块中保存了全部的已解密dex文件吗?
2020-3-31 10:58
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
20
厉害,几秒钟脱壳
2020-4-3 10:13
0
雪    币: 119
活跃值: (1778)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
必须要给你点个赞
2020-4-14 10:12
0
雪    币: 195
活跃值: (123)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
搜搜内存直接暴利挖出
2020-4-14 16:13
0
雪    币: 225
活跃值: (123)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
这个很厉害啊
2020-4-20 17:30
0
雪    币: 238
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
24
大佬
2020-4-20 19:39
0
雪    币: 23
活跃值: (1064)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
这个好像不能脱最新的腾讯加固壳吧
2020-4-21 19:47
0
游客
登录 | 注册 方可回帖
返回