首页
社区
课程
招聘
[原创]Android第二代加固(support 4.4-8.1)
发表于: 2018-3-20 09:05 16495

[原创]Android第二代加固(support 4.4-8.1)

2018-3-20 09:05
16495

代码放在github上:081K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6%4L8%4S2A6K9s2g2S2L8X3&6A6M7$3A6S2i4K6u0r3b7X3q4F1k6$3y4D9k6b7`.`.
第二代加固使用的是内存动态加载Dex,也就是不落地加载,可以将Dex加密放在Apk中,在内存中实现解密

测试可以支持Andorid 4.4-8.1版本,目前还不能支持重写了Application类 的Apk


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

最后于 2018-3-20 09:07 被寒号鸟二代编辑 ,原因:
收藏
免费 2
支持
分享
最新回复 (18)
雪    币: 3712
活跃值: (1731)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
2
感谢楼主分享
2018-3-20 09:14
0
雪    币: 25
活跃值: (1561)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
3
看了下像是乐固的方案
2018-3-20 09:42
0
雪    币: 172
活跃值: (1659)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
4
繁华皆成空 [em_13]看了下像是乐固的方案
方案二是参考的乐固,方案一好像是最快的方案
2018-3-20 09:48
0
雪    币: 878
活跃值: (496)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
内存加载,  8开始有InMemoryDexClassLoader可用;  如果采用HOOK方案,  可以考虑更底层的函数;  至于方案一的cookie联系,  可以考虑加载虚dex然后替换成真实的cookie返回
2018-3-20 23:43
0
雪    币: 3549
活跃值: (951)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
6
感谢楼主分享
2018-3-22 09:18
0
雪    币: 102
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
楼主在吗?  你的代码编译通过不了?
2018-3-22 11:07
0
雪    币: 172
活跃值: (1659)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
8
猥琐菜鸟 楼主在吗? 你的代码编译通过不了?
我用的ndk-r14b  编译的
2018-3-22 11:59
0
雪    币: 102
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
4.4.2  系统会奔溃,能请教楼主吗?
2018-3-23 16:47
0
雪    币: 116
活跃值: (400)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
10
       if(!g_isArt){
               jint  mCookie=mem_loadDex_dvm(env,(char*)szDexPath);
               LOGD("[+]Dalvik  dex  cookie  :0x%x",  mCookie);
               cookie_field  =  env->GetFieldID(DexFileClass,  "mCookie",  "I");
               //replace  cookie
               env->SetIntField(mini_dex_obj,  cookie_field,  mCookie);
               make_dex_elements(env,  classLoader,  mini_dex_obj);
       }
添加make_dex_elements(env,  classLoader,  mini_dex_obj);
elements4.x忘了设置,这样dex当与没加载
2018-3-23 17:56
0
雪    币: 102
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
lpcdma if(!g_isArt){ jint mCookie=mem_loadDex_dvm(env,(char*)szDexPath); LOGD("[+]Dalvik dex co ...
谢谢大神,学习ing
2018-3-23 18:39
0
雪    币: 1
活跃值: (873)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
还不支持重写了  Application  类的  apk,怎样能支持
2018-3-24 11:13
0
雪    币: 6818
活跃值: (153)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
2018-4-1 22:33
0
雪    币: 76
活跃值: (70)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
rrrfff 内存加载, 8开始有InMemoryDexClassLoader可用; 如果采用HOOK方案, 可以考虑更底层的函数; 至于方案一的cookie联系, 可以考虑加载虚dex然后替换成真实的cookie ...
兄台说的好像是数字加固方案
2018-4-13 23:42
0
雪    币: 76
活跃值: (70)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
水一贴,楼主么么哒
最后于 2018-4-16 16:36 被yaneng编辑 ,原因:
2018-4-16 16:32
0
雪    币: 2214
活跃值: (388)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
感谢楼主分享,显示已编译结束,一直处在Building resources中,等了好久了,还没有结束,不知是什么原因。
2018-7-6 11:41
0
雪    币: 4392
活跃值: (881)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
针对于多个dex文件的加固,楼主是否比较好的方法
2019-2-15 10:45
0
雪    币: 419
活跃值: (845)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
18
模拟dlopen和dlsym的逻辑,绕过了系统将阻止应用动态链接非公开 NDK库的限制。参考:09dK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6@1k6h3y4Z5i4K6u0W2L8h3g2A6N6s2g2S2L8W2)9J5k6h3y4G2L8g2)9J5c8U0t1H3x3e0N6Q4x3V1j5H3y4#2)9J5c8U0t1H3i4K6u0r3j5h3&6V1M7X3!0A6k6q4)9J5k6s2u0W2L8h3!0@1k6g2)9J5k6r3c8W2j5Y4g2Y4i4K6u0W2K9s2c8E0L8l9`.`.
2020-4-10 00:15
0
雪    币: 163
活跃值: (1874)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
19
嗯,看源码dalvik,那个mini_dex_obj没有初始化,为null.
2020-7-23 14:41
0
游客
登录 | 注册 方可回帖
返回