ollydbg中文版是當前逆向工程主流的一款od反匯編工具,界面采用 BoOMBoX/TSRh2004 制作的美化界面,是目前為止最流行的調試解密工具。該軟件適合32位64位動態調試,調試過程可隨時插入全局標簽,并且支持源碼級調試和代碼高亮功能,可以識別所有 Borland 和 Microsoft 格式的調試信息,包括源代碼、函數名、標簽、全局變量、靜態變量。軟件會自動運行一個可執行程序,這個程序會加載鏈接庫,并允許您調用鏈接庫的輸出函數,這樣減少了出錯的可能性,使調試工作更加容易。不僅如此,ollydbg本身附帶了118脫殼腳本和各種插件,能夠支持Windows平臺下的32/64位系統上使用是反匯編工作必備的調試工具,基本已經完全取代了SoftICE,送給有需要的小伙伴參考借鑒。
ollydbg軟件界面介紹
1、反匯編窗口
ollydbg在這里顯示反匯編代碼,我們將要以OllyDbg的默認配置調試分析你打開的程序。 調試選項可以在Options->Debugging options里更改。
2、寄存器
第二個重要的窗口——寄存器窗口??匆幌逻@個在OllyDbg最右邊的窗口,它出現了很多信息。
3、堆棧窗口
默認情況下,它顯示ESP寄存器指向的信息(也是最重要的),但是你可以改變它的顯示模式來顯示來自涉及EBP的信息。這需要在這個窗口上點擊右鍵,選擇GO to EBP。再次點擊右鍵選擇Go to ESP,回到先前窗口。
4、數據窗口(dump)
默認的模式是最常用的,我們還可以改變它以顯示反匯編代碼(Disassemble),文本(Text)和其它格式(Short,Long,Float)。現在我們了解了OllyDbg的最主要的四個窗口。還有一些窗口沒有直接顯示,可以通過菜單或控制面板上的圖標按鈕訪問。
ollydbg中文版使用教程
一、修改字符串
1、打開ollydbg,載入目標程序,如下圖。
2、在匯編窗口中點擊鼠標右鍵,選中strfinder字符查找插件,選擇搜索ascII字符串,如下圖。
3、找到我們要修改的字符串,雙擊追蹤到匯編窗口,如下圖。
4、在匯編窗口中,點擊鼠標右鍵,選擇數據窗口中跟隨,立即常數,如下圖。
5、在數據窗口中,選擇一段內存,不要超過了原來字符串的長度,點擊鼠標右鍵,選擇編輯--二進制編輯,如下圖。
6、在編輯數據地址對話框中的mbcs欄輸入我們的字符,如下圖。
7、點擊hex欄,在剛剛改過的字符后面輸入00 00來截斷字符串,點擊確定,如下圖。
8、點擊鼠標右鍵,選擇編輯--復制所有改變到可執行文件,如下圖。
9、點擊鼠標右鍵,點擊保存文件,如下圖 。
10、在彈出的文件已更改的提示中,選擇是,如下圖。
11、輸入文件名,點擊保存,如下圖。
12、雙擊打開我們保存的程序,修改成功,結果如下圖。
二、在ollydbg中設置斷點
1、打開ollydbg,加載需要調試的程序,如下圖。
2、找到我們需要下斷點的地方,點擊F2,這時在地址處就有紅色表示,即為斷點,如下圖。
3、下完斷點后,我們點擊運行,工具欄上的三角符號,這時程序將運行到我們下斷點的位置,這時我們可以看到內存數據和寄存器都有變化,如下圖。
4、再次點擊f2,可以取消斷點,如下圖。
5、如果我們想重新加載程序,我們可以點擊工具欄的額后退按鈕,如下圖。
6、點擊后,ollydbg會提示重新加載可執行文件,我們點擊yes,如下圖。
7、稍等片刻,將會加載完成,程序停在程序執行的入口,如下圖。
軟件功能
1、直觀的用戶界面,沒有神秘的命令
2、代碼分析-跟蹤寄存器、識別過程、循環、API調用、開關、表、常量和字符串
3、直接加載和調試DLL
4、目標文件掃描-從目標文件和庫中查找例程
5、允許用戶定義標簽、注釋和功能描述
6、了解Borland格式的調試信息
7、在會話之間保存補丁,將其寫回可執行文件并更新補丁
8、開放式架構-許多第三方插件可用
9、無需安裝-注冊表或系統目錄中沒有垃圾
10、調試多線程應用程序
11、附加到正在運行的程序
12、可配置的反匯編程序,支持MASM和IDEAL格式
13、MMX,3DNow!以及SSE數據類型和指令,包括Athlon擴展
14、完全支持UNICODE
15、動態識別ASCII和UNICODE字符串-也是Delphi格式!
16、識別復雜的代碼構造,如調用跳轉到過程
17、解碼對超過1900個標準API和400個C函數的調用
18、從外部幫助文件中提供有關API函數的上下文相關幫助
19、設置條件、日志、內存和硬件斷點
20、跟蹤程序執行,記錄已知函數的參數
21、顯示修復
22、動態跟蹤堆棧幀
23、搜索不精確的命令和掩碼二進制序列
24、搜索整個分配的內存
25、查找對常量或地址范圍的引用
26、檢查和修改內存,設置斷點并實時暫停程序
27、將命令匯編成最短的二進制形式
軟件快捷鍵
OD界面-無論當前的OllyDbg窗口是什么,這些快捷鍵均有效:
1、Ctrl+F2 - 重啟程序,即重新啟動被調試程序。如果當前沒有調試的程序,OllyDbg會運行歷史列表[historylist]中的第一個程序。程序重啟后,將會刪除所有內存斷點和硬件斷點。譯者注:從實際使用效果看,硬件斷點在程序重啟后并沒有移除。
2、F3 - 彈出“打開32位.EXE文件”對話框[Open 32-bit .EXE file],您可以選擇可執行文件,并可以輸入運行參數。
3、F7 -單步步入到下一條命令,如果當前命令是一個函數[Call],則會停在這個函數體的第一條命令上。如果當前命令是是含有REP前綴,則只執行一次重復操作。
4、F8 -單步步過到下一條命令。如果當前命令是一個函數,則一次執行完這個函數(除非這個函數內部包含斷點,或發生了異常)。如果當前命令是含有REP前綴,則會執行完重復操作,并停在下一條命令上。
5、F9 - 讓程序繼續執行。
6、Ctrl+F11-Run跟蹤步入,一條一條執行命令,進入每個子函數調用,并把寄存器的信息加入到Run跟蹤的存儲數據中。Run跟蹤不會同步更新CPU窗口。
7、F12 - 停止程序執行,同時暫停被調試程序的所有線程。請不要手動恢復線程運行,使用繼續執行快捷鍵或菜單選項(像 F9)。
8、Alt+B - 顯示斷點窗口。在這個窗口中,您可以編輯、刪除、或跟進到斷點處。
9、Alt+C - 顯示CPU窗口。
10、Alt+E - 顯示模塊列表[list of modules]。
11、Alt+K - 顯示調用棧[Call stack]窗口。
12、Alt+L - 顯示日志窗口。
13、Alt+M - 顯示內存窗口。
14、Alt+O - 顯示選項對話框[Options dialog]
15、Ctrl+P - 顯示補丁窗口。
16、Ctrl+T - 打開 暫停 Run跟蹤 對話框
17、Alt+X - 關閉 OllyDbg。
更新日志
v2.01版本
1、對Ollydbg的窗口簽名進行了更改,從而避免被針對性檢測。
2、對Ollydbg的菜單做出調整。
3、針對一些有可能被檢測的插件進行了刪減。
4、修改了一些可能被檢測的內容。
5、更新ollydbg的插件為目前較新的版本。




