首页
社区
课程
招聘
[求助]内存防dump
发表于: 2016-8-16 15:42 8889

[求助]内存防dump

2016-8-16 15:42
8889
1、内存防dump的方法一般有什么。
2、一个思路是对dex文件中的code区域加密,当对应的函数执行的时候再对code进行解密。这样可以防止dex在内存中以连续地址存放。当加载code对应类的时候,需要对code的格式进行校验,因此在加载类的时候就需要解密code,问下应该hook哪个函数进行code的解密。
3、还有一个思路是将DexCode与Dex分离,然后重新计算DexCode与Dex起始地址的偏移,将新的DexCode的偏移更新到codeOff字段。
Struct DexMethod{
    u4 methodIdx;
    u4 accessFlags;
    u4 codeOff;
};
这里codeOff实际上是uleb128类型的,长度为1到5字节不等。新codeOff的值可能与原有的codeOff的位数不一样,也没法对该值进行正确的覆盖。
或者有没有更好的内存防dump的方法。求助大神。

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 433
活跃值: (1930)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
2
不知道你说的是不是pc端,反正pc端无解
2016-8-17 00:14
0
雪    币: 67
活跃值: (53)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
3
说一个思路吧,用prctl来保护普通的用户空间的dump。至于DEX CODE,你不重写解释器或做VMP,还是分分钟DUMP的。执行时解密也没用,可以枚举类来初始化的。
2016-8-17 13:33
0
雪    币: 3
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
就是普通的手机端安卓APK防内存dump方面的,有没有比较好的隐藏code的方法。谢谢。
2016-8-17 16:22
0
雪    币: 3
活跃值: (16)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
重写解释器?这个解释器可以参考DVM来写吗?另外android的VMP壳性能啊兼容性啊会不会不太行呢。。。小女子表示不懂大神快回我
2016-8-17 20:48
0
雪    币: 303
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
我是来回最后一句的。
2016-8-17 20:49
0
雪    币: 25
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
inotify监控maps和mem,dd?好像也没什么好办法。
2016-8-21 06:08
0
雪    币: 67
活跃值: (53)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
8
目前主流加固:
1)执行前恢复
2)非连续
3)无法通过Offset+size来Dump
你如果要脱壳,就重组DEX,因为内存中没有完整的解密后DEX存在。
如果要加固,就自己逆向一下梆梆的SO,看雪上也有分析。
纯黑盒加固无法将保护流程和业务代码密切关联,目前强度都不高。
2016-8-24 14:25
0
游客
登录 | 注册 方可回帖
返回
//