能力值:
( LV3,RANK:20 )
|
-
-
2 楼
各有利弊,这也是有些厂不用加固的原因, 换种方式提高安全性,比如核心加密放到so里,然后加固so,可能会省些内存
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
第二点理解有误。解密dex时申请二内存,一是被解密dex存放内存,二是解密后dex的存放内存。第一块内存解密后会释放掉,第二块内存基本等于你加密前dex大小。也就是说你加不加密,第二块内存都不会有什么变化
最后于 2024-6-21 09:34
被tDasm编辑
,原因:
|
能力值:
( LV1,RANK:0 )
|
-
-
4 楼
暗月隐落
各有利弊,这也是有些厂不用加固的原因,
换种方式提高安全性,比如核心加密放到so里,然后加固so,可能会省些内存
分析过najia的,他们把dex数据隐藏在shell的一个class里,但是不清楚如何加载dex的,他们的内存基本和未加固之前是差不多的,不知道是有什么方法
|
能力值:
( LV1,RANK:0 )
|
-
-
5 楼
tDasm
第二点理解有误。解密dex时申请二内存,一是被解密dex存放内存,二是解密后dex的存放内存。第一块内存解密后会释放掉,第二块内存基本等于你加密前dex大小。也就是说你加不加密,第二块内存都不会有什么 ...
是的,解密申请的内存会释放掉,但是加载dex的内存基本全量加载到内存中了。这个和系统加载dex是否有区别,是否和oat有关,有什么优化方向吗,本人尝试过的: 1、shell dex在解密完之后就没用了,尝试过ClassLoader去掉shell dex并close DexFile来释放内存,但未成功,系统有打印日志显示关闭失败,分析源码后,应该是还有class被引用导致关不掉,后面就不知道怎么处理了 2、将apk mmap到内存的通过madvise MADV_DONTNEED去释放内存,无果
|
|
|