能力值:
( LV2,RANK:10 )
|
-
-
2 楼
开两个OD运行脱壳后未作修改的程序和一个作了破解修改的程序进行比较, 00431418 |. E8 AAEF0000 call dru.004403C7
0043141D |. 8945 A0 mov dword ptr ss:[ebp-60],eax
到这里两个程序就不一样了,
0012DE20 702228BC /CALL 到 CreateFileA 来自 wininet.702228B6
0012DE24 00169818 |FileName = "C:\Documents and Settings\ivorist\Local Settings\Temporary Internet Files\Content.IE5\index.dat"
0012DE28 C0000000 |Access = GENERIC_READ|GENERIC_WRITE
0012DE2C 00000003 |ShareMode = FILE_SHARE_READ|FILE_SHARE_WRITE
0012DE30 70C2A754 |pSecurity = SHLWAPI.70C2A754
0012DE34 00000004 |Mode = OPEN_ALWAYS
0012DE38 10000000 |Attributes = RANDOM_ACCESS
0012DE3C 00000000 \hTemplateFile = NULL
0012DE40 77E7278D KERNEL32.GetLastError
用bpx CreateFileA也没得出什么结果,想用prince的方法但没找到应该在哪里改文件地址
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
这个自校验不返回校验结果的
把自校验过程的第一行改成 RETN 就跳过了
|
能力值:
( LV12,RANK:660 )
|
-
-
5 楼
CreateFile之前会用GetModuleName之类的函数得到自身的EXE文件名称,得到后记下buffer地址,在合适的地方修改...
另外,这个方法不是真正的去校验,因为要依赖原文件,所以用来分析算法比较合适,没法爆破发布,不过自己用还是可以的...
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
最初由 shooter 发布 这个自校验不返回校验结果的
把自校验过程的第一行改成 RETN 就跳过了
这个办法可以吗?
但问题是我不知道除了十一处比较文件大小,还有哪里用了校验?
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
最初由 KuNgBiM 发布
1.检查你的脱壳修复问题,我放出的程序在我机器上,朋友机器上共6台机器上运行均没出现你所提出的问题!
2.修改后程序一定不要再加壳,除非你计算出加壳后的程序大小代码再作修改! ........ KuNgBiM,我又下了你作的那个补丁程序,其实打补丁后与你上次贴子中附的附件一样,结果也一样,运行后就会很快的自动退出。
其实我自己作的基本都是按照你的步骤下来的 不论我自己破解的还是你作的破解在我的机器上结果都一样,会自动退出!
我怀疑是不是与系统有关?你和你的朋友有用win2000的吗?我想可能与系统不同有关,我记得你用的是XP吧,我用的是2000,而我在一台win98的机器上就是不修改脱壳后的文件大小都可以正常运行,这个文件大小的校验好象在98中不起作用,我到现在也没想明白是怎么回事。
这里有用win2000的朋友请下载KuNgBiM发布的那个破解程序试试(KuNgBiM的贴子中有附件),应该不会是我的系统有问题吧 请说一下结果
为了这个程序花了几天时间了,真不甘心就这么放弃
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
最初由 prince 发布 CreateFile之前会用GetModuleName之类的函数得到自身的EXE文件名称,得到后记下buffer地址,在合适的地方修改... 另外,这个方法不是真正的去校验,因为要依赖原文件,所以用来分析算法比较合适,没法爆破发布,不过自己用还是可以的...
这个方法我一定要好好研究一下,发现自校验真的很讨厌,这方面的教材太少了
哪天成功应用上prince的偷天换日一定第一时间向大家报告
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
今天用同事的win2000的机子试了试,与我用的结果是一样的,不能运行。
KuNgBiM能不能再检查一下这个软件到底哪里还有自校验?而且竟然只对2000的系统起作用?!
其他高手如果有时间能不能也看看,帮我这个菜鸟讲讲,谢谢!
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
又用另一同事的winXP试过,也是一运行就自动退出(用的是KuNgBiM的破解补丁)
坛子里就没有人试过吗?希望能有人说一下结果!
|
能力值:
( LV9,RANK:410 )
|
-
-
11 楼
可能是因为下面的代码
00430B0B |. 5B pop ebx
00430B0C |. 74 07 je short cr.00430B15
00430B0E |. E8 1D000000 call cr.00430B30
00430B13 |. 5F pop edi
00430B14 |. C3 retn
00430B15 |> FF7424 08 push dword ptr ss:[esp+8] ; /ExitCode
00430B19 |. 893D C43A470>mov dword ptr ds:[473AC4],edi ; |
00430B1F \. FF15 8071450>call dword ptr ds:[<&KERNEL32.ExitProc>; \ExitProcess
00430B25 . 5F pop edi
00430B26 . C3 retn
|
能力值:
( LV9,RANK:410 )
|
-
-
13 楼
程序有暗桩,启动的时候会联网验证注册码。
作者好坏!
00403B40 . 55 push ebp ; 暗桩开始
00403B41 . 8BEC mov ebp,esp
00403B43 . 6A FF push -1
00403B45 . 68 680D4500 push cr.00450D68 ; SE handler installation
00403B4A . 64:A1 00000000 mov eax,dword ptr fs:[0]
00403B50 . 50 push eax
00403B51 . 64:8925 00000000 mov dword ptr fs:[0],esp
00403B58 . 81EC 28010000 sub esp,128
00403B5E . 53 push ebx
00403B5F . 56 push esi
00403B60 . 57 push edi
00403B61 . 33DB xor ebx,ebx
00403B63 . 8965 F0 mov dword ptr ss:[ebp-10],esp
00403B66 . 53 push ebx
00403B67 . 53 push ebx
00403B68 . 53 push ebx
00403B69 . 53 push ebx
00403B6A . 53 push ebx
00403B6B . 53 push ebx
00403B6C . 8D4D D4 lea ecx,dword ptr ss:[ebp-2C]
00403B6F . E8 3D7C0400 call cr.0044B7B1
00403B74 . A1 1CD64600 mov eax,dword ptr ds:[46D61C]
00403B79 . 895D FC mov dword ptr ss:[ebp-4],ebx
00403B7C . 8945 EC mov dword ptr ss:[ebp-14],eax
00403B7F . 8945 E8 mov dword ptr ss:[ebp-18],eax
00403B82 . A1 C4194700 mov eax,dword ptr ds:[4719C4]
00403B87 . 8B0D C8194700 mov ecx,dword ptr ds:[4719C8]
00403B8D . 8B15 CC194700 mov edx,dword ptr ds:[4719CC]
00403B93 . 50 push eax
00403B94 . 51 push ecx
00403B95 . 52 push edx
00403B96 . 8D45 E8 lea eax,dword ptr ss:[ebp-18] ; 联网验证
00403B99 . 68 B4814600 push cr.004681B4 ; ASCII "http://biodrug.51.net/drugdirreg.php?usename=%s&machinecode=%s®code=%s"
00403B9E . 50 push eax
00403B9F . C645 FC 02 mov byte ptr ss:[ebp-4],2
00403BA3 . 881D D0194700 mov byte ptr ds:[4719D0],bl
00403BA9 . E8 60CF0300 call cr.00440B0E
00403BAE . 8B4D E8 mov ecx,dword ptr ss:[ebp-18]
00403BB1 . 83C4 14 add esp,14
00403BB4 . C645 FC 03 mov byte ptr ss:[ebp-4],3
00403BB8 . 53 push ebx
00403BB9 . 53 push ebx
00403BBA . 6A 01 push 1
00403BBC . 6A 01 push 1
00403BBE . 51 push ecx
00403BBF . 8D4D D4 lea ecx,dword ptr ss:[ebp-2C]
00403BC2 . E8 E57C0400 call cr.0044B8AC
00403BC7 . 8BF0 mov esi,eax
00403BC9 . BF 02000000 mov edi,2
00403BCE . 3BF3 cmp esi,ebx
00403BD0 . 8975 D0 mov dword ptr ss:[ebp-30],esi
00403BD3 . 897D FC mov dword ptr ss:[ebp-4],edi
00403BD6 . 0F84 1A010000 je cr.00403CF6
00403BDC . 8B16 mov edx,dword ptr ds:[esi]
00403BDE . 8D45 EC lea eax,dword ptr ss:[ebp-14]
00403BE1 . 50 push eax
00403BE2 . 8BCE mov ecx,esi
00403BE4 . C645 FC 05 mov byte ptr ss:[ebp-4],5
00403BE8 . FF52 58 call dword ptr ds:[edx+58]
00403BEB . 68 98814600 push cr.00468198 ; ASCII "sasoiprqwrwkrqrq;djfaske"
00403BF0 . 8D4D EC lea ecx,dword ptr ss:[ebp-14]
00403BF3 . 897D FC mov dword ptr ss:[ebp-4],edi
00403BF6 . E8 8DCB0300 call cr.00440788
00403BFB . 83CF FF or edi,FFFFFFFF
00403BFE . 3BC7 cmp eax,edi
00403C00 . 74 4F je short cr.00403C51 ; 死亡之跳
00403C02 . 8B16 mov edx,dword ptr ds:[esi]
00403C04 . 8BCE mov ecx,esi
00403C06 . FF52 4C call dword ptr ds:[edx+4C]
00403C09 . 8D4D D4 lea ecx,dword ptr ss:[ebp-2C]
00403C0C . E8 457C0400 call cr.0044B856
00403C11 . 68 E8030000 push 3E8 ; /Timeout = 1000. ms
00403C16 . FF15 E4724500 call dword ptr ds:[<&KERNEL32.Sleep>] ; \Sleep
00403C1C . 8D4D E8 lea ecx,dword ptr ss:[ebp-18]
00403C1F . C645 FC 01 mov byte ptr ss:[ebp-4],1
00403C23 . E8 4B250400 call cr.00446173
00403C28 . 8D4D EC lea ecx,dword ptr ss:[ebp-14]
00403C2B . 885D FC mov byte ptr ss:[ebp-4],bl
00403C2E . E8 40250400 call cr.00446173
00403C33 . 8D4D D4 lea ecx,dword ptr ss:[ebp-2C]
00403C36 . 897D FC mov dword ptr ss:[ebp-4],edi
00403C39 . E8 2E7B0400 call cr.0044B76C
00403C3E . 33C0 xor eax,eax
00403C40 . 8B4D F4 mov ecx,dword ptr ss:[ebp-C]
00403C43 . 64:890D 00000000 mov dword ptr fs:[0],ecx
00403C4A . 5F pop edi
00403C4B . 5E pop esi
00403C4C . 5B pop ebx
00403C4D . 8BE5 mov esp,ebp
00403C4F . 5D pop ebp
00403C50 . C3 retn
00403C51 > 68 74814600 push cr.00468174 ; ASCII "please do not use unlock software"
00403C56 . 8D4D EC lea ecx,dword ptr ss:[ebp-14]
00403C59 . E8 2ACB0300 call cr.00440788
00403C5E . 3BC7 cmp eax,edi
00403C60 . 74 16 je short cr.00403C78
00403C62 . 8B06 mov eax,dword ptr ds:[esi]
00403C64 . 8BCE mov ecx,esi
00403C66 . FF50 4C call dword ptr ds:[eax+4C]
00403C69 . 8D4D D4 lea ecx,dword ptr ss:[ebp-2C]
00403C6C . E8 E57B0400 call cr.0044B856
00403C71 . 6A 01 push 1
00403C73 . E8 E8CD0200 call cr.00430A60
00403C78 > 8B16 mov edx,dword ptr ds:[esi]
00403C7A . 8BCE mov ecx,esi
00403C7C . FF52 4C call dword ptr ds:[edx+4C]
00403C7F . 8D4D D4 lea ecx,dword ptr ss:[ebp-2C]
00403C82 . E8 CF7B0400 call cr.0044B856
00403C87 . 68 10270000 push 2710 ; /Timeout = 10000. ms
00403C8C . FF15 E4724500 call dword ptr ds:[<&KERNEL32.Sleep>] ; \Sleep
00403C92 . 8D4D E8 lea ecx,dword ptr ss:[ebp-18]
00403C95 . C605 D0194700 01 mov byte ptr ds:[4719D0],1
00403C9C . C645 FC 01 mov byte ptr ss:[ebp-4],1
00403CA0 . E8 CE240400 call cr.00446173
00403CA5 . 8D4D EC lea ecx,dword ptr ss:[ebp-14]
00403CA8 . 885D FC mov byte ptr ss:[ebp-4],bl
00403CAB . E8 C3240400 call cr.00446173
00403CB0 . 897D FC mov dword ptr ss:[ebp-4],edi
00403CB3 . E9 BD000000 jmp cr.00403D75 ; 退出程序
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
原来问题是出在这里啊!
kill好厉害,十几分钟就解决了!!真是高手!佩服佩服!!
找暗桩有什么技巧吗?
是不是只能用OD一步步跟进去看?看来我还是基本功太差
谢谢kill!终于把这个让我头疼了几天的难题解决了。非常感谢!
|