整理日期:2003.4.10
最新版本:3.0
文件大小:175KB
软件授权:共享软件
使用平台:Win9x/Me/NT/2000/XP
发布公司:Home
Page
软件简介:
使最终用户可以实现对系统中运行的一切垃圾程序窗口和可疑进程得到全面监控,从而达到杜绝非法窗口、垃圾或广告窗口以及黑客程序及病毒进程对计算机系统造成的肆意破坏的目的。
注册申请码:560338156
注册认证码(假码):654321
一、W32DASM中查找出错信息
*
Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040A72C(C)
|
:0040A74A
6A00 push
00000000
:0040A74C 6A00
push 00000000
*
Possible StringData Ref from Data Obj ->"注册失败!"
|
:0040A74E 6874054400
push 00440574
向上看,如下
:0040A725
33C7 xor
eax, edi
:0040A727 83C408
add esp, 00000008
:0040A72A 3BC1
cmp eax, ecx
:0040A72C 751C
jne 0040A74A====>关键出错
:0040A72E
8BCE mov
ecx, esi
:0040A730 E82B000000 call
0040A760
:0040A735 85C0
test eax, eax
:0040A737 741F
je 0040A758
:0040A739 6A00
push 00000000
:0040A73B
6A00 push
00000000
* Possible
StringData Ref from Data Obj ->"注册成功!"
|
:0040A73D 6880054400 push
00440580
:0040A742 E8212D0200 call
0042D468
:0040A747 5F
pop edi
二、用ollyDbg载入,前往0040A725地址,如下,动态跟踪
0040A700
. 56 PUSH ESI
0040A701
. 57 PUSH EDI
0040A702
. 8BF1 MOV ESI,ECX
0040A704
. 6A 01 PUSH 1
0040A706 . E8
1DDD0100 CALL ProcessC.00428428
0040A70B . 8B46 5C
MOV EAX,DWORD PTR DS:[ESI+5C]
; 取注册申请码,入eax
0040A70E . 50
PUSH EAX
0040A70F . E8 7C950000 CALL
ProcessC.00413C90
; 转换为十六进制,eax=216614EC0(具体请看下面)
0040A714 . 8BF8
MOV EDI,EAX
0040A716 . 8B46 60
MOV EAX,DWORD PTR DS:[ESI+60]
; 取注册认证码,入eax
0040A719 . 50
PUSH EAX
0040A71A . E8 71950000 CALL
ProcessC.00413C90
; 注册认证码转换为十六进制,运算结果返回eax=0009FBF1
0040A71F . 8B8E 54010000
MOV ECX,DWORD PTR DS:[ESI+154] ; ecx为AA6D3522
0040A725
. 33C7 XOR EAX,EDI
; EAX与EDI异或:EDI为注册申请码560338156的十六进制,EAX为认证码654321的十六进制
0040A727
. 83C4 08 ADD ESP,8
0040A72A . 3BC1
CMP EAX,ECX
; EAX与ECX比是否相等,ECX=AA6D3522
0040A72C
75 1C JNZ SHORT ProcessC.0040A74A===========>关键跳转
0040A72E
. 8BCE MOV ECX,ESI
0040A730
. E8 2B000000 CALL ProcessC.0040A760
-------------------
转换为十六进制子程序
00413C05
/$ 53 PUSH EBX
00413C06
|. 55 PUSH EBP
00413C07
|. 56 PUSH ESI
00413C08
|. 57 PUSH EDI
00413C09
|. 8B7C24 14 MOV EDI,DWORD PTR SS:[ESP+14]
; 注册码入edi
00413C0D |> 833D
B41B4400>/CMP DWORD PTR DS:[441BB4],1
00413C14 |. 7E 0F
|JLE SHORT ProcessC.00413C25
00413C16 |. 0FB607
|MOVZX EAX,BYTE PTR DS:[EDI]
00413C19 |. 6A
08 |PUSH 8
00413C1B |. 50
|PUSH EAX
00413C1C |. E8 E53E0000
|CALL ProcessC.00417B06
00413C21 |. 59
|POP ECX
00413C22 |. 59
|POP ECX
00413C23 |. EB 0F
|JMP SHORT ProcessC.00413C34
00413C25 |> 0FB607
|MOVZX EAX,BYTE PTR DS:[EDI]
; 注册码依次入eax,BYTE
00413C28 |. 8B0D A8194400 |MOV ECX,DWORD
PTR DS:[4419A8] ; ProcessC.004419B2
00413C2E
|. 8A0441 |MOV AL,BYTE PTR DS:[ECX+EAX*2]
00413C31
|. 83E0 08 |AND EAX,8
00413C34 |>
85C0 |TEST EAX,EAX
00413C36 |.
74 03 |JE SHORT ProcessC.00413C3B
00413C38
|. 47 |INC EDI
00413C39
|.^ EB D2 \JMP SHORT ProcessC.00413C0D
00413C3B
|> 0FB637 MOVZX ESI,BYTE PTR DS:[EDI]
; 注册码第一位入esiYTE PTR
00413C3E
|. 47 INC EDI
; 下一位注册码
00413C3F |. 83FE 2D
CMP ESI,2D
; 判断注册码是否为"-"
00413C42
|. 8BEE MOV EBP,ESI
; esi入ebpE
00413C44 |. 74 05
JE SHORT ProcessC.00413C4B
00413C46 |. 83FE 2B
CMP ESI,2B
; 第一位是否为2BB
00413C49 |.
75 04 JNZ SHORT ProcessC.00413C4F
00413C4B
|> 0FB637 MOVZX ESI,BYTE PTR DS:[EDI]
00413C4E
|. 47 INC EDI
00413C4F
|> 33DB XOR EBX,EBX
00413C51
|> 833D B41B4400>/CMP DWORD PTR DS:[441BB4],1
00413C58 |.
7E 0C |JLE SHORT ProcessC.00413C66
00413C5A
|. 6A 04 |PUSH 4
00413C5C |.
56 |PUSH ESI
00413C5D |.
E8 A43E0000 |CALL ProcessC.00417B06
00413C62 |. 59
|POP ECX
00413C63 |. 59
|POP ECX
00413C64 |. EB
0B |JMP SHORT ProcessC.00413C71
00413C66 |>
A1 A8194400 |MOV EAX,DWORD PTR DS:[4419A8]
00413C6B |. 8A0470
|MOV AL,BYTE PTR DS:[EAX+ESI*2]
; AL=84
00413C6E |. 83E0 04
|AND EAX,4
00413C71 |> 85C0
|TEST EAX,EAX
00413C73 |. 74 0D
|JE SHORT ProcessC.00413C82
00413C75 |. 8D049B
|LEA EAX,DWORD PTR DS:[EBX+EBX*4] ; eax=ebx*5
00413C78
|. 8D5C46 D0 |LEA EBX,DWORD PTR DS:[ESI+EAX*2-30]
; 转换为十进制 ebxD PTR
00413C7C |. 0FB637
|MOVZX ESI,BYTE PTR DS:[EDI]
00413C7F |. 47
|INC EDI
00413C80 |.^ EB CF
\JMP SHORT ProcessC.00413C51
; 以上申请码转换为十六进制ocessC.00413
00413C82 |>
83FD 2D CMP EBP,2D
00413C85 |. 8BC3
MOV EAX,EBX
00413C87 |. 75 02
JNZ SHORT ProcessC.00413C8B
00413C89 |. F7D8
NEG EAX
00413C8B |> 5F
POP EDI
00413C8C |. 5E
POP ESI
00413C8D |. 5D
POP EBP
00413C8E |. 5B
POP EBX
00413C8F \. C3
RETN
-----------------------------
总结如下:
申请码与认证码转换为十六进制,然后再异或,结果与AA6D3522相比是否相等,如相等,则注册成功。
三、制作注册机:
利用程序本身制作,如下:
在0040A725,把eax改为第0040A71F句的ECX值,本例为AA6D3522,单步运行到0040A727时,EAX的值即为认证码
整理如下:
注册申请码:560338156
注册认证码:2332762574
lordor
4.12