破解WS_FTP Pro 7.02 (8千字)
破解WS_FTP Pro 7.02
by Fpc[CCG]/6767[BCG] 2001/10
tools: Trw2000, wdasm, filemon
軟體名稱:WS_FTP Pro
整理日期:2001.10.27
最新版本:7.02
檔案大小:4093KB
軟體授權:共享軟體
使用平臺:Win9x/Me/NT/2000
釋出公司:Home Page
軟體簡介:一個快速、強大的FTP客戶程式。除了繼續保留傳統的雙窗格的風格外,新版本更增加了WS-FTP Explorer作為Windows Explorer
(資源管理器)的擴充套件,因此,你可以在資源管理器中直接訪問FTP站點。FTP傳送就像在Windows資源管理器中複製檔案一樣簡單,你不必關心文件在什麼型別的伺服器上,或者你正在使用何種Internet協議!
[Begin]
這是一個善於自我吹噓的FTP工具~~其共享版本提供了30天的全部功能試用,每次執行出現一個NAG,提醒你註冊。來看一下如何解決。
它的exe檔案由VC編譯,沒有加殼,難得~,此外還有一堆dll。無處可以輸入註冊碼。用regmon和filemon找找,只有這個檔案可疑:key.dat。用記事本開啟這個檔案,發現大部分內容是文字,也正是顯示在nag窗的內容,好象是個指令碼。
trw載入檔案,設下斷點:bpx createfilea do "d *(esp+4)"。攔到後看到檔名正是key.dat,一次F12,接下來用f10向下跟。它讀取檔案內容,驗證長度為0x1390位元組,並且前0x1380所計算得到的校驗資料(10位元組)要與檔案最後的10個位元組一致。這些對於註冊沒什麼幫助。按F12,如果你運氣好,程式沒有跑丟,就返回到下面(可能是trw的bug):
檔案 wsftpext.dll 的部分內容:
... ...
:1003C68E 51
push ecx
* Possible StringData Ref from Data Obj ->"WS_FTP Pro"
|
:1003C68F 8B15B07D0510 mov edx, dword
ptr [10057DB0]
:1003C695 52
push edx
:1003C696 8B450C
mov eax, dword ptr [ebp+0C]
:1003C699 50
push eax
:1003C69A E8F1640000 call 10042B90
<- 這裡是對key.dat的驗證
:1003C69F 83C420
add esp, 00000020
<- 返回處
:1003C6A2 8985F4FEFFFF mov dword ptr
[ebp+FFFFFEF4], eax <- 儲存出口狀態
:1003C6A8 83BDF4FEFFFF00 cmp dword ptr [ebp+FFFFFEF4],
00000000
:1003C6AF 7407
je 1003C6B8
<- 這裡改一下:jmp 1003C6FB(EB 4A)
:1003C6B1 B800000780 mov eax,
80070000
:1003C6B6 EB4E
jmp 1003C706
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:1003C6AF(C)
|
:1003C6B8 837D1000 cmp
dword ptr [ebp+10], 00000000
:1003C6BC 7509
jne 1003C6C7
* Reference To: USER32.GetActiveWindow, Ord:00DDh
<- 取活動視窗的的控制程式碼
|
:1003C6BE FF1544C30410 Call dword ptr
[1004C344]
:1003C6C4 894510
mov dword ptr [ebp+10], eax
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:1003C6BC(C)
|
:1003C6C7 8B4D14
mov ecx, dword ptr [ebp+14]
:1003C6CA 51
push ecx
:1003C6CB 8B5510
mov edx, dword ptr [ebp+10]
:1003C6CE 52
push edx
:1003C6CF E82C6D0000 call 10043400
<- 顯示 Nag
:1003C6D4 83C408
add esp, 00000008
:1003C6D7 8985F0FEFFFF mov dword ptr
[ebp+FFFFFEF0], eax
:1003C6DD 83BDF0FEFFFF00 cmp dword ptr [ebp+FFFFFEF0],
00000000
:1003C6E4 740C
je 1003C6F2
<- 選擇了試用按鈕,則eax=0; 如果過了試用期,eax為小於0的一個值
:1003C6E6 E8A5690000 call 10043090
:1003C6EB B800000780 mov eax,
80070000
:1003C6F0 EB14
jmp 1003C706
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:1003C6E4(C)
|
:1003C6F2 EB07
jmp 1003C6FB
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:1003C636(C)
|
:1003C6F4 B800003380 mov eax,
80330000
:1003C6F9 EB0B
jmp 1003C706
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:1003C6F2(U)
|
:1003C6FB 8B4508
mov eax, dword ptr [ebp+08] <-
這裡必須執行到,[ebp+8]置1表示程式正常,為0則導致退出
:1003C6FE C70001000000 mov dword ptr
[eax], 00000001
:1003C704 33C0
xor eax, eax
* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:1003C6B6(U), :1003C6F0(U), :1003C6F9(U)
|
:1003C706 8BE5
mov esp, ebp
:1003C708 5D
pop ebp
:1003C709 C21000
ret 0010
... ...
簡單分析上面的程式碼,:1003C6FB必須執行到,否則程式退出,而看上面的reference,只有一個跳轉可到這裡,是在你看過了nag之後。key.dat內容改變也不能跳過nag而執行程式,所以只能暴力跳過那個nag窗,同時時間限制解除!
再按幾次F12,返回到exe的程式碼空間,看有沒有線索:
... ...
:00426462 740A
je 0042646E
:00426464 C78548F7FFFF07000000 mov dword ptr [ebp+FFFFF748], 00000007
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00426462(C)
|
:0042646E C7856CFCFFFF00000000 mov dword ptr [ebp+FFFFFC6C], 00000000
:00426478 8D8D6CFCFFFF lea ecx, dword
ptr [ebp+FFFFFC6C]
:0042647E 51
push ecx
:0042647F 8D9544F7FFFF lea edx, dword
ptr [ebp+FFFFF744]
:00426485 52
push edx
* Reference To: wsftpext.GetWsftpextApi, Ord:0000h
<- 名字
|
:00426486 FF15A09A4200 Call dword ptr
[00429AA0]
:0042648C 83C408
add esp, 00000008 <-
返回處
:0042648F 8B8D28F4FFFF mov ecx, dword
ptr [ebp+FFFFF428]
:00426495 898138010000 mov dword ptr
[ecx+00000138], eax
:0042649B 8B9528F4FFFF mov edx, dword
ptr [ebp+FFFFF428]
:004264A1 83BA3801000000 cmp dword ptr [edx+00000138],
00000000
:004264A8 7524
jne 004264CE
:004264AA C78540F4FFFF00000000 mov dword ptr [ebp+FFFFF440], 00000000
:004264B4 C745FCFFFFFFFF mov [ebp-04], FFFFFFFF
:004264BB 8D4DA4
lea ecx, dword ptr [ebp-5C]
:004264BE E84D73FEFF call 0040D810
:004264C3 8B8540F4FFFF mov eax, dword
ptr [ebp+FFFFF440]
:004264C9 E932070000 jmp 00426C00
<- 這裡跳下去就退出了
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004264A8(C)
|
:004264CE 83BD70FCFFFF05 cmp dword ptr [ebp+FFFFFC70],
00000005 <- 下面是程式主線,同樣沒有越過nag而能正常執行的跳轉
:004264D5 0F8540010000 jne 0042661B
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00426616(U)
|
:004264DB 83BD70FCFFFF05 cmp dword ptr [ebp+FFFFFC70],
00000005
:004264E2 0F8533010000 jne 0042661B
:004264E8 8D8D1CF6FFFF lea ecx, dword
ptr [ebp+FFFFF61C]
* Reference To: wsftpctl.??0CIpsInputDialog@@QAE@XZ, Ord:0006h
|
:004264EE FF15289A4200 Call dword ptr
[00429A28]
:004264F4 C645FC01 mov
[ebp-04], 01
:004264F8 8D8D24F6FFFF lea ecx, dword
ptr [ebp+FFFFF624]
* Reference To: MFC42.Ordinal:021C, Ord:021Ch
|
:004264FE E87B0C0000 Call 0042717E
:00426503 C645FC02 mov
[ebp-04], 02
* Possible Reference to Dialog: DialogID_0083
|
* Possible Reference to String Resource ID=00131: "Enter command line:"
|
:00426507 6883000000 push 00000083
:0042650C 8D8D24F6FFFF lea ecx, dword
ptr [ebp+FFFFF624]
* Reference To: MFC42.Ordinal:1040, Ord:1040h
|
:00426512 E8610C0000 Call 00427178
:00426517 8D8D28F6FFFF lea ecx, dword
ptr [ebp+FFFFF628]
* Reference To: MFC42.Ordinal:021C, Ord:021Ch
|
:0042651D E85C0C0000 Call 0042717E
:00426522 C645FC03 mov
[ebp-04], 03
* Possible Reference to String Resource ID=00132: "Input"
|
:00426526 6884000000 push 00000084
:0042652B 8D8D28F6FFFF lea ecx, dword
ptr [ebp+FFFFF628]
* Reference To: MFC42.Ordinal:1040, Ord:1040h
|
:00426531 E8420C0000 Call 00427178
... ...
所以程式的保護應該是就在 wsftpext.dll 上,如果你向作者註冊,他會給你沒有 nag 的 dll 檔案,而我們只能暴破~
相關文章
- 用DeDe破解------Ativa Pro v3.18 的破文 (8千字)2001-08-29
- winimage完全破解 (8千字)2001-07-04
- Teleport Pro破解實戰錄 (6千字)2000-05-28
- Java 程式的破解方法 (8千字)2002-08-15Java
- 我的破解心得(8) (2千字)2001-03-13
- 菜鳥破解錄之 GIF Construction Set Pro及演算法分析
(8千字)2000-09-01Struct演算法
- 菜鳥破解錄(17)之 BackupXpress Pro (3千字)2000-08-05
- ThemeFreak V1.6破解 (8千字)2001-03-07
- 炒股理財1.65破解方法 (8千字)2001-04-13
- Trojan Remover 4.3.0破解手記 (8千字)2001-08-31REM
- 破解GIF Movie Gear 3.01 (8千字)2002-03-13
- 如何破解windows help designed pro v
2.3.3.0 (2千字)2001-03-12Windows
- 《teleport pro 1.28》破解實錄 !!高手莫進!! (5千字)2001-05-03
- winxp總管破解筆記(一) (8千字)2002-10-07筆記
- SeaMoon Pic Hunter 1.2破解手記 (8千字)2015-11-15
- 破解實錄(四)之 NoteTab Pro Trial 4.81 (3千字)2000-07-18
- Password Keeper v6.3破解過程 (8千字)2002-04-12
- 破解華琦庫管精靈1.2.4 (8千字)2000-09-11
- PwlTool的功能限制的破解---DDXia[CCG] (8千字)2001-03-10
- 使用KERNEL32.DLL破解???(譯文)
(8千字)2000-08-29
- Lambda Pro v2.0安裝序列號破解(1) (16千字)2001-12-08
- Update NOW 2000 暴力破解方法! (8千字)2001-02-11
- 如何完美破解winhex9.73的功能限制! (8千字)2001-03-13
- Embird32 防破解技術的分析 (8千字)2001-04-29
- MP3 to EXE v 2.6破解手記 (8千字)2001-09-08
- 用W32DASM破解JPEG Optimizer 4.0 (8千字)2000-02-21ASM
- 乾涸的(Asp maker version 2.2 破解手記) (8千字)2015-11-15
- Advanced
PDF Password Recovery Pro 2.12的不完美破解 (12千字)2003-05-20
- 菜鳥破解實錄(16)之 CD Box Labeler Pro (4千字)2000-08-03
- macbook pro破解UltraEdit2019-04-17Mac
- Windows Lotto Pro 2000 V5.39之暴力破解
(10千字)2001-04-02Windows
- 破解NetScanTools Pro 2000及其InstallShield指令碼破解(其實指令碼沒破成)
(18千字)2001-03-30指令碼
- 輕鬆試卷 V4.5版破解實錄。 (8千字)2002-06-30
- Kugle Regediter 1.0 註冊碼破解法(非明碼) (8千字)2001-11-03
- Visual CHM 4.0的演算法“特別破解” (8千字)2015-11-15演算法
- 破解《速達3000 Pro》 正式版的加密狗 (16千字)2001-03-16加密
- PolyView 破解 (5千字)2000-12-31View
- 破解FAQGenie (4千字)2001-04-10