史萊姆論壇

史萊姆論壇 (http://forum.slime.com.tw/)
-   Hacker/Cracker 及加解密技術文件 (http://forum.slime.com.tw/f132.html)
-   -   次數限制?169字元輕鬆搞定 (http://forum.slime.com.tw/thread87573.html)

psac 2003-12-21 12:14 AM

次數限制?169字元輕鬆搞定
 
次數限制?169字元輕鬆搞定
為了一個很狡猾的學習軟體(駕駛員相關),浪費了不少時間,我和我的老機都很累了。。。今天想輕鬆一下,順便找回一點自信,故從網上拖了一個《斗地主4.8 build 462》下來。。。
軟體名稱:斗地主4.8 build 462
保護主式:30次使用限制和每次只能玩7局的限制
得力工具:Regmon v4.12
DIY目的:解除30次使用限制(至於只能玩7局的限制,一方面我還有其它事得做,另一方面,我想每個像我一樣的Cracker都很忙。。。好像玩這種遊戲永遠也不玩不到7局的。。。呵呵。。。為自己找了個好理由^Q^)
鄭重聲明:寫這篇文章的目的只是為了和所有愛好crack的朋友交流,希望能取到拋磚引玉的效果。如果周軍先生也看到的話,我要說的是,假使此文侵犯了你的利益,說明你的軟體這方面很弱,確需改進!
哪哪哪哪哪哪哪哪哪哪哪哪哪哪Begin!哪哪哪哪哪哪哪哪哪哪哪哪哪哪
一、首先用winice跟蹤,得知該軟體的註冊碼驗證是:輸入註冊碼時在註冊表裡寫入一個格式化的regcode,當下次啟動該軟體時使用RegQueryvalueexA來讀出並對比註冊碼。。。不過我們今次的目的只是為了解除30次使用限制,別的就不多說,考慮到作者會罵我。
二、用peid0.8分析主程式文件ddz.exe,顯視UPX 0.89.6 - 1.02 / 1.05 - 1.22 -> Markus & Lazlo。。。用trw2000脫殼後能正常執行,但是點擊其功能表按鈕時就導致自動關機,又用winice及trw2000試攔了很久。。。終不得要領,不知其關機動作是使用了什麼鬼東東,希望哪位高手能指點一二。。。
三、既然脫殼後找不到其關機的程式碼,也不想讓老機再受折磨,只好放棄,另想別的辦法。
四、開啟regmon,準備好後執行斗地主。。。在捕獲的事件列表上看到了關於斗地主4.8的內容:
783 Ddz OpenKey HKLM\SOFTWARE\Microsoft\VBA\Monitors NOTFOUND
784 Ddz OpenKey HKLM\SoftWare\DDZ\Infomation SUCCESS hKey: 0xCAA307F0
785 Ddz Query類型Ex HKLM\SoftWare\DDZ\Infomation\ProductId SUCCESS "DDZ040020020378"
786 Ddz CloseKey HKLM\SoftWare\DDZ\Infomation SUCCESS
787 Ddz OpenKey HKLM\SoftWare\DDZ\Infomation SUCCESS hKey: 0xCAA307F0
788 Ddz Query類型Ex HKLM\SoftWare\DDZ\Infomation\LicenseNumber SUCCESS "4"------------------------>注意這裡!指明程序已經執行了4次。。。
789 Ddz CloseKey HKLM\SoftWare\DDZ\Infomation SUCCESS
790 Ddz OpenKey HKCU\Control Panel\International SUCCESS hKey: 0xCAA20060
791 Ddz OpenKey HKLM\SoftWare\DDZ\Infomation SUCCESS hKey: 0xCAA307F0
792 Ddz Query類型Ex HKLM\SoftWare\DDZ\Infomation\SetupDir SUCCESS "G:\DDZ"
793 Ddz CloseKey HKLM\SoftWare\DDZ\Infomation SUCCESS
794 Ddz OpenKey HKLM\Software\Microsoft\Windows\CurrentVersion SUCCESS hKey: 0xCAA307F0
795 Ddz Query類型Ex HKLM\Software\Microsoft\Windows\CurrentVersion\ProductName SUCCESS "Microsoft Windows 98"
796 Ddz CloseKey HKLM\Software\Microsoft\Windows\CurrentVersion SUCCESS
797 Ddz OpenKey HKLM\SoftWare\DDZ\Infomation SUCCESS hKey: 0xCAA307F0
798 Ddz Query類型Ex HKLM\SoftWare\DDZ\Infomation\Version SUCCESS "4.8 Build 462"
799 Ddz CloseKey HKLM\SoftWare\DDZ\Infomation SUCCESS
800 Ddz OpenKey HKLM\SoftWare\DDZ\Infomation SUCCESS hKey: 0xCAA307F0
801 Ddz Query類型Ex HKLM\SoftWare\DDZ\Infomation\CPUCode SUCCESS "4622870839"
802 Ddz CloseKey HKLM\SoftWare\DDZ\Infomation SUCCESS
803 Ddz OpenKey HKLM\Software\Microsoft\Windows\CurrentVersion SUCCESS hKey: 0xCAA307F0
804 Ddz Query類型Ex HKLM\Software\Microsoft\Windows\CurrentVersion\ProgrameID SUCCESS "4" ------------------------>注意這裡!這裡好指明了程序已經執行了4次。。。
805 Ddz CloseKey HKLM\Software\Microsoft\Windows\CurrentVersion SUCCESS
806 Ddz OpenKey HKLM\SoftWare\DDZ\Infomation SUCCESS hKey: 0xCAA307F0
807 Ddz Query類型Ex HKLM\SoftWare\DDZ\Infomation\regcode SUCCESS " "
808 Ddz CloseKey HKLM\SoftWare\DDZ\Infomation SUCCESS
809 Ddz Query類型Ex 0xC1903230\ASYCFILT NOTFOUND

五、大家看到regmon的強大之處了吧,一下子讓我們得到了這麼多珍貴的信息,不過,對於此次的目的,只要注意「788 Ddz Query類型Ex HKLM\SoftWare\DDZ\Infomation\LicenseNumber SUCCESS "4"」和「804 Ddz Query類型Ex HKLM\Software\Microsoft\Windows\CurrentVersion\ProgrameID SUCCESS "4"」這麼兩條就足夠了,程序在每次啟動時都要檢查這兩條註冊表信息,如果>=30,就彈出註冊對話視窗,點擊取消或輸入錯誤的註冊碼都會讓你無福消受。。。。
六、現在,我們可以修改註冊表了,將以上兩項的值改為0(一定要兩項哦!只改一項的話是沒用的,不信你試試^Q^),再次執行程序,點擊「關於」,你看到了什麼?---------已用次數:1次。。。。呵呵,就這麼簡單!
七、用記事本寫出「延時器」如下:
REGEDIT4

[HKEY_LOCAL_MACHINE\Software\DDZ\Infomation]

"LicenseNumber"="0"

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion]

"programeID"="0"
另存新檔*。reg後,我們的目的達到了!因為儲存後的reg文件只有169字元,故引出了文章的題目。。。。
八、總結,雖然採用了很「綠色」的方法解決了程序的次數限制,但美中不足的是當程序執行次數達到30次時都要執行一次我們寫出的reg文件,怪只怪在下學藝不精。。。攝寫此文的原因,一是希望啟發像我這樣的初學者,在pj時不要在一棵樹上吊死,多一點靈感你就成功了一半!二是希望能得到高手們的賜教,像前面說的一樣取到拋磚引玉的效果。
九、再見!

作者:飛龍狗狗 2002.10.8 希望保持文章的完整性


所有時間均為台北時間。現在的時間是 05:43 AM

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

『服務條款』

* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *


SEO by vBSEO 3.6.1