史萊姆論壇

返回   史萊姆論壇 > 教學文件資料庫 > Hacker/Cracker 及加解密技術文件
忘記密碼?
註冊帳號 論壇說明 標記討論區已讀

歡迎您來到『史萊姆論壇』 ^___^

您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的!

請點擊這裡:『註冊成為我們的一份子!』

Google 提供的廣告


 
 
主題工具 顯示模式
舊 2006-01-12, 04:49 PM   #1
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設 破解分析快遞單列印專家 1.0

==>快遞單列印專家 1.0

【破文標題】==>快遞單列印專家 1.0
【破文作者】pentacle[PYG]
【作者郵信箱】
【作者主頁】www.chinapyg.cn
【破解工具】OD漢化第二版、PEidV0.93
【破解平台】Win9x/NT/2000/XP
【軟體名稱】快遞單列印專家 1.0
【軟體大小】2666KB

【原版下載】http://bj.onlinedown.net/soft/45556.htm
【保護方式】註冊碼
【軟體簡介】·可列印所有快遞單!可批量列印信封、標籤、快遞單、包裹單、明信片等需要套打的單據。
·獨創所見即所得的快遞單設計功能,用戶可自行設計快遞單,5分鍾即可設計一個新的快遞單。
·可批量列印快遞單,並從Excel中匯入位址資料。
·綠色軟體,不需安裝,解壓即可使用。
------------------------------------------------------------------------
【破解程序】1、綠色軟體,解壓即用
用PEid查得殼為UPX的。簡單。手動脫OK,這就不說了。經查DELPHI寫的,應該用DEDE的,但我的DEDE被我刪了,還用OD吧
2、破解分析
試了一下789789,重啟認證
未用FlieMon等工具,經猜測並證實。註冊碼儲存在ExpPrinter.fdb中,看文件產生時間:)
用OD載入,查字串。基本是英文。我暈。搜尋reg,哈。找到了regcode和machinecode
找著關鍵就好辦
3、OD實戰
執行程序。輸入假註冊碼
重啟程序
下斷bp CreateFileA
F9執行後來到
7C801A24 > 8BFF MOV EDI,EDI
7C801A26 55 PUSH EBP
7C801A27 8BEC MOV EBP,ESP
7C801A29 FF75 08 PUSH DWORD PTR SS:[EBP+8]
那我們就開始慢慢跟吧,來到
005F1680 /$ 55 PUSH EBP ; 中間有幾個異常,我們到這兒
005F1681 |. 8BEC MOV EBP,ESP
005F1683 |. 33C9 XOR ECX,ECX
005F1685 |. 51 PUSH ECX
005F1686 |. 51 PUSH ECX
005F1687 |. 51 PUSH ECX
005F1688 |. 51 PUSH ECX
005F1689 |. 53 PUSH EBX
005F168A |. 33C0 XOR EAX,EAX
005F168C |. 55 PUSH EBP
005F168D |. 68 FA165F00 PUSH ExpPrint.005F16FA
005F1692 |. 64:FF30 PUSH DWORD PTR FS:[EAX]
005F1695 |. 64:8920 MOV DWORD PTR FS:[EAX],ESP
005F1698 |. 8D55 F0 LEA EDX,DWORD PTR SS:[EBP-10]
005F169B |. A1 74577300 MOV EAX,DWORD PTR DS:[735774]
005F16A0 |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
005F16A2 |. 8B40 60 MOV EAX,DWORD PTR DS:[EAX+60]
005F16A5 |. E8 B22DF6FF CALL ExpPrint.0055445C ; 將加密的註冊碼還原
005F16AA |. 8B45 F0 MOV EAX,DWORD PTR SS:[EBP-10] ; 還原的註冊碼入EAX
005F16AD |. 8D4D FC LEA ECX,DWORD PTR SS:[EBP-4]
005F16B0 |. BA 09000000 MOV EDX,9
005F16B5 |. E8 229FE6FF CALL ExpPrint.0045B5DC
005F16BA |. 8D45 F4 LEA EAX,DWORD PTR SS:[EBP-C]
005F16BD |. E8 C2DFF5FF CALL ExpPrint.0054F684 ; 取機器碼(CPU序列號+硬碟晶片序列號)
005F16C2 |. 8D4D F8 LEA ECX,DWORD PTR SS:[EBP-8]
005F16C5 |. BA 10175F00 MOV EDX,ExpPrint.005F1710 ; expprinter
005F16CA |. 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C] ; 機器碼入EAX
005F16CD |. E8 A2E0F5FF CALL ExpPrint.0054F774 ; 取機器碼的CALL
005F16D2 |. 8B55 F8 MOV EDX,DWORD PTR SS:[EBP-8] ; 真碼入EDX
005F16D5 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4] ; 假碼入EAX
005F16D8 |. E8 5B84E1FF CALL ExpPrint.00409B38 ; 對比CALL,在這兒寫記憶體註冊機
005F16DD |. 8BD8 MOV EBX,EAX
005F16DF |. 33C0 XOR EAX,EAX
005F16E1 |. 5A POP EDX
005F16E2 |. 59 POP ECX
005F16E3 |. 59 POP ECX
005F16E4 |. 64:8910 MOV DWORD PTR FS:[EAX],EDX
005F16E7 |. 68 01175F00 PUSH ExpPrint.005F1701
005F16EC |> 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]
005F16EF |. BA 04000000 MOV EDX,4
005F16F4 |. E8 7B33E1FF CALL ExpPrint.00404A74
005F16F9 \. C3 RETN

我們接下來進入005F16A5 |. E8 B22DF6FF CALL ExpPrint.0055445C ; 將加密的註冊碼還原
0055445C /$ 55 PUSH EBP ; 算法還原CALL
0055445D |. 8BEC MOV EBP,ESP
0055445F |. 6A 00 PUSH 0
00554461 |. 53 PUSH EBX
00554462 |. 56 PUSH ESI
00554463 |. 8BF2 MOV ESI,EDX
00554465 |. 8BD8 MOV EBX,EAX
00554467 |. 33C0 XOR EAX,EAX
00554469 |. 55 PUSH EBP
0055446A |. 68 A8445500 PUSH ExpPrint.005544A8
0055446F |. 64:FF30 PUSH DWORD PTR FS:[EAX]
00554472 |. 64:8920 MOV DWORD PTR FS:[EAX],ESP
00554475 |. 8D45 FC LEA EAX,DWORD PTR SS:[EBP-4]
00554478 |. 50 PUSH EAX
00554479 |. 33C9 XOR ECX,ECX
0055447B |. BA BC445500 MOV EDX,ExpPrint.005544BC ; regcode
00554480 |. 8B43 08 MOV EAX,DWORD PTR DS:[EBX+8]
00554483 |. 8B18 MOV EBX,DWORD PTR DS:[EAX]
00554485 |. FF53 0C CALL DWORD PTR DS:[EBX+C] ; 取加密後的註冊碼
00554488 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4] ; 將加密後的註冊碼放入EAX
0055448B |. 8BD6 MOV EDX,ESI
0055448D |. E8 62ABFFFF CALL ExpPrint.0054EFF4 ; 註冊碼還原CALL
00554492 |. 33C0 XOR EAX,EAX
00554494 |. 5A POP EDX
00554495 |. 59 POP ECX
00554496 |. 59 POP ECX
00554497 |. 64:8910 MOV DWORD PTR FS:[EAX],EDX
0055449A |. 68 AF445500 PUSH ExpPrint.005544AF
0055449F |> 8D45 FC LEA EAX,DWORD PTR SS:[EBP-4]
005544A2 |. E8 A905EBFF CALL ExpPrint.00404A50
005544A7 \. C3 RETN

接下來我看再看看005F16BD |. E8 C2DFF5FF CALL ExpPrint.0054F684 ; 取機器碼(CPU序列號+硬碟晶片序列號)
0054F684 /$ 55 PUSH EBP ; 機器碼的取值
0054F685 |. 8BEC MOV EBP,ESP
0054F687 |. 33C9 XOR ECX,ECX
0054F689 |. 51 PUSH ECX
0054F68A |. 51 PUSH ECX
0054F68B |. 51 PUSH ECX
0054F68C |. 51 PUSH ECX
0054F68D |. 51 PUSH ECX
0054F68E |. 51 PUSH ECX
0054F68F |. 51 PUSH ECX
0054F690 |. 53 PUSH EBX
0054F691 |. 8BD8 MOV EBX,EAX
0054F693 |. 33C0 XOR EAX,EAX
0054F695 |. 55 PUSH EBP
0054F696 |. 68 59F75400 PUSH ExpPrint.0054F759
0054F69B |. 64:FF30 PUSH DWORD PTR FS:[EAX]
0054F69E |. 64:8920 MOV DWORD PTR FS:[EAX],ESP
0054F6A1 |. 8D45 FC LEA EAX,DWORD PTR SS:[EBP-4]
0054F6A4 |. E8 97FAFFFF CALL ExpPrint.0054F140 ; 取CPU序列號
0054F6A9 |. 8D45 F8 LEA EAX,DWORD PTR SS:[EBP-8]
0054F6AC |. E8 4BFCFFFF CALL ExpPrint.0054F2FC ; 取硬碟晶片序列號
0054F6B1 |. 8D45 F4 LEA EAX,DWORD PTR SS:[EBP-C]
0054F6B4 |. 8B4D F8 MOV ECX,DWORD PTR SS:[EBP-8]
0054F6B7 |. 8B55 FC MOV EDX,DWORD PTR SS:[EBP-4]
0054F6BA |. E8 9D56EBFF CALL ExpPrint.00404D5C
0054F6BF |. 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]
0054F6C2 |. 50 PUSH EAX
0054F6C3 |. B9 04000000 MOV ECX,4
0054F6C8 |. BA 01000000 MOV EDX,1
0054F6CD |. 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]
0054F6D0 |. E8 9B58EBFF CALL ExpPrint.00404F70 ; 取CPU+硬碟後特徵碼前4位
0054F6D5 |. FF75 F0 PUSH DWORD PTR SS:[EBP-10]
0054F6D8 |. 68 70F75400 PUSH ExpPrint.0054F770 ; -
0054F6DD |. 8D45 EC LEA EAX,DWORD PTR SS:[EBP-14]
0054F6E0 |. 50 PUSH EAX
0054F6E1 |. B9 04000000 MOV ECX,4
0054F6E6 |. BA 05000000 MOV EDX,5
0054F6EB |. 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]
0054F6EE |. E8 7D58EBFF CALL ExpPrint.00404F70
0054F6F3 |. FF75 EC PUSH DWORD PTR SS:[EBP-14]
0054F6F6 |. 68 70F75400 PUSH ExpPrint.0054F770 ; -
0054F6FB |. 8D45 E8 LEA EAX,DWORD PTR SS:[EBP-18]
0054F6FE |. 50 PUSH EAX
0054F6FF |. B9 04000000 MOV ECX,4
0054F704 |. BA 09000000 MOV EDX,9
0054F709 |. 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]
0054F70C |. E8 5F58EBFF CALL ExpPrint.00404F70
0054F711 |. FF75 E8 PUSH DWORD PTR SS:[EBP-18]
0054F714 |. 68 70F75400 PUSH ExpPrint.0054F770 ; -
0054F719 |. 8D45 E4 LEA EAX,DWORD PTR SS:[EBP-1C]
0054F71C |. 50 PUSH EAX
0054F71D |. B9 04000000 MOV ECX,4
0054F722 |. BA 0D000000 MOV EDX,0D
0054F727 |. 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]
0054F72A |. E8 4158EBFF CALL ExpPrint.00404F70
0054F72F |. FF75 E4 PUSH DWORD PTR SS:[EBP-1C]
0054F732 |. 8BC3 MOV EAX,EBX
0054F734 |. BA 07000000 MOV EDX,7
0054F739 |. E8 9256EBFF CALL ExpPrint.00404DD0
0054F73E |. 33C0 XOR EAX,EAX
0054F740 |. 5A POP EDX
0054F741 |. 59 POP ECX
0054F742 |. 59 POP ECX
0054F743 |. 64:8910 MOV DWORD PTR FS:[EAX],EDX
0054F746 |. 68 60F75400 PUSH ExpPrint.0054F760
0054F74B |> 8D45 E4 LEA EAX,DWORD PTR SS:[EBP-1C]
0054F74E |. BA 07000000 MOV EDX,7
0054F753 |. E8 1C53EBFF CALL ExpPrint.00404A74 ; 將特徵碼格式化,4位一組用-連線
0054F758 \. C3 RETN

接下來我們再到005F16CD |. E8 A2E0F5FF CALL ExpPrint.0054F774 ; 電腦器碼的CALL
0054F774 /$ 55 PUSH EBP ; 計算註冊碼的地方
0054F775 |. 8BEC MOV EBP,ESP
0054F777 |. 6A 00 PUSH 0
0054F779 |. 6A 00 PUSH 0
0054F77B |. 6A 00 PUSH 0
0054F77D |. 6A 00 PUSH 0
0054F77F |. 6A 00 PUSH 0
0054F781 |. 6A 00 PUSH 0
0054F783 |. 6A 00 PUSH 0
0054F785 |. 6A 00 PUSH 0
0054F787 |. 53 PUSH EBX
0054F788 |. 8BD9 MOV EBX,ECX
0054F78A |. 8955 F8 MOV DWORD PTR SS:[EBP-8],EDX
0054F78D |. 8945 FC MOV DWORD PTR SS:[EBP-4],EAX
0054F790 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0054F793 |. E8 6857EBFF CALL ExpPrint.00404F00
0054F798 |. 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
0054F79B |. E8 6057EBFF CALL ExpPrint.00404F00
0054F7A0 |. 33C0 XOR EAX,EAX
0054F7A2 |. 55 PUSH EBP
0054F7A3 |. 68 A3F85400 PUSH ExpPrint.0054F8A3
0054F7A8 |. 64:FF30 PUSH DWORD PTR FS:[EAX]
0054F7AB |. 64:8920 MOV DWORD PTR FS:[EAX],ESP
0054F7AE |. 8BC3 MOV EAX,EBX
0054F7B0 |. E8 9B52EBFF CALL ExpPrint.00404A50
0054F7B5 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0054F7B8 |. E8 5355EBFF CALL ExpPrint.00404D10
0054F7BD |. 83F8 13 CMP EAX,13 ; 判斷機器碼是否為19位,不是就OVER
0054F7C0 |. 75 1B JNZ SHORT ExpPrint.0054F7DD
0054F7C2 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0054F7C5 |. 8078 04 2D CMP BYTE PTR DS:[EAX+4],2D ; 判斷機器碼的格式是否正確
0054F7C9 |. 75 12 JNZ SHORT ExpPrint.0054F7DD
0054F7CB |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0054F7CE |. 8078 09 2D CMP BYTE PTR DS:[EAX+9],2D
0054F7D2 |. 75 09 JNZ SHORT ExpPrint.0054F7DD
0054F7D4 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0054F7D7 |. 8078 0E 2D CMP BYTE PTR DS:[EAX+E],2D
0054F7DB |. 74 1B JE SHORT ExpPrint.0054F7F8 ; 都沒問題了,跳
0054F7DD |> B9 B8F85400 MOV ECX,ExpPrint.0054F8B8 ; machine code is invalid!
0054F7E2 |. B2 01 MOV DL,1
0054F7E4 |. A1 B08A4000 MOV EAX,DWORD PTR DS:[408AB0]
0054F7E9 |. E8 76F9EBFF CALL ExpPrint.0040F164
0054F7EE |. E8 E54BEBFF CALL ExpPrint.004043D8
0054F7F3 |. E9 90000000 JMP ExpPrint.0054F888
0054F7F8 |> 8D4D F0 LEA ECX,DWORD PTR SS:[EBP-10]
0054F7FB |. BA 09000000 MOV EDX,9
0054F800 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0054F803 |. E8 D4BDF0FF CALL ExpPrint.0045B5DC
0054F808 |. 8D4D F4 LEA ECX,DWORD PTR SS:[EBP-C]
0054F80B |. 8B55 FC MOV EDX,DWORD PTR SS:[EBP-4]
0054F80E |. 8B45 F0 MOV EAX,DWORD PTR SS:[EBP-10]
0054F811 |. E8 BAF1FFFF CALL ExpPrint.0054E9D0 ; 中間值1
0054F816 |. 8D4D EC LEA ECX,DWORD PTR SS:[EBP-14]
0054F819 |. 8B55 F4 MOV EDX,DWORD PTR SS:[EBP-C] ; 中間值1壓入EDX
0054F81C |. 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8] ; 字元串「ExpPrinter」
0054F81F |. E8 ACF1FFFF CALL ExpPrint.0054E9D0 ; 中間值2
0054F824 |. 8B55 EC MOV EDX,DWORD PTR SS:[EBP-14]
0054F827 |. 8D45 F4 LEA EAX,DWORD PTR SS:[EBP-C]
0054F82A |. E8 B952EBFF CALL ExpPrint.00404AE8
0054F82F |. 8D55 E8 LEA EDX,DWORD PTR SS:[EBP-18]
0054F832 |. 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]
0054F835 |. E8 B2EEFFFF CALL ExpPrint.0054E6EC ; 中間值3,通過此中間值3得最終註冊碼
0054F83A |. 8B55 E8 MOV EDX,DWORD PTR SS:[EBP-18]
0054F83D |. 8D45 F4 LEA EAX,DWORD PTR SS:[EBP-C]
0054F840 |. E8 A352EBFF CALL ExpPrint.00404AE8
0054F845 |. 8D45 E4 LEA EAX,DWORD PTR SS:[EBP-1C]
0054F848 |. 50 PUSH EAX
0054F849 |. B9 04000000 MOV ECX,4
0054F84E |. BA 0C000000 MOV EDX,0C
0054F853 |. 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]
0054F856 |. E8 1557EBFF CALL ExpPrint.00404F70 ; 取註冊碼前4位
0054F85B |. FF75 E4 PUSH DWORD PTR SS:[EBP-1C]
0054F85E |. 68 DCF85400 PUSH ExpPrint.0054F8DC ; -
0054F863 |. 8D45 E0 LEA EAX,DWORD PTR SS:[EBP-20]
0054F866 |. 50 PUSH EAX
0054F867 |. B9 04000000 MOV ECX,4
0054F86C |. BA 16000000 MOV EDX,16
0054F871 |. 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]
0054F874 |. E8 F756EBFF CALL ExpPrint.00404F70 ; 註冊碼後4位
0054F879 |. FF75 E0 PUSH DWORD PTR SS:[EBP-20]
0054F87C |. 8BC3 MOV EAX,EBX
0054F87E |. BA 03000000 MOV EDX,3
0054F883 |. E8 4855EBFF CALL ExpPrint.00404DD0
0054F888 |> 33C0 XOR EAX,EAX
0054F88A |. 5A POP EDX
0054F88B |. 59 POP ECX
0054F88C |. 59 POP ECX
0054F88D |. 64:8910 MOV DWORD PTR FS:[EAX],EDX
0054F890 |. 68 AAF85400 PUSH ExpPrint.0054F8AA
0054F895 |> 8D45 E0 LEA EAX,DWORD PTR SS:[EBP-20]
0054F898 |. BA 08000000 MOV EDX,8
0054F89D |. E8 D251EBFF CALL ExpPrint.00404A74
0054F8A2 \. C3 RETN

啊。就跟到這兒吧~~那個計算中間值的算法沒看明白。有空再看吧。
__________________
http://bbsimg.qianlong.com/upload/01/08/29/68/1082968_1136014649812.gif
psac 目前離線  
送花文章: 3, 收花文章: 1630 篇, 收花: 3204 次
 


主題工具
顯示模式

發表規則
不可以發文
不可以回覆主題
不可以上傳附加檔案
不可以編輯您的文章

論壇啟用 BB 語法
論壇啟用 表情符號
論壇啟用 [IMG] 語法
論壇禁用 HTML 語法
Trackbacks are 禁用
Pingbacks are 禁用
Refbacks are 禁用


所有時間均為台北時間。現在的時間是 09:16 PM


Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2020, Jelsoft Enterprises Ltd.


SEO by vBSEO 3.6.1