首页
社区
课程
招聘
[求助]关于一个gtalk脱壳的问题,求助高手
发表于: 2009-7-29 13:22 1702

[求助]关于一个gtalk脱壳的问题,求助高手

2009-7-29 13:22
1702
本人小菜,因为公司对gtalk作了封杀,所以想做个免杀的gtalk.
先是发现gtalk用upx加的壳,用了一些脱壳的软件不行,就手工脱。
用ESP定律 :找到了oep入口。

0043857A   .  8903          mov     dword ptr [ebx], eax
0043857C   .  83C3 04       add     ebx, 4
0043857F   .^ EB D8         jmp     short 00438559
00438581   >  FF96 20E30300 call    dword ptr [esi+3E320]
00438587   >  61            popad
00438588   .- E9 4CADFCFF   jmp     004032D9     <--oep入口
0043858D      00            db      00
0043858E      00            db      00

004032D9 >  81EC 7C010000   sub     esp, 17C     <--oep
004032DF    53              push    ebx
004032E0    55              push    ebp
004032E1    56              push    esi
004032E2    33F6            xor     esi, esi
004032E4    57              push    edi
然后从此处dump下来后,用ImportREC载入调试中的程序,到入口点后,填上oep地址和RVA地址,大小,顺利找到很多IAT函数,用Fix dump 来选dump下来的文件。ok.
可是发现修复的 dump文件还是不能运行,用od载入,发现 ,函数命都是对的了,可问题是原程序在oep处的时候,堆栈中保存了一些数据,好像version.dll什么函数的地址,然后oep开始时的
81EC 7C010000   sub     esp, 17C 指令会往上跳到那上面,然后把函数地址改变压栈什么的,而我的dump文件中的堆栈,一开始那些地方要么是杂乱数据要么是空的,所以跳过去就不匹配,最后出错说安装文件不完全....
我想请问,这类问题是怎么解决阿,是我没有dump完全吗?堆栈的也要dump下来,还是这程序比较特别的处理,应该如何解决阿,谢谢拉.....

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//