破解<<生日字典密碼生成器 v3.7 password>> 的註冊碼
--------------------------------------------------------------------------------
破解:AsmBoy[BCG]
Mail:asmboy@263.net
QQ:384772
軟體下載地方:http://bcrystal.51.net/
難度級別:初級,練手用的,高手莫看:)
所需工具:
TRW 2000
彙編知識 (至少是基礎)
大腦一個 (你有一個吧 , 我是有的! :p )
軟體歷史:
因現在網上流行幾個破解QQ的密碼的軟體,都是需要字典的,發現在這個以生日為密碼的字典生成工具不錯,就拿來練練手,沒有註冊前只能生成一些簡單的生日密碼,註冊後就沒有這些限制了。
言歸正轉,開工羅....;O
步驟:
用TRW2000載入password.exe檔案,F5返回程式,選擇註冊,輸入78787878(隨便輸的,無所謂,只不過習慣了78大法,呵。。),按CTRL+N返回TRW2000,下斷點BPX
MESSAGEBOXA,用F5返回程式,被攔下了,用PMODULE
返回主程式,按F6鍵,將游標移到程式碼區,用PAGE UP向上翻N次,找到 CALL MSVCRT!_mbscmp
0167:00402E2B 8B4560 MOV
EAX,[EBP+60]
0167:00402E2E 68E0694000 PUSH DWORD 004069E0
0167:00402E33 50 PUSH
EAX
0167:00402E34 FF1520424000 CALL `MSVCRT!_mbscmp`
關鍵部分,比較註冊碼就在這裡面
0167:00402E3A 83C408 ADD
ESP,BYTE +08
0167:00402E3D 85C0 TEST
EAX,EAX
0167:00402E3F 757E JNZ
00402EBF
0167:00402E41 83C9FF OR
ECX,BYTE -01
0167:00402E44 683C684000 PUSH DWORD 0040683C
0167:00402E49 F2AE REPNE SCASB
0167:00402E4B F7D1 NOT
ECX
0167:00402E4D 2BF9 SUB
EDI,ECX
0167:00402E4F 53 PUSH
EBX
將游標移到這行,按F9下斷點,F5返回程式,輸入註冊碼,再次點註冊,被斷下,用F8單步
跟蹤進入CALL MSVCRT!_mbscmp,按N次F8,單步跟蹤到JNZ 7800E85C
用A CS:EIP 輸入NOP,NOP,
以下是第一個CALL MSVCRT!_mbscmp的內容
0167:7800E83B 55 PUSH
EBP
0167:7800E83C 8BEC MOV
EBP,ESP
0167:7800E83E 833DD479037800 CMP DWORD [780379D4],BYTE
+00
0167:7800E845 53 PUSH
EBX
0167:7800E846 56 PUSH
ESI
0167:7800E847 57 PUSH
EDI
0167:7800E848 90 JNZ
7800E85C 關鍵哦,改成NOP,NOP
0167:7800E84A FF750C PUSH DWORD
[EBP+0C]
0167:7800E84D FF7508 PUSH DWORD
[EBP+08]
0167:7800E850 E8224AFFFF CALL `MSVCRT!strcmp`
0167:7800E855 59 POP
ECX
0167:7800E856 59 POP
ECX
0167:7800E857 5F POP
EDI
0167:7800E858 5E POP
ESI
0167:7800E859 5B POP
EBX
0167:7800E85A 5D POP
EBP
再次按F8進入另一個CALL MSVCRT!_mbscmp,單步跟蹤N次看到CMP AL,[ECX],這時我們
用D ECX,就可以看到萬能註冊碼:
以下是第二個CALL MSVCRT!_mbscmp的內容
0167:78003277 8B542404 MOV EDX,[ESP+04]
0167:7800327B 8B4C2408 MOV ECX,[ESP+08]
0167:7800327F F7C203000000 TEST EDX,03
0167:78003285 0F855DD40000 JNZ NEAR 780106E8
0167:7800328B 8B02 MOV
EAX,[EDX]
0167:7800328D 3A01 CMP
AL,[ECX] 看ECX暫存器D ECX
0167:7800328F 7530 JNZ
780032C1 註冊碼為:prch@8848.net
0167:78003291 0AC0 OR
AL,AL
0167:78003293 7429 JZ
780032BE
0167:78003295 3A6101 CMP
AH,[ECX+01]
0167:78003298 7527 JNZ
780032C1
0167:7800329A 0AE4 OR
AH,AH
0167:7800329C 7420 JZ
780032BE
0167:7800329E C1E810 SHR
EAX,10
0167:780032A1 3A4102 CMP
AL,[ECX+02]
0167:780032A4 751B JNZ
780032C1
0167:780032A6 0AC0 OR
AL,AL
0167:780032A8 7414 JZ
780032BE
0167:780032AA 3A6103 CMP
AH,[ECX+03]
0167:780032AD 7512 JNZ
780032C1
0167:780032AF 83C104 ADD
ECX,BYTE +04
0167:780032B2 83C204 ADD
EDX,BYTE +04
0167:780032B5 0AE4 OR
AH,AH
0167:780032B7 75D2 JNZ
7800328B
0167:780032B9 E923D40000 JMP 780106E1
0167:780032BE 33C0 XOR
EAX,EAX
0167:780032C0 C3 RET
0167:780032C1 1BC0 SBB
EAX,EAX
0167:780032C3 D1E0 SHL
EAX,1
0167:780032C5 40 INC
EAX
至此,破解過程完成,為時15分鐘,輕鬆搞定。