能力值:
(RANK:350 )
|
-
-
2 楼
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
好的,我就去看。不过老不老没关系啊,重点是那个UPX壳我脱不下来哦!我用UPX自动脱壳工具脱下来后,用PEID查看,显示什么也没发现,但是文件能正常执行,我想知道是什么原因啊?哪位能给我点提示!
|
能力值:
(RANK:350 )
|
-
-
4 楼
你按着2楼方法来,肯定能成功的。
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
谢谢你!这个里面的实例按照堆栈平衡原理很容易就脱下来了!不过我用同样的方法脱http://www.pediy.com/tutorial/chap8/Chap8-4-2.htm里面的却怎么也成功不了,修复IAT也不行,是不是这个实例的UPX是变种的?
|
能力值:
(RANK:350 )
|
-
-
6 楼
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
一下是我脱壳步骤:
用OD打开Notepad-upx.exe文件
到达这里:
0040DC70 > 60 PUSHAD
=>0040DC71 BE AEB04000 MOV ESI,Notepad-.0040B0AE
根据堆栈平衡原理,到达这里:
=>0040DDBF - E9 3C32FFFF JMP Notepad-.00401000
0040DDC4 0000 ADD BYTE PTR DS:[EAX],AL
0040DDC6 0000 ADD BYTE PTR DS:[EAX],AL
0040DDC8 0000 ADD BYTE PTR DS:[EAX],AL
F8到达入口:
=>00401000 55 PUSH EBP
00401001 8BEC MOV EBP,ESP
00401003 83EC 44 SUB ESP,44
dump内存生成aa.exe目标文件
运行ImportREC,在下拉列表框中选择Notepad-upx.exe进程
ImportREC中OEP显示为DC70,改为1000;
点击IAT AUTOSEARCH自动获取RVA和SIZE
点击点击“Get Import”按钮,成功找到各个DLL信息
单击"Fix Dump"按钮,选择aa.exe,生成的目标文件aa_.exe仍然不可用!
我的哪一步做的有问题吗?
值得注意的是我自己用UPX工具加个壳,用OD直接DUMP出来就对了!
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
跟cup有关系吗,我的是AMD64位的.
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
请再指导一下我!
|
能力值:
(RANK:350 )
|
-
-
10 楼
方法正确。将你脱壳好了的文件上传一份看看。
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
哦,知道怎么传附件了!
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
|
能力值:
(RANK:350 )
|
-
-
13 楼
你是用了Od插件OllyDump抓取内存镜像的吧?它的Rebuild Import不是很完善。
你直接用LordPE来抓取镜像,不会引入新的问题。
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
太谢谢你了!搞了我两天终于发现问题在哪里了!生成的文件可以执行了!但是用peid查看却是什么也没有发现,正常的应该是显示“Microsoft Visual C++ 6.0 SPx Method 1”吧,那么这样我算是脱壳成功了吗?
|
能力值:
(RANK:350 )
|
-
-
15 楼
算脱壳成功了。
因为此时脱壳后的程序还有外壳的代码在上面,所以peid查的不准的。
你可以手工优化他。具体参考ccedebuger的一篇教程。
平时UPX的壳尽量用upx自身脱。
|
能力值:
( LV2,RANK:10 )
|
-
-
16 楼
恩!真高兴弄出来了!我研究的信心倍增!
真的谢谢你!你好有耐心!
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
呵呵,楼主真幸福,有看雪老大手把手指导。
|
|
|