流光 4.5 完全破解 (15千字)

看雪資料發表於2002-08-24

[注]新版的4.7已經加殼,此文僅供初學者參考。

www.sandflee.net 2002-3-1 灰色軌跡

流光 4.5 完全破解(補充)

前言:對不起,各位,上次寫了一文,發現高階掃描不能用:) 所以這次寫了一個補充的,呵呵.
作者:oo0o
真實姓名:hang feilu
地址:yn_zt_x school_高200
破解日期:2002.2.13
使用時間:20 m
目標:release iv build 3116 expired 2002/12/31
級別:低
分析:
1.出於測試的原因,小榕並沒有加殼,給破解帶來一定的方便,但是有數字驗證.
2.對國內ip限制.
3.為了方便,不破解key認證,而是暴破.
使用工具:w32dasm 8.93 ,hiew

1.準備工作
將流光目錄fluxay45.exe 用w32dasm反彙編, 並將反彙編內容存為fluxay45.txt(方便測試與修改)
將fluxay45.exe備份到其它目錄
需要了解的基礎:
工具:
w32dasm 用於靜態反彙編
hiew 用於修改程式
彙編命令:
test 測試.(兩運算元作與運算,僅修改標誌位,不回送結果).
je/jz 等於轉移.
jmp 無條件轉移指令.
jle/jng 小於或等於轉移.
-----------------------------------------------------------------------------------------------
2.去除數字驗證
記事本開啟fluxay45.txt,查詢"數字驗證失敗",會找到

* referenced by a (u)nconditional or (c)onditional jump at address:
|:00406e29(u)
|
:00406e30 85c0 test eax, eax
:00406e32 7438 je 00406e6c ;比較,相等就跳,否則就顯示數字驗證失敗,
;改為jmps:)具體步驟見下
:00406e34 a1a4f15800 mov eax, dword ptr [0058f1a4]
:00406e39 51 push ecx
:00406e3a 85c0 test eax, eax
:00406e3c 8bcc mov ecx, esp
:00406e3e 740b je 00406e4b
:00406e40 89642428 mov dword ptr [esp+28], esp

* possible stringdata ref from data obj ->"數字驗證失敗,可能被病毒感染或者捆綁了惡意程式"
->"。"
|
:00406e44 6804b25200 push 0052b204
:00406e49 eb09 jmp 00406e54

開啟hiew,選擇流光目錄下的fluxay45.exe
按f4選擇decode,按f7在hex處填入 85 c0 74 38 a1 a4
(填多點,一次性找到,不然可能找到很多重複程式碼,:)
按f3修改7438為eb38,按f9更新檔案,按f10退出<-注意是按f10,不是esc,不然會不更新檔案.
執行fluxay45.exe試一試,沒有提示,說明成功!退出fluxay45.exe
-----------------------------------------------------------------------------------------------
3.去除國內ip限制
1) pop3/nt/ftp/sql掃描破解
先試一下fluxay45.exe,按ctrl+r填入國內ip網段211.x.x.1 -211.x.x.255 .掃描
可看到"對此ip保留, 忽略..." 字樣
開啟fluxay45.txt ,查詢"對此ip保留",找到如下

* referenced by a (u)nconditional or (c)onditional jump at address:
|:00473f13(c)
|
.... 處理資料部份,省略:)...........以上好複雜~~~~~~~~~:)
:00473fdb 85c0 test eax, eax
:00473fdd 746d je 0047404c ;比較,不同則跳,就是改這兒了!具體見下
:00473fdf 68d4070000 push 000007d4
:00473fe4 e866430600 call 004d834f
:00473fe9 8b0da4f15800 mov ecx, dword ptr [0058f1a4]
:00473fef 33db xor ebx, ebx
:00473ff1 83c404 add esp, 00000004
:00473ff4 3bcb cmp ecx, ebx
:00473ff6 a344045900 mov dword ptr [00590444], eax
:00473ffb 7407 je 00474004

* possible stringdata ref from data obj ->"對此ip保留, 忽略..."
|
:00473ffd 68908d5400 push 00548d90
:00474002 eb05 jmp 00474009

開啟hiew,選擇流光目錄下的fluxay45.exe
按f4選擇decode,按f7在hex處填入 85 c0 74 6d 68 d4(填多點,一次性找到:)
按f3修改746d為eb6d,按f9更新檔案,按f10退出.
執行fluxay45.exe,按ctrl+r試一試.211.x.x.1 - 211.x.x.25
嘿嘿c_c 成功了~~~~~~~
-----------------------------------------------------------------------------------------------
2) 高階掃描破解.
先試一下fluxay45.exe,按ctrl+a填入國內ip網段211.x.x.1 -211.x.x.25 .掃描
可看到"不在此版本的許可的ip範圍內,忽略." 字樣 <====注意: 與pop3/nt/ftp/sql掃描不一樣哦:)
開啟fluxay45.txt ,查詢"不在此版本的許可的ip範圍內",找到了兩處:)
先看第一處

* referenced by a (u)nconditional or (c)onditional jump at address:
|:00466feb(c)
|
..............................略
:00467064 83c404 add esp, 00000004
:00467067 85c0 test eax, eax ;:)大家是不是覺得有點眼熟?
:00467069 746b je 004670d6 ;看來就是改這個了:)
:0046706b 8b1568165500 mov edx, dword ptr [00551668]
:00467071 8955dc mov dword ptr [ebp-24], edx
:00467074 a1a4f15800 mov eax, dword ptr [0058f1a4]
:00467079 c645fc7e mov [ebp-04], 7e
:0046707d 3bc7 cmp eax, edi
:0046707f 7412 je 00467093
:00467081 8b857cffffff mov eax, dword ptr [ebp+ffffff7c]
:00467087 8d4ddc lea ecx, dword ptr [ebp-24]
:0046708a 50 push eax

* possible stringdata ref from data obj ->"%s 不在此版本的許可的ip範圍內,忽略。"
|
:0046708b 68dc715400 push 005471dc
:00467090 51 push ecx
:00467091 eb10 jmp 004670a3

用hiew 改 746b為 eb6b:)
改完後發現不行哦!!!
-----------------------------------------------------------------------------------------------
看下一處:

* referenced by a (u)nconditional or (c)onditional jump at address:
|:004b1bae(u)
|
:004b1afe 8b542418 mov edx, dword ptr [esp+18]
:004b1b02 8d8c2480110000 lea ecx, dword ptr [esp+00001180]
:004b1b09 52 push edx
:004b1b0a e8c133ffff call 004a4ed0
:004b1b0f 85c0 test eax, eax ;:)就只有它了.呵
:004b1b11 7450 je 004b1b63 ;改 74 為eb
:004b1b13 a1a4f15800 mov eax, dword ptr [0058f1a4]
:004b1b18 85c0 test eax, eax
:004b1b1a 7411 je 004b1b2d
:004b1b1c 8b442418 mov eax, dword ptr [esp+18]
:004b1b20 8d4c2414 lea ecx, dword ptr [esp+14]
:004b1b24 50 push eax

* possible stringdata ref from data obj ->"%s 不在此版本的許可的ip範圍內,忽略。"
|
:004b1b25 68dc715400 push 005471dc
:004b1b2a 51 push ecx
:004b1b2b eb0f jmp 004b1b3c

開啟hiew,選擇流光目錄下的fluxay45.exe
按f4選擇decode,按f7在hex處填入 85 c0 74 50 a1 a4 f1(填多點,一次性找到:)
按f3修改7450為eb50,按f9更新檔案,按f10退出.
執行fluxay45.exe,按ctrl+a試一試.211.x.x.1 - 211.x.x.25

wow.提示選擇流光主機:) yeah 成功 第一處改了之後,大家不用改回來:)也許是以前版本的流光核心.
當然如果不能用還是改回來^_^
-----------------------------------------------------------------------------------------------
3)ipc$ 國內ip限制
先試一下fluxay45.exe,新增一個ipc$主機:) x.x.x.x <===感謝"&j快樂王子"提供
點右鍵->探測->探測ipc$使用者列表.
================================
提示:
fluxay 4.5>正在連線主機202.x.x.x...
此ip地址不提供ipc$探測。
沒有使用者。
所有使用者列表執行緒成功退出。
=================================
找到四處!!!
第一處 ^_^
* referenced by a (u)nconditional or (c)onditional jump at address:
|:0047eca2(u)
..................處理資料部份,省略
:0047ed42 85c0 test eax, eax ;有點象哦.
:0047ed44 0f84df000000 je 0047ee29 ;改為 jmp
:0047ed4a 391da4f15800 cmp dword ptr [0058f1a4], ebx ;比較是什麼語言程式碼
:0047ed50 740c je 0047ed5e ;是e文就跳到下面顯示"this ip range is disabled."
:0047ed52 8d4c2410 lea ecx, dword ptr [esp+10]

* possible stringdata ref from data obj ->"此ip地址不提供ipc$探測。"
|
:0047ed56 6874965400 push 00549674
:0047ed5b 51 push ecx
:0047ed5c eb0a jmp 0047ed68

* referenced by a (u)nconditional or (c)onditional jump at address:
|:0047ed50(c)
|
:0047ed5e 8d542410 lea edx, dword ptr [esp+10]

* possible stringdata ref from data obj ->"this ip range is disabled."
|
:0047ed62 6858965400 push 00549658
:0047ed67 52 push edx

用hiew 按f7查詢 上面的那串程式碼(注意上下文程式碼是否一至:)我找了好幾次才找到,小心一點!!!死了別怪我:)
按f3再按回車改je 0047ee29 為 jmp 0047ee29
啟動流光,試一下:)不行哦!!!
-----------------------------------------------------------------------------------------------
看第二處 !_!
* referenced by a (u)nconditional or (c)onditional jump at address:
|:00480f81(u)
|
..........................處理資料部份,省略
:00480ffd 85c0 test eax, eax ;:)呵呵呵.一定是
:00480fff 7440 je 00481041 ;改為 eb
:00481001 393da4f15800 cmp dword ptr [0058f1a4], edi
:00481007 740c je 00481015
:00481009 8d542410 lea edx, dword ptr [esp+10]

* possible stringdata ref from data obj ->"此ip地址不提供ipc$探測。"
|
:0048100d 6874965400 push 00549674
:00481012 52 push edx
:00481013 eb0a jmp 0048101f

開啟hiew,選擇流光目錄下的fluxay45.exe
按f4選擇decode,按f7在hex處填入 85 c0 74 40 39 3d a4(填多點,一次性找到:)
按f3修改7450為eb50,按f9更新檔案,按f10退出.
執行fluxay45.exe,,新增一個ipc$主機:) x.x.x.x
點右鍵->探測->探測ipc$使用者列表.
====================================
顯示:
fluxay 4.5>正在連線主機202.x.x.x...
和主機202.x.x.x空連線建立成功。
正在讀取主機202.x.x.x的使用者列表,請等待...
主機202.x.x.x的使用者 00: administrator* (管理計算機(域)的內建帳戶)
主機202.x.x.x的使用者 01: guest* (供來賓訪問計算機或訪問域的內建帳戶)
讀取主機202.x.x.x的使用者列表完成,2個使用者。

fluxay 4.5>正在連線主機202.x.x.x...
此ip地址不提供ipc$探測。 ?咦?這個是探測什麼的。是不是還有呀。kao再試
所有使用者列表執行緒成功退出。

fluxay 4.5>準備探測主機202.x.x.x...
所有使用者列表執行緒成功退出。
探測202.x.x.x: guest............【空】
....................省了一串:)
探測202.x.x.x: administrator............12345
探測結束,得到主機202.x.x.x的0個帳號。
所有遠端登陸執行緒成功退出。
======================================
-----------------------------------------------------------------------------------------------
第三處@_@
* referenced by a (u)nconditional or (c)onditional jump at address:
|:004849a6(u)
...................省略:)
:00484a19 85c0 test eax, eax ;又是。kao!管它是幹什麼的。
:00484a1b 7440 je 00484a5d ;改:)請大家注意備份。
:00484a1d 391da4f15800 cmp dword ptr [0058f1a4], ebx
:00484a23 740c je 00484a31
:00484a25 8d542410 lea edx, dword ptr [esp+10]

* possible stringdata ref from data obj ->"此ip地址不提供ipc$探測。"
|
:00484a29 6874965400 push 00549674
:00484a2e 52 push edx
:00484a2f eb0a jmp 00484a3b

開啟hiew,選擇流光目錄下的fluxay45.exe
按f4選擇decode,按f7在hex處填入 85 c0 74 40 39 1d a4(填多點,一次性找到:)
按f3修改7450為eb50,按f9更新檔案,按f10退出.
執行fluxay45.exe,刪除剛才使用者列表,再試
點右鍵->探測->探測ipc$使用者列表.
與第二顯示一樣,kao
-----------------------------------------------------------------------------------------------
第四處*_*
referenced by a (u)nconditional or (c)onditional jump at address:
|:004935af(u)
|....................略
:00493631 85c0 test eax, eax ;有備份的舉手。:)
:00493633 0f84b7000000 je 004936f0 ;改!>:|
:00493639 391da4f15800 cmp dword ptr [0058f1a4], ebx
:0049363f 740c je 0049364d
:00493641 8d442410 lea eax, dword ptr [esp+10]

* possible stringdata ref from data obj ->"此ip地址不提供ipc$探測。"
|
:00493645 6874965400 push 00549674
:0049364a 50 push eax
:0049364b eb0a jmp 00493657

用hiew改,不寫了.shit!(噢,英語老師最不讓說的詞^_^下次不說了)
算了,說兩句
是按f3再按回車改 je 004936f0 為 jmp 004936f0

執行fluxay45.exe,刪除剛才的使用者列表
點右鍵->探測->探測ipc$使用者列表.
===============================
顯示:
fluxay 4.5>正在連線主機202.x.x.x...
和主機202.x.x.x空連線建立成功。
正在讀取主機202.x.x.x的使用者列表,請等待...
主機202.x.x.x的使用者 00: administrator* (管理計算機(域)的內建帳戶)
主機202.x.x.x的使用者 01: guest* (供來賓訪問計算機或訪問域的內建帳戶)
讀取主機202.x.x.x的使用者列表完成,2個使用者。

fluxay 4.5>正在連線主機202.x.x.x...
和主機202.x.x.x空連線建立成功。
正在讀取主機202.x.x.x的共享列表,請等待...
讀取主機202.x.x.x的共享列表失敗(錯誤號: 259), ;看看,哦是讀share列表。怎麼能不改這個功能哩:)
對方主機不允許。
所有使用者列表執行緒成功退出。

fluxay 4.5>準備探測主機202.x.x.x...
探測202.x.x.x: guest............【空】
....................省略若干
探測202.x.x.x: administrator............12345
探測結束,得到主機202.x.x.x的0個帳號。
所有遠端登陸執行緒成功退出。
fluxay 4.5>儲存專案....ok.
fluxay 4.5>開啟專案....ok,已經探測0個密碼。
========================================================

ipc$大大大功告成了。:) 好複雜。由於太多,可能有些地方會寫錯,有錯mail me :oo0o@ynmail.com
不過我是可以用:)呵。不要找我要,好象 www.xzero.org 上有破解的。我寫這文是為了讓大家瞭解破解。

4.對了,好象還有日期破解:?5........寫吧。寫完了,我再也不上網了,我要好好學習了:)
請把各位的日期調到2003年,執行fluxay45.exe

提示"流光已經到期"云云
開啟 fluxay45.txt 按ctrl+home 到文字最開頭,以"到期"為關鍵字查詢。又是四處!!!
怎麼會有四處?:)試一下

第一處:
* referenced by a (u)nconditional or (c)onditional jump at address:
|:004f050c(u)
|.......................略
:00406605 3d3e4f123e cmp eax, 3e124f3e
:0040660a 7e4b jle 00406657
:0040660c 6a00 push 00000000
:0040660e 8d4c2434 lea ecx, dword ptr [esp+34]
:00406612 e899a40000 call 00410ab0
:00406617 a1a4f15800 mov eax, dword ptr [0058f1a4]
:0040661c 51 push ecx
:0040661d 85c0 test eax, eax
:0040661f c784245807000000000000 mov dword ptr [esp+00000758], 00000000
:0040662a 8bcc mov ecx, esp
:0040662c 740b je 00406639 ;看著它就想睡覺:) 改!(先備份)
:0040662e 8964240c mov dword ptr [esp+0c], esp

* possible stringdata ref from data obj ->"【流光4.5】已經到期,請到http://www.netxeyes.c"
->"om下載新版本。"
|
:00406632 68a0b15200 push 0052b1a0
:00406637 eb09 jmp 00406642

改 740b 為eb0b ok 執行,?不行?
大家注意到這兒了麼?
:00406605 3d3e4f123e cmp eax, 3e124f3e
:0040660a 7e4b jle 00406657

jle/jng 小於或等於轉移.會不會是小於某個日期就跳呢?:)改
結果:不行。呵。不過一定是改了一部份。(猜)
第二處:

:00407ac5 3d3e4f123e cmp eax, 3e124f3e
:00407aca 7e4b jle 00407b17 ;改 7e4b 為eb4b
:00407acc 6a00 push 00000000
:00407ace 8d4c2434 lea ecx, dword ptr [esp+34]
:00407ad2 e8d98f0000 call 00410ab0
:00407ad7 a1a4f15800 mov eax, dword ptr [0058f1a4]
:00407adc 51 push ecx
:00407add 85c0 test eax, eax
:00407adf c784245807000000000000 mov dword ptr [esp+00000758], 00000000
:00407aea 8bcc mov ecx, esp
:00407aec 740b je 00407af9
:00407aee 8964240c mov dword ptr [esp+0c], esp

* possible stringdata ref from data obj ->"【流光4.5】已經到期,請到http://www.netxeyes.c"
->"om下載新版本。"
|
:00407af2 68a0b15200 push 0052b1a0
:00407af7 eb09 jmp 00407b02

大家用hiew改 7e4b 為 eb4b (不用我寫了吧:)

執行,?可以了?:)呵呵呵。大功告成。^_^

省下的幾處我也難得試了,也許某些地方還有限制,有興趣的自己試吧。

結束語:流光4.5 的破解其實已經很簡單了,大家也不要再為難小榕了:) 大家也許不知道流光2001
的破解要難得多,流光連上幾個網站下載過期資料。:)這個似乎已經去除?
還有那個調查表也比這個難(有興趣的找來破破:)用softice跟蹤吧。靜態反彙編比較麻煩)

本人菜鳥一隻,在網上沒找到流光4.5,也沒有cracker寫它的破解方法,(也許是我找不到吧:)
所以寫此文,有錯的地方大家請指點^_^
如果還有哪不行,請mail me:oo0o@ynmail.com 我不想在qq上聊 <低階問題一概不答,沒時間,sorry>:)

附:有幾個地方也許是以前版本的流光核心,改不改都行,有興趣的試一下。不過我不想改回來了:)
懶!如果死了之類,請改回來。有備份?^_^ 請大家不要入侵國內主機,而是幫他們找洞。我不是cracker
也不是hack,甚至不是script kids.我只是一個菜鳥。^_^ 88

補充:也許小榕以後會對檔案加殼,所以先說了以後也不再寫了.:)
使用工具:typ ,upx1.2 for win (ddcrack.yeah.net有下)以流光4 2915為例
把fluxay4.exe copy 到期 d:\typ
再 d:\typ\typ3 fluxay4.exe
可以看到(如果是xp會有錯誤提示.按忽略即可)
■ extended [32] exe "pe" starting at $0108
■ common object file format - (intel 386)
■ target sytem windows gui
■ upx / markus f.x.j. oberhumer & lászló molnár [0.90 win32,rtm32/pe]

看到了嗎? upx 0.9 壓縮?:)
用upx1.2 中文版的圖形介面(不用我講怎麼用了吧:) 解壓,就可得到正確的反彙編程式碼.呵
mail:oo0o@ynmail.com

呵呵!貼了這篇文章,真的很慚愧,因為我也想到了,可是,也只有在這裡拾人牙慧了!
呵呵!有待學習。

給我曾經深的dodo。
相愛的時光太短,遺忘的過程太長。也許我們只是人生軌跡的一個交點

boyhacker
qq;43711234

原作者:boyhacker
來 源:中國奇兵

相關文章