首页
社区
课程
招聘
[求助]在脱ASPACK壳的一个问题,找不到输入表,请各大虾指点
发表于: 2007-7-31 11:39 4958

[求助]在脱ASPACK壳的一个问题,找不到输入表,请各大虾指点

2007-7-31 11:39
4958

我在学习破一个dll 加aspack 的壳是时候,我按照前辈门的方法找到了OEP ,也找到了重定位程序。但是怎么也找不到输入表。我把我的步骤写在下面,请给我前辈指点一下,是不是我的OEP找的不对,还是其他地方除了问题。
1。用OD加载DLL, 搜索 sub ecx,8
                                  shr ecx,1
找到地址重定位程序,并得到地址重定位的大小。
009C81C8                                   8785 35050000            xchg dword ptr ss:[ebp+535],eax
009C81CE                                   8B95 22040000            mov edx,dword ptr ss:[ebp+422]
009C81D4                                   8B85 2D050000            mov eax,dword ptr ss:[ebp+52D]
009C81DA                                   2BD0                     sub edx,eax
009C81DC                                   74 79                    je short DesignDl.009C8257
009C81DE                                   8BC2                     mov eax,edx
009C81E0                                   C1E8 10                  shr eax,10
009C81E3                                   33DB                     xor ebx,ebx
009C81E5                                   8BB5 39050000            mov esi,dword ptr ss:[ebp+539]
009C81EB                                   03B5 22040000            add esi,dword ptr ss:[ebp+422]
009C81F1                                   833E 00                  cmp dword ptr ds:[esi],0
009C81F4                                   74 61                    je short DesignDl.009C8257
009C81F6                                   8B4E 04                  mov ecx,dword ptr ds:[esi+4]
009C81F9                                   83E9 08                  sub ecx,8
009C81FC                                   D1E9                     shr ecx,1
009C81FE                                   8B3E                     mov edi,dword ptr ds:[esi]
009C8200                                   03BD 22040000            add edi,dword ptr ss:[ebp+422]
009C8206                                   83C6 08                  add esi,8
009C8209                                   66:8B1E                  mov bx,word ptr ds:[esi]
009C820C                                   C1EB 0C                  shr ebx,0C
009C820F                                   83FB 01                  cmp ebx,1
009C8212                                   74 0C                    je short DesignDl.009C8220
009C8214                                   83FB 02                  cmp ebx,2
009C8217                                   74 16                    je short DesignDl.009C822F
009C8219                                   83FB 03                  cmp ebx,3
009C821C                                   74 20                    je short DesignDl.009C823E
009C821E                                   EB 2C                    jmp short DesignDl.009C824C
009C8220                                   66:8B1E                  mov bx,word ptr ds:[esi]
009C8223                                   81E3 FF0F0000            and ebx,0FFF
009C8229                                   66:01041F                add word ptr ds:[edi+ebx],ax
009C822D                                   EB 1D                    jmp short DesignDl.009C824C
009C822F                                   66:8B1E                  mov bx,word ptr ds:[esi]
009C8232                                   81E3 FF0F0000            and ebx,0FFF
009C8238                                   66:01141F                add word ptr ds:[edi+ebx],dx
009C823C                                   EB 0E                    jmp short DesignDl.009C824C
009C823E                                   66:8B1E                  mov bx,word ptr ds:[esi]
009C8241                                   81E3 FF0F0000            and ebx,0FFF
009C8247                                   01141F                   add dword ptr ds:[edi+ebx],edx
009C824A                                   EB 00                    jmp short DesignDl.009C824C
009C824C                                   66:830E FF               or word ptr ds:[esi],0FFFF
009C8250                                   83C6 02                  add esi,2
009C8253                                 ^ E2 B4                    loopd short DesignDl.009C8209
009C8255                                 ^ EB 9A                    jmp short DesignDl.009C81F1
009C8257                                   8B95 22040000            mov edx,dword ptr ss:[ebp+422]

地址重定位表的大小=9ae640-99d000=11640

2.搜索 61,75
程序跳到
009C83AF                                   61                       popad
009C83B0                                   75 08                    jnz short DesignDl.009C83BA
009C83B2                                   B8 01000000              mov eax,1
009C83B7                                   C2 0C00                  retn 0C
009C83BA                                   68 00000000              push 0
009C83BF                                   C3                       retn      //跳到OEP

OEP 出代码
00992AE0                                   55                       push ebp
00992AE1                                   8BEC                     mov ebp,esp
00992AE3                                   83C4 B4                  add esp,-4C
00992AE6                                   B8 48289900              mov eax,DesignDl.00992848
00992AEB                                   E8 7846EEFF              call DesignDl.00877168
00992AF0                                   E8 A7B5FFFF              call DesignDl.0098E09C
00992AF5                                   E8 D210EEFF              call DesignDl.00873BCC
00992AFA                                   8BC0                     mov eax,eax

我发现在此处滚动窗口屏幕就代码就变化
是不是OPE找的不对啊,
3。按照前辈介绍的方法找输入表
   任意跳一个call [XXXX] 看XXXX的内存
   我发现找到的都不连续,为什么呢?
   各位大侠能指点一下么?
   我找的是999168到9993c7 总共 214 H  大小。
我上传了附件。

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

上传的附件:
收藏
免费 0
支持
分享
最新回复 (8)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
有人可以指点一下么?
2007-7-31 11:52
0
雪    币: 211
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
009C8001 >  60              PUSHAD                    OD载入停在这里
009C8002    E8 03000000     CALL DesignDl.009C800A
009C8007  - E9 EB045D45     JMP 45F984F7

009C83AF    61              POPAD
009C83B0    75 08           JNZ SHORT DesignDl.009C83BA
009C83B2    B8 01000000     MOV EAX,1
009C83B7    C2 0C00         RETN 0C
009C83BA    68 E02A9900     PUSH DesignDl.00992AE0
009C83BF    C3              RETN                   到OEP

00992AE0    55              PUSH EBP               OEP
00992AE1    8BEC            MOV EBP,ESP
00992AE3    83C4 B4         ADD ESP,-4C
00992AE6    B8 48289900     MOV EAX,DesignDl.00992848
00992AEB    E8 7846EEFF     CALL DesignDl.00877168
00992AF0    E8 A7B5FFFF     CALL DesignDl.0098E09C
00992AF5    E8 D210EEFF     CALL DesignDl.00873BCC

脱壳时OEP修正为:592AE0
2007-7-31 13:19
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
楼上,请问你写到“脱壳时OEP修正为:592AE0 ”
这个592aE0是怎么来的,应该是 992aE0吧,
还有你怎么得到下来怎么得到输入表,因为我用JMP 或者call [XXXX]
方法看到地输入表是不断续地,为什么呢。。。
2007-7-31 16:08
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
真的没有高人能指点一下么?
2007-7-31 22:14
0
雪    币: 1505
能力值: (RANK:210 )
在线值:
发帖
回帖
粉丝
6
[QUOTE=黑帮大佬;339921]楼上,请问你写到“脱壳时OEP修正为:592AE0 ”
这个592aE0是怎么来的,应该是 992aE0吧,
还有你怎么得到下来怎么得到输入表,因为我用JMP 或者call [XXXX]
方法看到地输入表是不断续地,为什么呢。。。
:rolleye...[/QUOTE]

OEP是个偏移地址,992aE0是个绝对地址
应该是992aE0-400000吧
2007-7-31 22:21
0
雪    币: 1505
能力值: (RANK:210 )
在线值:
发帖
回帖
粉丝
7
不连续是说明是加密的吧
我也是从教程上看到的,请参看这个
http://bbs.pediy.com/showthread.php?threadid=23678

标 题: 答复
作 者: linex
时 间: 2006-04-12 08:00
详细信息:

1.请仔细看教程,输入表一般是连续的,中间用000000间隔,如果出现教程中的情况就是被加密了.
004BD174  7C82BB6D  kernel32.GetTickCount
004BD178  5358C7CE      //这个就是加密了.
004BD17C  7C82C07F  kernel32.GetVersion
004BD180  44481099     //这个也是加密了
004BD184  7C82B44F  kernel32.InterlockedDecrement
2.
00E775F2    3BF0            CMP ESI,EAX       //这里下断点.
00E775F4    75 5E           JNZ SHORT 00E77654            
00E775F6    EB 01           JMP SHORT 00E775F9

就可以跟踪了,这个程序有三个值,有的是四个值.
2007-7-31 22:28
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
首先太感谢楼上的提示了.我马上去研究一下,我也怀疑是加密了。。
中间的确是用4个字节的00 隔开,
还有你所说的

OEP是个偏移地址,992aE0是个绝对地址
应该是992aE0-400000吧“

谢谢提醒,你所说的400000应该是imagebase , 每个系统分配的这个值是不一样的,我的是
系统是xp 的,我查看了我的imagebase 是870000

EntryPoint =originaEntryPoint(OEP)- imagebase= 992ae0-870000=122ae0

所以你说的应该是EntryPoint ,
晕,,我也快搞糊涂了...
2007-8-1 11:18
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
艾,弄了一天,也看不出来什么东西来。。还有没有高人再知道一下了。。。。
2007-8-1 21:30
0
游客
登录 | 注册 方可回帖
返回
//