zzzyyyy999 发表于 2008-1-4 09:19:08

关于脱UPX壳,请教个问题[已解决]

我看了"PYG论坛3周年庆典官方大礼包 礼物一"里的教程--第五课,泰来文件切割合并工具被加了UPX壳,我无法脱掉.

经PEID检测,结果为:UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo

本想用Quick Unpack脱的,我输入OEP:004016AC,结果弹出对话框提示:An invalid argument was encountered.

09:23:17 - Opened 复件 泰来文件切割合并工具.exe
   Quick self analyze.... unknown
   PESniffer EP Scan: UPX v0.89.6 - v1.02 / v1.05 - v1.22
   PEiD scanning... UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo
09:23:24 - Unpacked file hasn`t been created
09:23:24 - Done


后来用第四课教的手动脱壳的方法,还是不行,我无法修复.

00417FF0 泰> $60                pushad            :壳头
00417FF1    .BE 00104100       mov esi,泰来文件切割合并工具.00411000
00417FF6    .8DBE 0000FFFF   lea edi,dword ptr ds:[esi+FFFF000>
00417FFC    .57                push edi
00417FFD    .83CD FF         or ebp,FFFFFFFF
00418000    .EB 10             jmp short 泰来文件切割合并工具.00418012
00418002       90                nop
00418003       90                nop
00418004       90                nop
00418005       90                nop
00418006       90                nop
00418007       90                nop
00418008    >8A06            mov al,byte ptr ds:
0041800A    .46                inc esi
0041800B    .8807            mov byte ptr ds:,al
0041800D    .47                inc edi
0041800E    >01DB            add ebx,ebx
00418010    .75 07             jnz short 泰来文件切割合并工具.00418019
00418012    >8B1E            mov ebx,dword ptr ds:
00418014    .83EE FC         sub esi,-4
00418017    .11DB            adc ebx,ebx
00418019    >^ 72 ED             jb short 泰来文件切割合并工具.00418008
0041801B    .B8 01000000       mov eax,1
00418020    >01DB            add ebx,ebx
00418022    .75 07             jnz short 泰来文件切割合并工具.0041802B
00418024    .8B1E            mov ebx,dword ptr ds:
00418026    .83EE FC         sub esi,-4
00418029    .11DB            adc ebx,ebx
0041802B    >11C0            adc eax,eax
0041802D    .01DB            add ebx,ebx
0041802F    .^ 73 EF             jnb short 泰来文件切割合并工具.00418020         ;跳了往下点按F4
00418031    .75 09             jnz short 泰来文件切割合并工具.0041803C
00418033    .8B1E            mov ebx,dword ptr ds:
00418035    .83EE FC         sub esi,-4
00418038    .11DB            adc ebx,ebx
0041803A    .^ 73 E4             jnb short 泰来文件切割合并工具.00418020
0041803C    >31C9            xor ecx,ecx
0041803E    .83E8 03         sub eax,3
00418041    .72 0D             jb short 泰来文件切割合并工具.00418050
00418043    .C1E0 08         shl eax,8
00418046    .8A06            mov al,byte ptr ds:
00418048    .46                inc esi
00418049    .83F0 FF         xor eax,FFFFFFFF
0041804C    .74 74             je short 泰来文件切割合并工具.004180C2
0041804E    .89C5            mov ebp,eax
00418050    >01DB            add ebx,ebx
00418052    .75 07             jnz short 泰来文件切割合并工具.0041805B
00418054    .8B1E            mov ebx,dword ptr ds:
00418056    .83EE FC         sub esi,-4
00418059    .11DB            adc ebx,ebx
0041805B    >11C9            adc ecx,ecx
0041805D    .01DB            add ebx,ebx
0041805F    .75 07             jnz short 泰来文件切割合并工具.00418068
00418061    .8B1E            mov ebx,dword ptr ds:
00418063    .83EE FC         sub esi,-4
00418066    .11DB            adc ebx,ebx
00418068    >11C9            adc ecx,ecx
0041806A    .75 20             jnz short 泰来文件切割合并工具.0041808C
0041806C    .41                inc ecx
0041806D    >01DB            add ebx,ebx
0041806F    .75 07             jnz short 泰来文件切割合并工具.00418078
00418071    .8B1E            mov ebx,dword ptr ds:
00418073    .83EE FC         sub esi,-4
00418076    .11DB            adc ebx,ebx
00418078    >11C9            adc ecx,ecx
0041807A    .01DB            add ebx,ebx
0041807C    .^ 73 EF             jnb short 泰来文件切割合并工具.0041806D         ;跳了往下点按F4
0041807E    .75 09             jnz short 泰来文件切割合并工具.00418089
00418080    .8B1E            mov ebx,dword ptr ds:
00418082    .83EE FC         sub esi,-4
00418085    .11DB            adc ebx,ebx
00418087    .^ 73 E4             jnb short 泰来文件切割合并工具.0041806D
00418089    >83C1 02         add ecx,2
0041808C    >81FD 00F3FFFF   cmp ebp,-0D00
00418092    .83D1 01         adc ecx,1
00418095    .8D142F            lea edx,dword ptr ds:
00418098    .83FD FC         cmp ebp,-4
0041809B    .76 0F             jbe short 泰来文件切割合并工具.004180AC
0041809D    >8A02            mov al,byte ptr ds:
0041809F    .42                inc edx
004180A0    .8807            mov byte ptr ds:,al
004180A2    .47                inc edi
004180A3    .49                dec ecx
004180A4    .^ 75 F7             jnz short 泰来文件切割合并工具.0041809D         ;跳了往下点
004180A6    .^ E9 63FFFFFF       jmp 泰来文件切割合并工具.0041800E               ;跳了往下点
004180AB       90                nop                               ;空往下点按F4
004180AC    >8B02            mov eax,dword ptr ds:
004180AE    .83C2 04         add edx,4
004180B1    .8907            mov dword ptr ds:,eax
004180B3    .83C7 04         add edi,4
004180B6    .83E9 04         sub ecx,4
004180B9    .^ 77 F1             ja short 泰来文件切割合并工具.004180AC            ;跳了往下点按F4
004180BB    .01CF            add edi,ecx
004180BD <> .^ E9 4CFFFFFF       jmp 泰来文件切割合并工具.0041800E               ;跳了往下点按F4
004180C2    >5E                pop esi
004180C3    .89F7            mov edi,esi
004180C5    .B9 4C000000       mov ecx,4C
004180CA    >8A07            mov al,byte ptr ds:
004180CC    .47                inc edi
004180CD    .2C E8             sub al,0E8
004180CF    >3C 01             cmp al,1
004180D1    .^ 77 F7             ja short 泰来文件切割合并工具.004180CA            ;跳了往下点按F4
004180D3    .803F 02         cmp byte ptr ds:,2
004180D6    .^ 75 F2             jnz short 泰来文件切割合并工具.004180CA         ;跳了往下点按F4
004180D8    .8B07            mov eax,dword ptr ds:
004180DA    .8A5F 04         mov bl,byte ptr ds:
004180DD    .66:C1E8 08      shr ax,8
004180E1    .C1C0 10         rol eax,10
004180E4    .86C4            xchg ah,al
004180E6    .29F8            sub eax,edi
004180E8    .80EB E8         sub bl,0E8
004180EB    .01F0            add eax,esi
004180ED    .8907            mov dword ptr ds:,eax
004180EF    .83C7 05         add edi,5
004180F2    .89D8            mov eax,ebx
004180F4    .^ E2 D9             loopd short 泰来文件切割合并工具.004180CF         ;跳了往下点按F4
004180F6    .8DBE 00500100   lea edi,dword ptr ds:
004180FC    >8B07            mov eax,dword ptr ds:
004180FE    .09C0            or eax,eax
00418100    .74 45             je short 泰来文件切割合并工具.00418147
00418102    .8B5F 04         mov ebx,dword ptr ds:
00418105    .8D8430 44910100   lea eax,dword ptr ds:[eax+esi+191>
0041810C    .01F3            add ebx,esi
0041810E    .50                push eax
0041810F    .83C7 08         add edi,8
00418112    .FF96 80910100   call dword ptr ds:
00418118    .95                xchg eax,ebp
00418119    >8A07            mov al,byte ptr ds:
0041811B    .47                inc edi
0041811C    .08C0            or al,al
0041811E    .^ 74 DC             je short 泰来文件切割合并工具.004180FC            ;跳了往下点按F4
00418120    .89F9            mov ecx,edi
00418122    .79 07             jns short 泰来文件切割合并工具.0041812B
00418124    .0FB707            movzx eax,word ptr ds:
00418127    .47                inc edi
00418128    .50                push eax
00418129    .47                inc edi
0041812A       B9                db B9
0041812B    .57                push edi
0041812C    .48                dec eax
0041812D    .F2:AE             repne scas byte ptr es:
0041812F    .55                push ebp
00418130    .FF96 84910100   call dword ptr ds:
00418136    .09C0            or eax,eax
00418138    .74 07             je short 泰来文件切割合并工具.00418141
0041813A    .8903            mov dword ptr ds:,eax
0041813C    .83C3 04         add ebx,4
0041813F    .^ EB D8             jmp short 泰来文件切割合并工具.00418119         ;不理会
00418141    >FF96 88910100   call dword ptr ds:
00418147    >61                popad                           ;壳尾..下断后按F9运行断在这里
00418148    .- E9 5F95FEFF       jmp 泰来文件切割合并工具.004016AC          ;OEP

再按F8两次就是JMP 跳,来到这里
004016AC   68 C08D4000         push 泰来文件切割合并工具.00408DC0                ; OEP
004016B1   E8 F0FFFFFF         call 泰来文件切割合并工具.004016A6                ; jmp to MSVBVM60.ThunRTMain

然后我用lordPE,进行DUMP,不能运行.接着用ImportREC修复.OEP输入000016AC,点IAT AutoSearch,确定,然后,size输入00001000,点Get Imports,结果上面的框子,显示N多-------valid:NO.

请问,我该如何修复啊?

[ 本帖最后由 zzzyyyy999 于 2008-1-4 13:25 编辑 ]

vecri 发表于 2008-1-4 09:31:22

OD载入, Ctrl+F查找命令, 输入popad
F4运行至popad, jmp到OEP004016AC
点右键用OllyDump脱壳调试进程, 另存运行,成功~~

zzzyyyy999 发表于 2008-1-4 09:43:57

原帖由 vecri 于 2008-1-4 09:31 发表 https://www.chinapyg.com/images/common/back.gif
OD载入, Ctrl+F查找命令, 输入popad
F4运行至popad, jmp到OEP004016AC
点右键用OllyDump脱壳调试进程, 另存运行,成功~~

谢谢,按你的方法,OK.

但是按我的方法,有办法修复吗?

zzzyyyy999 发表于 2008-1-4 10:18:06

哎,按上面的方法,是脱掉了,但是不能运行,提示:1.exe遇到问题需要关闭.我们对此引起的不便表示抱歉.

1.exe是脱壳后的名字.怎么办啊?

vecri 发表于 2008-1-4 11:49:56

方法二:
OD载入, Ctrl+F查找命令, 输入popad
F4运行至popad, jmp到OEP004016AC, 暂停在OEP处
用LordPE Dump进程
运行ImportRec, OED处填写16AC, IAT自动搜索, 获取输入信息,全部OK, 修复抓取文件, 得到dumped_.exe, 运行OK

zzzyyyy999 发表于 2008-1-4 13:24:03

原帖由 vecri 于 2008-1-4 11:49 发表 https://www.chinapyg.com/images/common/back.gif
方法二:
OD载入, Ctrl+F查找命令, 输入popad
F4运行至popad, jmp到OEP004016AC, 暂停在OEP处
用LordPE Dump进程
运行ImportRec, OED处填写16AC, IAT自动搜索, 获取输入信息,全部OK, 修复抓取文件, 得到dumped_.e ...

原来SIZE默认就OK了,谢谢提醒.谢谢
页: [1]
查看完整版本: 关于脱UPX壳,请教个问题[已解决]