破解 開機小精靈 2.11 (7千字)

看雪資料發表於2001-11-12

破解 開機小精靈 2.11

軟體名稱:開機小精靈
整理日期:2001.11.10
最新版本:2.11
檔案大小:897KB
軟體授權:共享軟體
使用平臺:Win9x/Me/NT/2000
釋出公司:http://vcghost.yeah.net/
軟體簡介:
  開機小精靈是一個系統監控軟體。主要用於監控你的開機情況,並作出一定的分析,可以作為你判斷系統穩定的一個參考。對你不在情況下,別人對你機器的使用情況做下記錄甚至可以得到別人在你機器上的一切輸入資訊,包括密碼和個人資料。加強你對自己機器的監控和控制,真正成為自己機器的主人。末註冊版可以用於記錄開機狀態分析和資料統計的功能。但不能使用鍵盤監控的高階功能。註冊後將可以使用本軟體的所有功能,所有的警告視窗將消失。並也免費享有以後升級版本一切功能的使用權力。

原版軟體下載: http://newhua.ruyi.com/down/RebootEidolon.zip (華軍,897k)

未註冊版本限制: 功能限制(有提示),啟動彈出提示視窗

破解工具:w32dasm 黃金版中文版、File Info 2.45、UltraEdit、WinHex


  不好意思,在下水平仍然很低很低,暫時還只能爆破,不過這個軟體的註冊碼好像很好找的說...^_^


破解過程:

1. 暴力破解

  先執行軟體,隨便輸入註冊碼註冊,得到錯誤提示“請不要投機取巧,如果你真的對本軟體的高階功能感興趣,請馬上註冊”,OK~用 Fileinfo 看看,沒有加殼,w32dasm 反彙編,看“串式參考”,來到此提示所在區域:


* Reference To: MSVCRT._mbscmp, Ord:0159h
                                  |
:00419081 FF157CE74100            Call dword ptr [0041E77C]
:00419087 83C408                  add esp, 00000008
:0041908A 85C0                    test eax, eax    < ==== 比較...
:0041908C 0F8591000000            jne 00419123      < ==== 跳則註冊碼錯誤,改為 je 00419123 或乾脆 nop 掉
:00419092 33F6                    xor esi, esi
:00419094 89742410                mov dword ptr [esp+10], esi
:00419098 8D442414                lea eax, dword ptr [esp+14]
:0041909C 8D4C240C                lea ecx, dword ptr [esp+0C]
:004190A0 50                      push eax
:004190A1 51                      push ecx
:004190A2 56                      push esi
:004190A3 683F000F00              push 000F003F
:004190A8 56                      push esi
:004190A9 56                      push esi
:004190AA 56                      push esi

* Possible StringData Ref from Data Obj ->"software\microsoft\opennow"  <====很可疑的主鍵啊!!等等我們看
                                                                              看這個地方有什麼玄機^_^
                                  |
:004190AB 68FC604200              push 004260FC
:004190B0 6802000080              push 80000002
:004190B5 C644244401              mov [esp+44], 01
:004190BA 89742430                mov dword ptr [esp+30], esi

* Reference To: ADVAPI32.RegCreateKeyExA, Ord:015Fh
                                  |
:004190BE FF1508E04100            Call dword ptr [0041E008]
:004190C4 85C0                    test eax, eax
:004190C6 753B                    jne 00419103
:004190C8 8B442408                mov eax, dword ptr [esp+08]
:004190CC 8B74240C                mov esi, dword ptr [esp+0C]
:004190D0 53                      push ebx
:004190D1 50                      push eax
:004190D2 89742418                mov dword ptr [esp+18], esi
:004190D6 8BD8                    mov ebx, eax

* Reference To: KERNEL32.lstrlenA, Ord:0308h
                                  |
:004190D8 FF157CE14100            Call dword ptr [0041E17C]
:004190DE 40                      inc eax
:004190DF 50                      push eax
:004190E0 53                      push ebx
:004190E1 6A01                    push 00000001
:004190E3 6A00                    push 00000000

* Possible StringData Ref from Data Obj ->"OpenNow"
                                  |
:004190E5 68506B4200              push 00426B50
:004190EA 56                      push esi

* Reference To: ADVAPI32.RegSetValueExA, Ord:0186h
                                  |
:004190EB FF150CE04100            Call dword ptr [0041E00C]
:004190F1 85F6                    test esi, esi
:004190F3 5B                      pop ebx
:004190F4 740D                    je 00419103
:004190F6 56                      push esi

* Reference To: ADVAPI32.RegCloseKey, Ord:015Bh
                                  |
:004190F7 FF1500E04100            Call dword ptr [0041E000]
:004190FD 33F6                    xor esi, esi
:004190FF 89742410                mov dword ptr [esp+10], esi

* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:004190C6(C), :004190F4(C)
|
:00419103 6A00                    push 00000000

* Possible StringData Ref from Data Obj ->"註冊成功"  <====  註冊成功資訊
                                  |
:00419105 68506E4200              push 00426E50

* Possible StringData Ref from Data Obj ->"你已經註冊成功,請重新啟動軟體開啟高階功能"
                                  |
:0041910A 68246E4200              push 00426E24
:0041910F 8BCF                    mov ecx, edi

* Reference To: MFC42.Ordinal:1080, Ord:1080h
                                  |
:00419111 E82C130000              Call 0041A442
:00419116 85F6                    test esi, esi
:00419118 741C                    je 00419136
:0041911A 56                      push esi

* Reference To: ADVAPI32.RegCloseKey, Ord:015Bh
                                  |
:0041911B FF1500E04100            Call dword ptr [0041E000]
:00419121 EB13                    jmp 00419136

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0041908C(C)                                            < ==== 從這裡慢慢往上看是哪裡出錯的
|
:00419123 6A00                    push 00000000

* Possible StringData Ref from Data Obj ->"註冊失敗"
                                  |
:00419125 68186E4200              push 00426E18

* Possible StringData Ref from Data Obj ->"請不要投機取巧,如果你真的對本軟體的高階功能感"
                                        ->"興趣,請馬上註冊"      <====  在這裡錯誤,往上找是哪裡跳過來的
                                  |
:0041912A 68D86D4200              push 00426DD8
:0041912F 8BCF                    mov ecx, edi



至此,執行軟體,輸入任意註冊碼註冊即可成功,關閉程式,再開啟,也沒有彈出提示註冊的視窗了,原來不能使用的高階選項也ok了...(不會吧?這麼簡單???我都不太敢相信了啊~~~)。如果怕不保險的話,可以順手把未註冊使用者不能使用的提示資訊 nop 掉,有好幾個地方。(最近發現,9090 真的很好用~~)


剛才在上面的過程中看到了一個很可疑的主鍵“software\microsoft\opennow”,我們不妨看看,到底裡面是什麼東東~~
用 Regmon 監視了一下軟體啟動到關閉的登錄檔訪問,得到這麼一句:
16.25505329    OpenNow.exe:1068    QueryValue    HKLM\software\microsoft\opennow\OpenNow    SUCCESS    "303735363036303436353231"    
哇!這個 "303735363036303436353231" 非常的可疑啊~~

把這個主鍵刪除,然後啟動軟體,又變成未註冊版本了,用上面得到的數字註冊,居然成功了!!我@#$%^&...這個軟體在我爆破後,隨便輸入註冊碼註冊,居然會自動將正確的註冊碼寫入登錄檔??不是吧??我咧……居然有這種軟體……


2. Winhex 找出註冊碼

這個不需要多說吧,很簡單的說~~

啟動開機小精靈,隨便輸入註冊碼,Name:炎之川,S/N:1234567890 ,並點選"註冊",出現註冊碼錯誤提示時不要點確定,啟動 WinHex ->工具 -> Ram編輯器,選擇“OpenNow.exe”-> 主要記憶體 -> 搜尋 1234567890,在搜尋到的第二處往上看一些,就是正確的註冊碼:“303735363036303436353231”。


總結一下,我的註冊碼: Name:炎之川,S/N:303735363036303436353231,OK~~收工~~


話說回來,感覺似乎太簡單了一些,不知道里面還有沒有什麼陷阱!哪位大哥感興趣,不妨幫我看看有沒有什麼問題!我在我的 Windows 2000 及 Windows ME OS下,測試有效,確實可用,所有的功能均無問題。


另,我的水平很低很低,所以寫的破文也很一般(不要問我演算法,不要問我動態除錯……暫時我還沒學會~~嘿嘿~~),如果有人還想看這類的文章(我個人以為還是很適合什麼都不會的初學者看的^_^),我就繼續多寫幾篇!




                                              炎之川 於 2001.11.12
                                              mali: skipli@sina.com

相關文章