能力值:
( LV9,RANK:3410 )
|
-
-
2 楼
UPX V1.25
-d 自动脱壳
载入脱壳后文件
BP FileTimeToDosDateTime
通过文件时间来校验
来到下面的地方修改
0045E2F4 E8 BBA0FAFF call 004083B4
0045E2F9 85C0 test eax,eax
0045E2FB 75 18 jnz short 0045E315
0045E2FD 81BD ACFEFFFF 0032>cmp dword ptr ss:[ebp-154],33200
0045E307 74 0C je short 0045E315
//jmp 0045E315
0045E309 A1 90114600 mov eax,dword ptr ds:[461190]
0045E30E 8B00 mov eax,dword ptr ds:[eax]
0045E310 E8 17E4FFFF call 0045C72C
//PostQuitMessage
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
最初由 fly 发布 BP FileTimeToDosDateTime ........
学习了```
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
晕 先顶一个!谢谢FLY 不过我 脱 后的程序是
548 不知道为什么 别的哥们脱了都是 555K
(意思是 直接用走到OEP 用OD 直接DUMP )
我的一运行就出错(不是校验的错误,图就不发了是windows程序出错时候的那图片 内容就是提示是否 给MICROSOFT发送信息那个对话筐)
请问 FLY 这算 什么问题?
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
对了能说说 您 搞 这个 程序的校验的时候的 思路不?
|
能力值:
( LV6,RANK:90 )
|
-
-
6 楼
想问问FLY大哥,去校验的思路,我去校验都是通过和原文件的对比,一步步的跟,一个个的对比,也搞定了好几个软件,可是,有的软件就不行,看不出来,请大哥指点!~!
|
能力值:
( LV9,RANK:3410 )
|
-
-
7 楼
没有什么一个通用断点就能搞定所有校验的方法
如同脱壳如同破解
对于自校验,如果文件有提示那就根据提示按图索骥
如果自动退出那就对几个退出函数下断
一般自校验有大小校验、时间校验、数据校验、校验值校验等等,可以设断相应函数
最简单的方法就是和原版对比调试,跟踪其不同的流程,虽然这样很费时间,但是却也有效
|
能力值:
( LV13,RANK:1370 )
|
-
-
8 楼
最初由 fly 发布 没有什么一个通用断点就能搞定所有校验的方法 如同脱壳如同破解
对于自校验,如果文件有提示那就根据提示按图索骥 如果自动退出那就对几个退出函数下断 ........
很精辟,我一般都是查关键函数,先下API断点缩小大范围,如VB的VBLEN,其他的比如CREAREFILEA,EXITPROCESS等,接近退出的地方时(最后一次减一次)范围已经很小了,再采用对比法单步跟踪关键的跳转,此法非常奏效.
|
能力值:
( LV4,RANK:50 )
|
-
-
9 楼
想问问fly大虾,怎么你就那么牛哩?
我学破解时间也有段时间了,怎么感觉一直不开窍。
现在看你们高手的东西这么多,越来越不知道怎样学习了。
|
能力值:
( LV3,RANK:20 )
|
-
-
10 楼
自校验也很令人头痛
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
我用OD脱后,大小为555K字节,PEID查看为无壳:Borland Delphi 6.0 - 7.0
可双击程序无法运行,也无任何错误提示,修复后也是一样。大虾们这是怎么回事啊,望得到指点。
|
能力值:
( LV6,RANK:90 )
|
-
-
12 楼
这个看来就是有校验了,呵呵,我的方法就是跟原程序对比,FLY老大说的下断,我还不会,不知道退出的API断有那些,你也可以把程序传上来,帮你看看。
|
能力值:
( LV6,RANK:90 )
|
-
-
13 楼
脱壳太简单了,ESP就搞定了,自校验的地方也找到了,不过我刚入门,不知道如何改就对了,改成把JE改成JMP后,软件就退不出去了,还请FLY老大看看,指点一下,看雪老大,大多情况也在,有时间指点一下,我已经碰到这个校验的软件好几个了,不知道怎么改,以下是程序校验的地方,0045C704的地方要,一直跳转成功才行,要不然,程序就退出了。
0045C6C5 > 33C0 XOR EAX,EAX
0045C6C7 . |55 PUSH EBP
0045C6C8 . |68 E5C64500 PUSH 11.0045C6E5
0045C6CD . |64:FF30 PUSH DWORD PTR FS:[EAX]
0045C6D0 . |64:8920 MOV DWORD PTR FS:[EAX],ESP
0045C6D3 . |8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0045C6D6 . |E8 D1FDFFFF CALL 11.0045C4AC
0045C6DB . |33C0 XOR EAX,EAX
0045C6DD . |5A POP EDX
0045C6DE . |59 POP ECX
0045C6DF . |59 POP ECX
0045C6E0 . |64:8910 MOV DWORD PTR FS:[EAX],EDX
0045C6E3 . |EB 15 JMP SHORT 11.0045C6FA
0045C6E5 .-|E9 1670FAFF JMP 11.00403700
0045C6EA . |8B55 FC MOV EDX,DWORD PTR SS:[EBP-4]
0045C6ED . |8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0045C6F0 . |E8 4B000000 CALL 11.0045C740
0045C6F5 . |E8 6E73FAFF CALL 11.00403A68
0045C6FA > |8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0045C6FD |80B8 9C000000>CMP BYTE PTR DS:[EAX+9C],0
0045C704 ^\74 BF JE SHORT 11.0045C6C5
|
|
|