這是很早以前寫的一篇文章了,是一個破解軟件試用期的示例。裏面主要是一些彙編語言的知識點。再次分享。工具
軟件破解只是在於交流技術,不要用於商業目的,咱們應該尊重軟件開發者付出的心血和汗水。測試
主要用的工具是 Ollydbg( 反彙編工具),簡稱OB。blog
測試破解的軟件是一款超市收銀系統,Windows版應用程序,30天使用期限。事件
使用OB打開要 破解的exe文件。圖片
打開後以下圖,咱們看到了熟悉的彙編語言。開發
登陸的時候會彈出 「適用期限已到」的緣由是由於點擊肯定後,在這個按鈕的處理事件裏面會去比較當前的時間和第一次使用的時間.這就是破解的入口點,須要找到這個按鈕的處理事件。cmd
在下圖位置點擊 [右鍵]->查找->全部參考文本子串。 it
彈出下面的窗口,那個紅色的圈裏就是上面提到的那個按鈕,其實這裏面有不少按鈕,這個須要憑藉經驗和感受去肯定是哪個了。登錄
雙擊 ASCII 「cmdOK」 彈出下面的窗口:軟件
將光標向上移動幾行 發現 DD shop.004478E4。
用鼠標選中,按下回車鍵, DB會自動爲咱們跳轉到下面的位置.
用鼠標選中,按下回車鍵, DB會自動爲咱們跳轉到下面的位置. 這就是這個按鈕處理事件的入口點. 在這裏按F2 設置一個斷點.這樣當你按肯定後,程序將被DB攔截.
操做過程: F9(運行啓動程序)->輸入用戶名密碼->按肯定鍵->(程序被斷點攔截到這裏). 接下來能夠按F8鍵,單步運行程序,一邊運行一邊觀察反饋結果.
單步走的這裏的時候發現一條跳轉語句,以下圖所示.他的做用是當沒用超過適用期限的時候就跳轉的 006046C0處執行.若是超過適用期限,就繼續向下執行.在下面的幾行裏面有:
這段代碼的做用就是彈出那個對話框,提示適用期限已到的.
那咱們把JE Shop.006046C0 改爲JMP Shop.006046C0。意思就是無條件的跳轉。不管是否超過適用期程序都會跳轉的正常的地方繼續執行,不會中止。
修改方法是雙擊 JE Shop.006046C0 在彈出的對話框中輸入JMP Shop.006046C0,而後點「彙編」
而後點擊 右鍵-〉複製到可執行文件-全部修改-〉保存。
到此,適用期限的問題已經破解。
本文只是提供了一種軟件破解的思路。對於複雜的軟件可能須要進行更深層次的分析。
再次強調,研究軟件破解技術的目的是用於技術交流,提高技術水平,探索解決問題的思惟邏輯。請你們不要將軟件破解用於商業目的。