首页
社区
课程
招聘
[求助]UPX脱壳请教
发表于: 2007-4-28 14:03 7570

[求助]UPX脱壳请教

2007-4-28 14:03
7570
加密与解密配套光盘练习Acid Bytes的CrackMe#4.exe

UPX 0.89.6 - 1.02 / 1.05 - 1.24 (Delphi) stub -> Markus & Laszlo

od载入,
1.bp GetProcAddress
2.取消断点,Ctrl+F9
3.F8,到下面
0046F805    09C0            OR EAX,EAX                                 ; ntdll.RtlDeleteCriticalSection
0046F807    74 07           JE SHORT CrackMe#.0046F810
0046F809    8903            MOV DWORD PTR DS:[EBX],EAX
0046F80B    83C3 04         ADD EBX,4
0046F80E  ^ EB E1           JMP SHORT CrackMe#.0046F7F1
0046F810    FF96 64010700   CALL DWORD PTR DS:[ESI+70164]
0046F816    61              POPAD
0046F817  ^ E9 348AFEFF     JMP CrackMe#.00458250
0046F81C    34 F8           XOR AL,0F8
0046F81E    46              INC ESI
0046F81F    0044F8 46       ADD BYTE PTR DS:[EAX+EDI*8+46],AL
0046F823    00D0            ADD AL,DL
0046F825    B4 45           MOV AH,45

找到jmp CrackMe#.00458250
可是没有00458250啊,怎么办啊?

0045824B    0000            ADD BYTE PTR DS:[EAX],AL
0045824D    8145 00 558BEC8>ADD DWORD PTR SS:[EBP],83EC8B55
00458254    C4F4            LES ESI,ESP                                ; 非法使用寄存器
00458256    B8 28814500     MOV EAX,CrackMe#.00458128
0045825B    E8 84D9FAFF     CALL CrackMe#.00405BE4
00458260    A1 98A54500     MOV EAX,DWORD PTR DS:[45A598]
00458265    8B00            MOV EAX,DWORD PTR DS:[EAX]
00458267    E8 D47CFEFF     CALL CrackMe#.0043FF40
0045826C    A1 98A54500     MOV EAX,DWORD PTR DS:[45A598]
00458271    8B00            MOV EAX,DWORD PTR DS:[EAX]
00458273    BA B0824500     MOV EDX,CrackMe#.004582B0                  ; ASCII "Official CFF CrackMe #4"

在00458254下断点,F9,出现异常,如何解决啊?CFF CrackMe #3和CFF CrackMe #2两个都没问题的啊

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

收藏
免费 0
支持
分享
最新回复 (8)
雪    币: 221
活跃值: (55)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
0046F817 JMP后跳转到OEP,就可以直接DUMP了,然后用ImportREC FIX一下
2007-4-28 15:14
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
权限不够无法上传
2007-4-28 15:38
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
到这里了,7zip压缩的包
http://www.live-share.com/files/212483/CrackMe_4.7z.html
2007-4-28 15:44
0
雪    币: 221
活跃值: (55)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
F4到0046F817处
0046F7FF   . FF96 60010700  CALL DWORD PTR DS:[ESI+70160]
0046F805   . 09C0           OR EAX,EAX
0046F807   . 74 07          JE SHORT CrackMe#.0046F810
0046F809   . 8903           MOV DWORD PTR DS:[EBX],EAX
0046F80B   . 83C3 04        ADD EBX,4
0046F80E   .^EB E1          JMP SHORT CrackMe#.0046F7F1
0046F810   > FF96 64010700  CALL DWORD PTR DS:[ESI+70164]
0046F816   > 61             POPAD
0046F817   .^E9 348AFEFF    JMP CrackMe#.00458250
0046F81C     34F84600       DD CrackMe#.0046F834
0046F820     44F84600       DD CrackMe#.0046F844
0046F824     D0B44500       DD CrackMe#.0045B4D0

再按一次F8后到这里

00458250   > 55             PUSH EBP
00458251   . 8BEC           MOV EBP,ESP
00458253   ? 83C4 F4        ADD ESP,-0C
00458256   ? B8 28814500    MOV EAX,CrackMe#.00458128
0045825B   ? E8 84D9FAFF    CALL CrackMe#.00405BE4
00458260   ? A1 98A54500    MOV EAX,DWORD PTR DS:[45A598]
00458265   ? 8B00           MOV EAX,DWORD PTR DS:[EAX]
00458267   ? E8 D47CFEFF    CALL CrackMe#.0043FF40
0045826C   . A1 98A54500    MOV EAX,DWORD PTR DS:[45A598]
00458271   ? 8B00           MOV EAX,DWORD PTR DS:[EAX]

直接dump,我用的是LordPE.记住入口地址是00458250
打开ImportREC,载入Crack4
在OEP处填入00458250-基址(400000)=00058250
点击IAT Auto Search,点击Get Import 来获取导入表,查看没有Import的错误,这里貌似没有。直接点击Fix Dump,指向刚刚dump下来的dump.exe ,到此为止就差不多了。
用OD载入_Dump.exe看到如下地址,并且能够正常运行。
00458250 > $ 55             PUSH EBP
00458251   . 8BEC           MOV EBP,ESP
00458253   . 83C4 F4        ADD ESP,-0C
00458256   . B8 28814500    MOV EAX,dumped_.00458128
0045825B   . E8 84D9FAFF    CALL dumped_.00405BE4
00458260   . A1 98A54500    MOV EAX,DWORD PTR DS:[45A598]
00458265   . 8B00           MOV EAX,DWORD PTR DS:[EAX]
00458267   . E8 D47CFEFF    CALL dumped_.0043FF40
0045826C   . A1 98A54500    MOV EAX,DWORD PTR DS:[45A598]
00458271   . 8B00           MOV EAX,DWORD PTR DS:[EAX]
00458273   . BA B0824500    MOV EDX,dumped_.004582B0                 ;  ASCII "Official CFF CrackMe #4"
00458278   . E8 FF78FEFF    CALL dumped_.0043FB7C

说这么多不知道对你有没有用,希望能够理解其中的原由。
2007-4-28 17:22
0
雪    币: 221
活跃值: (55)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
这里是我脱的,你看看吧
上传的附件:
2007-4-28 17:25
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
谢谢!
我到0046F817处下断点了
0046F817  ^ E9 348AFEFF     JMP CrackMe#.00458250
按f8到了下面
00458250   > 55             PUSH EBP
有00458250了,当拉一下垂直滚动条后00458250就没有了,不知道为什么,没管它直接用dollydump给脱了,就好了。
2007-4-30 23:12
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
我在OD里面怎么无论找到00458251还是00458250 ImportREC都说是找到OEP其它都正确,但是dump出来的文件有463k大小,你们应该是456k.就是运行出错。不知道是什么原因!!但是用LORDPE dump的是正确的。
2007-5-1 01:41
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
楼主似乎脱壳在刻意的找什么东西,最好不要这样!只是小弟的一点意见!还是把他弄明白最好!不要看了一点别人的东西就去找那个地址!有的软件是不一样的!
5楼兄弟已经给了你答案了!
2007-5-2 09:42
0
游客
登录 | 注册 方可回帖
返回
//