簡單軟體破解入門

來源:互聯網
上載者:User

標籤:

 

一、破解準備:

組合一:

偵殼 language.exe

脫殼AspackDie.exe

反編譯 W32Dasm黃金中文版

十六進位編輯器 UltraEdit

組合二:

PEid

Ollydbg 

二、破解軟體步驟:
1.查殼

一般軟體都會加殼,所以我們想破解軟體,首先必須知道待破解的軟體所加殼的類型。在這之前,我們需要先瞭解殼的概念。什麼是殼?所謂殼就是一個保護程式,將可執行檔壓縮,保護軟體著作權資訊,不讓人隨意改動。最常見的加殼軟體有ASPACK,UPX,PE compact等等。

其中查殼工具有language.exe、PEid等等。,我們便可以知道待破解軟體是採用什麼語言編寫的,並且加了什麼類型的殼。

2. 脫殼

所謂脫殼,就是將已經加殼的程式從殼中剝離出來。

首先需要介紹OEP的概念,OEP就是原程式的進入點,也就是真正的進入點。當被加殼的程式運行後,首先啟動並執行是殼程式,殼程式會將原程式還原到記憶體中並將控制權返還。OEP總會在這期間被脫殼者找到。只要找到這個OEP,就可以將原程式從記憶體中dump出來,而後針對dump出的程式進行處理,最終得到原程式。一般來說,脫殼就是要找程式的OEP,得到這個OEP,脫殼就完成一半了,剩下的就是修複工作了。

脫殼的方法有很多種,如:單步跟蹤法、ESP定律法、二次斷點法、末次異常法、類比跟蹤法、SFX自動脫殼法、出口標誌法、使用脫殼指令碼輔助脫殼、使用脫殼工具脫殼。其中,對於比較簡單常見的殼,我們可以脫殼工具來協助我們解決問題。在這裡我就不贅述其他方法了,可以參考http://www.cnblogs.com/einyboy/archive/2012/05/19/2508696.html

 

其中AspackDie.exe是一種針對ASpack殼的專業脫殼工具。通過這個工具的脫殼,我們可以得到一個脫殼後的unpacked.exe。
3.反組譯碼

所謂反組譯碼(Disassembly),即把目標代碼轉為彙編代碼的過程。其中常用的工具軟體有:反編譯 W32Dasm、Ollydbg等等。對於轉換過來的彙編代碼,一般會比較長,且晦澀難懂,一般人往往不知道從哪裡入手。在這個過程中,最重要的是尋找到破解軟體的關鍵點。首先我們可以利用反組譯碼軟體的功能尋找“註冊碼錯誤”、“註冊成功”等提示性的參考串,縮小我們需要閱讀的代碼範圍。

 

在“註冊碼錯誤”參考串附近,我們可以盡量尋找call子函數調用和有條件跳轉(除了jmp的其它跳:je,jne,jz,jnz)。對於這些關鍵處,一般就是我們所需要尋找的破解軟體的關鍵點。但是不盡然,對於具體的問題,我們還是需要通過閱讀彙編代碼來分析,所以我們大學裡面學的組合語言在這裡就很有用了。

實際修改地址(位移地址)和行地址(虛擬位址)pw32dasmgold反組譯碼出來的代碼由三列組成。第一列為行地址(虛擬位址)。第二列為機器碼(最終修改時用ultraedit修改)。第三列為彙編指令。

 

其中在中,關鍵點為jne 004ACCB1。從反組譯碼軟體的提示欄我們可以看到這條跳轉指令的位移地址0xacb4b。 


4.修改機器碼

由於exe可執行檔是二進位檔案,我們可以通過UltraEdit軟體轉換為十六進位顯示。當我們修改了檔案中十六進位,就相當於修改了可執行檔的內容。

開啟十六進位編輯器 UltraEdit,開啟脫殼後的unpacked.exe,直接按ctrl+g,出現對話方塊,輸入0xacb4b(即位移地址)。

在這裡我們將指令jne 004ACCB1對應的機器碼)0F8560010000修改為0F8460010000,也就是說我們將指令改為了je 004ACCB1。這樣的話,程式在判斷跳轉條件是,幾乎不會彈出“註冊錯誤”的對話方塊,而總是執行“註冊成功”那一段子程式。

常見指令對應機器碼


  三、個人心得:

1.不要畏懼困難
2.具體問題具體分析
(1)從哪裡來,經過哪裡,到哪裡去
(2)追根訴源,逐步分析

3.遇到難題,需要堅持
(1)開闊思路,逆向思維
(2)考慮其他情況

簡單軟體破解入門

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.