能力值:
( LV4,RANK:50 )
|
-
-
2 楼
恐怕是你修复输入表有问题:
1.OD执行到4011CB处用LordPE Full DUMP;
2.ImportREC加载,OEP填:11CB,RAV填:30FC,Size填100,获取输入表;
如果有无效指针,cut掉,点修复保存脱壳后的文件。
3.运行正常。
或者更简单的方法:
OD执行到4011CB处语句上右键直接DUMP,选第二种方式重建输入表,保存,运行正常。
|
能力值:
( LV9,RANK:490 )
|
-
-
3 楼
是不是Overlay没处理啊?
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
Overlay 需要怎么处理
|
能力值:
( LV9,RANK:490 )
|
-
-
5 楼
我看了一下,我的peid查没有overlay
2楼的方法可行
|
能力值:
( LV9,RANK:230 )
|
-
-
6 楼
这是一个很典型的DUMP工具选择的问题。CHAN兄水平还是满高的,你的困惑就在于对之相应的理论知识理解不透彻,尤其是其间的细微差别一知半解。
OllyDump是一个OD的插件,基本上的原理和功能差不多。但是,正是由于它是OD的插件,它能通过OD获得更多的权限。在前面的例子中我们能看到,对于内存属性的问题,依靠OD强大的功能OllyDump能dump下一些LordPE所不能dump的进程。而它的“获取EIP值作为OEP”也是一个亮点。
方式1:从内存镜像中获取PE信息。
方式2:直接从磁盘获取PE Head的默认选项,也就是说基本上他的PE Head都是从磁盘获得的。
同时,在观察区域属性和获取其他的区域数据的时候LordPE的dump region功能非常强大,这点是OllyDump不足的。在以壳解壳的技巧中,LordPE的此功能将是决定意义的。但是它的不足前面也提到过,有些进程在权限上不可读的时候,将是它致命的伤!也有方式1和方式2的两种选择方法。
OD执行到4011CB处,ALT+M,注意看数据块的分布位置:
00401000--00406000处
77E6000---7FFE00000处
明白了没有?出现了两个区域数据。后来的程序中会出现第三个区域数据。OD的DUMP插件只能对一个区域数据DUMP,一个以上区域数据只能用LordPE的dump region。
为什么OD的方式2能成功呢?
因为OD的方式2直接从磁盘获取PE Head资料,并不是从内存镜像中获取PE资料。就没有多个区域数据的困扰了。OD跟踪的目的是获取OEP的位置。
你在使用IMPORT REC时,点自动查找IAT时,将RVA的大小改为1000,再点自动查找IAT时,仍为20(有的机器是28)。为什么?我没有细跟,最近很忙。但直觉是此处的IAT被壳解压缩时破坏了的,只含有部分信息。
需要手工用OD跟踪找到壳放在另一处完整的IAT,再手工修复。
简便的方法是用OD找到的OEP地址,用方式2 DUMP。
不知道我是否回答了你心中的迷茫?
|
能力值:
( LV9,RANK:490 )
|
-
-
7 楼
再次佩服楼上的。。。。。
只要是他知道的,他研究的都很仔细。。。
严谨的学风,向你学习。。
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
6楼说的好啊,原来只知道这么做但不知道为什么这么做,现在明白一点点了
单步走跟到OEP了,修复RVA 3100 大小30 内存法不知道怎么脱的????
|
|
|