標 題:菜鳥破解之軟體自己顯示註冊碼
發信人:eyou
時 間:2003/04/29 02:33pm
詳細資訊:
備註:論壇上看見了好幾個帖子都是自己關於軟體能夠自己顯示出正確註冊碼的例子。基
本上大多數的明碼比較的軟體都能自己顯示出註冊碼。我想起了我一個月前暴力破的第一個軟體,正是明碼比較的,好,pe diy。
研究軟體:閃電ASP
v 1.52,只是技術研究不提供下載地址,並且現在已經有新的版本了。工具:trw2000 v1.22 娃娃版 ,W32Dasm V10.0
難度:easy(我到是花了好長時間)
說明:首次破解,不對請指正
感謝:kanxue的書,kanxue論壇及支援的朋友
――――――――――――――――――――――――――――――――
先用trw2000跟,找到了關鍵比較處如下:
016F:004DCF16
E81D99F6FF CALL 00446838
016F:004DCF1B 8B45FC
MOV EAX,[EBP-04]
016F:004DCF1E
50 PUSH EAX
016F:004DCF1F 8BC3
MOV EAX,EBX
016F:004DCF21 E8C6FCFFFF
CALL 004DCBEC
016F:004DCF26 52
PUSH EDX
016F:004DCF27 50
PUSH EAX<==假碼入棧
016F:004DCF28
8D45F8 LEA EAX,[EBP-08]
016F:004DCF2B
E8ECC3F2FF CALL 0040931C
016F:004DCF30 8B55F8
MOV EDX,[EBP-08]<==真碼地址給edx
016F:004DCF33
58 POP EAX<==假碼出棧
016F:004DCF34
E8DF7CF2FF CALL 00404C18<==關鍵比較的call
016F:004DCF39
754A JNZ 004DCF85<==不是就跳出錯
――――――――――――――――――――――――――――――――
在W32Dasm
V10.0得到的彈出錯誤視窗程式碼:
* Referenced by a (U)nconditional or (C)onditional Jump at
Address:
|:004DCF39(C)
|
:004DCF85 6A10
push 00000010
*
Possible StringData Ref from Code Obj ->"註冊"
|
:004DCF87 B9F0CF4D00
mov ecx, 004DCFF0
*
Possible StringData Ref from Code Obj ->"註冊碼錯誤,請重新填寫!"
|
:004DCF8C BA20D04D00
mov edx, 004DD020<==只要把這句改成 MOV EDX,[EBP-08]就完成
:004DCF91
A1FC334F00 mov eax, dword ptr
[004F33FC]
:004DCF96 8B00
mov eax, dword ptr [eax]
:004DCF98 E827A3F8FF
call 004672C4
把高亮顯示的移到004DCF8C BA20D04D00
mov edx, 004DD020這一行,選 編輯-->快速編輯 將“BA20D04D00 ”改成“8B55F89090”(由於我比較菜,在找MOV
EDX,[EBP-08]的機器碼,我花了不少精力後來想016F:004DCF30 不就是嗎),
儲存,執行。介面不好看,但是還是顯示了正確的註冊碼。