OllyDbg 設置斷點的操做方法

Ollydbg是一個新的32位的彙編層調試軟件。適應於windows9八、me、2000、xp和2003操做系統。因爲他具備圖形窗口界面,因此操做方便、直觀,是cracker的好工具。 
因爲Ollydbg沒有了TRW2000的萬能斷點,因此許多的新手感受到用Ollydbg斷點很差找。如今我來的說說Ollydbg下中斷的幾種方法。本人是個菜鳥,水平有限,可能不能完整的寫出來,也可能存在錯誤。請你們指正。 
我所表述的是Ollydbg v1.10中文版,其餘版本和英文版下本身參考。 

第一 尋常斷點 
Ollydbg中通常下中斷的方法,就是在程序的地址處用鼠標選擇這一行。而後按F2鍵,這時被選擇的那一行的地址會變成別的顏色,就表示這個地址處下了中斷。而後運行程序時只有到這個地址處就會被Ollydbg中斷。 
這個方法用的比較多,因此把他稱做尋常斷點。 
若是有命令行插件,就能夠在命令窗口中輸入BPX xxxxxxxx 下斷點。 
優勢:只要本身懷疑是重要的代碼處均可如下這種下斷點,不受條件的限制,因此方便實用。 
缺點:若是不知道代碼功能下斷點具備盲目性。 

第二 API斷點 
Ollydbg中通常下API中斷的方法,有二種。 
1. 在代碼窗口中點鼠標右鍵,出現功能菜單。在[搜索]選擇項下有〔當前模塊的名稱〕和〔所有模塊的名稱〕倆項,選擇其中的一項就打開了程序調用API的窗 口,在這個窗口中選擇你要跟蹤的API函數名。雙擊這個函數就能到程序的調用地址處。而後用F2下中斷。也能夠在API窗口中選擇須要跟蹤的函數點鼠標右 鍵出現功能菜單,選擇〔在每一個參考設置斷點〕。一樣下了斷點。 
快捷方式:Ctrl+N 

2. 在命令行窗口中輸入BPX API函數名或者BP API函數名 後回車。這時出現了全部調用這個函數的地址的窗口,在這個窗口中能夠看到調用這個API函數的地址已改變了顏色。說明下好了斷點。 
說明一下:BPX通常中斷在程序調用API的地址處。BP會中斷在API的寫入地址處。二這有所不一樣,根據須要選擇。 
優勢:這種方法下的斷點是針對每個API函數的,因此具備明確的目的。 
缺點:關鍵的API函數不容易找到。因此有時下的斷點沒有做用。 

第三 內存斷點(跟蹤關鍵數據的斷點) 
Ollydbg中的內存斷點至關於TRW中的bpm 斷點。 
下斷點的方法是:在程序運行中斷時選擇界面中的轉存窗口,用光標選擇內存中的一段關鍵數據(顏色會改變),而後右擊鼠標出現功能菜單。選擇〔斷點〕項,其中有二個選擇〔內存訪問〕和〔內存寫入〕。 
〔內 存訪問〕斷點是程序運行時要調用被選擇的內存數據時就會被Ollydbg中斷,根據這個特色在破解跟蹤時只要在關鍵數據內存中下中斷就能夠知道程序在什麼 地方和何時用到了跟蹤的數據。對於一些複雜算法和流程變態的算法跟蹤有很大的幫助。從破解上講,一個註冊碼的生成必定是由一些關鍵數據或者原始數據計 算來的。因此在內存中必定要用到這些關鍵數據。那麼〔內存訪問〕斷點就是最好的中斷方法。 
〔內存寫入〕斷點是程序運行時向被選擇的內存地址寫入數據時就會被Ollydbg中斷。根據這個特色在破解時能夠跟蹤一個關鍵數據是何時生成的,生成的代碼段在那個地方。因此一個關鍵的數據若是不知道他的由來就能夠用〔內存訪問〕斷點查找計算的核心。 
內 存中斷的下斷點還有另外的一種方法:程序運行時若是知道關鍵的數據,好比咱們輸入的試驗碼、程序生成的序列號等。這時在內存中必定存在這些數據。用Alt +M打開內存窗口,在這個窗口中搜索知道的關鍵數據。用光標選擇這些數據一樣下內存中斷,這種方法更容易找的關鍵的數據。 
優勢:斷點是直接面向關鍵數據的,因此比較容易到核心部分。 
缺點:內存斷點從新運行後會消失,干擾比較多。 

第四 硬件斷點(跟蹤關鍵標誌的斷點) 
硬件斷點是Olldbg所特有的斷點,他不會由於從新運行就銷燬,只要不刪除。跟蹤這個程序時就有效。但他在98系統下會不起做用。 
硬 件斷點是根據關鍵標誌回逆到關鍵代碼的好方法。下中斷的方法和內存斷點的方法相同,有三個方式〔硬件訪問〕、〔硬件寫入〕、〔硬件執行〕。通常用前2個。 他也一樣有內存斷點的特性,因此能夠用內存斷點的地方也能夠用硬件斷點。這裏介紹利用他來跟蹤註冊標誌的使用方法,通常軟件的註冊都用到了標誌比較。即在 內存地址中有一個標誌,在判斷是否是註冊時比較標誌的值。不一樣的值表示不一樣的註冊狀態。這個標誌的地址通常比較固定。根據這個特色能夠下硬件斷點來跟蹤標 志位是什麼地方被標誌的。 
方法:在轉存窗口中選擇到標誌存放的內存地址處,而後選擇標誌值。下〔硬件寫入〕中斷(根據標誌的字節下不一樣的長 度)。從新運行程序你會發現Ollydbg會不斷的中斷在這個標誌的內存地址處。在功能菜單的〔調試〕選項下選擇〔硬件斷點〕就打開了硬件斷點的窗口,在 這個窗口中選擇〔跟蹤〕,這時轉存窗口就會來到被下中斷的內存地址處。運行程序跟蹤內存地址中的值就會知道被賦標誌的代碼,跟蹤到計算的核心。〔硬件訪 問〕的使用能夠知道程序在運行時多少地方用到了這個註冊標誌。對於破解複雜效驗的程序十分的有效。 
直接在命令欄裏下bh ****硬件斷點
相關文章
相關標籤/搜索