OD常用快捷鍵

所有窗口

Ctrl+F2:重啓程序,即重新啓動被調試程序。如果當前沒有調試的程序,OllyDbg會運行歷史列表[history list]中的第一個程序。程序重啓後,將會刪除所有內存斷點和硬件斷點。(注:從實際使用效果看,硬件斷點在程序重啓後並沒有移除)

Alt+F2:關閉,即關閉被調試程序。如果程序仍在運行,會彈出一個提示信息,詢問您是否要關閉程序。

F3:彈出“打開32位.EXE文件”對話框[Open 32-bit .EXE file],您可以選擇可執行文件,並可以輸入運行參數。

Alt+F5:讓OllyDbg總在最前面。如果被調試程序在某個斷點處發生中斷,而這時調試程序彈出一個總在最前面的窗口(一般爲模式消息或模式對話框[modal message or dialog]),它可能會遮住OllyDbg的一部分,但是我們又不能移動最小化這個窗口。激活OllyDbg(比如按任務欄上的標籤)並按 Alt+F5,OllyDbg將設置成總在最前面,會反過來遮住剛纔那個窗口。如果您再按一下Alt+F5,OllyDbg會恢復到正常狀態。 OllyDbg是否處於總在最前面狀態,將會保存,在下一次調試時依然有效。當前是否處於總在最前面狀態,會顯示在狀態欄中。

F7:單步步入到下一條命令,如果當前命令是一個函數[Call],則會停在這個函數體的第一條命令上。如果當前命令是是含有REP前綴,則只執行一次重複操作。

Shift+F7:與F7相同,但是如果被調試程序發生異常而中止,調試器會首先嚐試步入被調試程序指定的異常處理(請參考忽略Kernel32中的內存非法訪問)。

Ctrl+F7:自動步入,在所有的函數調用中一條一條地執行命令(就像您按住F7鍵不放一樣,只是更快一些)。當您執行其他一些單步命令,或者程序到達斷點,或者發生異常時,自動步入過程都會停止。每次單步步入,OllyDbg都會更新所有的窗口。所以爲了提高自動步入的速度,請您關閉不必要成窗口,對於保留的窗口最好儘量的小。按Esc鍵,可以停止自動步入。

F8:單步步過到下一條命令。如果當前命令是一個函數,則一次執行完這個函數(除非這個函數內部包含斷點,或發生了異常)。如果當前命令是含有REP前綴,則會執行完重複操作,並停在下一條命令上。

Shift+F8:與F8相同,但是如果被調試程序發生異常而中止,調試器會首先嚐試步過被調試程序指定的異常處理(請參考忽略Kernel32中的內存非法訪問)。

Ctrl+F8:自動步過,一條一條的執行命令,但並不進入函數調用內部(就像您按住F8鍵不放一樣,只是更快一些)。當您執行其他一些單步命令,或者程序到達斷點,或者發生異常時,自動步過過程都會停止。每次單步步過,OllyDbg都會更新所有的窗口。所以爲了提高自動步過的速度,請您關閉不必要成窗口,對於保留的窗口最好儘量的小。按Esc鍵,可以停止自動步過。

F9:讓程序繼續執行。

Shift+F9:與F9相同,但是如果被調試程序發生異常而中止,調試器會首先嚐試執行被調試程序指定的異常處理(請參考忽略Kernel32中的內存非法訪問)。

Ctrl+F9:執行直到返回,跟蹤程序直到遇到返回,在此期間不進入子函數也不更新CPU數據。因爲程序是一條一條命令執行的,所以速度可能會慢一些。按Esc鍵,可以停止跟蹤。

Alt+F9:執行直到返回到用戶代碼段,跟蹤程序直到指令所屬於的模塊不在系統目錄中,在此期間不進入子函數也不更新CPU數據。因爲程序是一條一條執行的,所以速度可能會慢一些。按Esc鍵,可以停止跟蹤。

Ctrl+F11:Run跟蹤步入,一條一條執行命令,進入每個子函數調用,並把寄存器的信息加入到Run跟蹤的存儲數據中。Run跟蹤不會同步更新CPU窗口。

F12:停止程序執行,同時暫停被調試程序的所有線程。請不要手動恢復線程運行,最好使用繼續執行快捷鍵或菜單選項(像 F9)。

Ctrl+F12:Run跟蹤 步過,一條一條執行命令,但是不進入子函數調用,,並把寄存器的信息加入到Run跟蹤的存儲數據中。Run跟蹤不會同步更新CPU窗口。

Esc:如果當前處於自動運行或跟蹤狀態,則停止自動運行或跟蹤;如果CPU顯示的是跟蹤數據,則顯示真實數據。

Alt+B:顯示斷點窗口。在這個窗口中,您可以編輯、刪除、或跟進到斷點處。

Alt+C:顯示CPU窗口。

Alt+E:顯示模塊列表[list of modules]。

Alt+K:顯示調用棧[Call stack]窗口。

Alt+L:顯示日誌窗口。

Alt+M:顯示內存窗口。

Alt+O:顯示選項對話框[Options dialog]

Ctrl+P:顯示補丁窗口。

Ctrl+T:打開 暫停 Run跟蹤 對話框

Alt+X:關閉 OllyDbg。

大多數窗口

Alt+F3:關閉當前窗口。

Ctrl+F4:關閉當前窗口。

F5:最大化當前窗口或將當前窗口大小改爲正常化。

F6:切換到下一個窗口。

Shift+F6:切換到前一個窗口。

F10:打開與當前窗口或面板相關的快捷菜單。

左方向鍵:顯示窗口左方一個字節寬度的內容。

Ctrl+左方向鍵:顯示窗口左方一欄的內容。

右方向鍵:顯示窗口右方一個字節寬度的內容

Ctrl+右方向鍵:顯示窗口右方一欄的內容

反彙編窗口中的快捷鍵[Disassembler shortcuts]

回車鍵:將選中的命令添加到命令歷史[command history]中,如果當前命令是一個跳轉、函數或者是轉換表的一個部分,則進入到目的地址。

退格鍵:移除選中部分的自動分析信息。如果分析器將代碼誤識別爲數據,這個快捷鍵就非常有用。請參考解碼提示[decoding hints].

Alt+退格鍵:撤消所選部分的修改,以備份數據的相應內容替換所選部分。僅當備份數據存在且與所選部分不同時可用。

Ctrl+F1:如果API幫助文件已經選擇,將打開與首個選擇行內的符號名相關聯的幫助主題。

F2:在首個選擇的命令上開關INT3 斷點[Breakpoint],也可以雙擊該行第二列。

Shift+F2:在首個選擇命令設置條件斷點,參見忽略Kernel32中內存訪問異常[Ignore memory access violations in Kernel32]。

F4:執行到所選行,在首個選擇的命令上設置一次性斷點,然後繼續執行調試程序,直到OllyDbg捕獲到異常或者停止在該斷點上。在程序執行到該命令之前,該一次性斷點一直有效。如有必要,可在斷點窗口[Breakpoints window]中刪除它。

Shift+F4:設置記錄斷點(一種條件斷點,當條件滿足時一些表達式的值會記錄下來), 詳情參見斷點[Breakpoint]。

Ctrl+F5:打開與首個選擇的命令相對應的源文件。

Alt+F7:轉到上一個找到的參考。

Alt+F8:轉到下一個找到參考。

Ctrl+A:分析當前模塊的代碼段。

Ctrl+B:開始二進制搜索。

Ctrl+C:複製所選內容到剪貼板。複製時會簡單地按列寬截斷不可見內容,如果希望排除不需要的列,可把這些列的寬度調整到最小。

Ctrl+E:以二進制(十六進制)格式編輯所選內容。

Ctrl+F:開始命令搜索。

Ctrl+G:轉到某地址。該命令將彈出輸入地址或表達式的窗口。該命令不會修改 EIP。

Ctrl+J:列出所有的涉及到該位置的調用和跳轉,在您用這個功能之前,您必須使用分析代碼功能。

Ctrl+K:查看與當前函數相關的調用樹[Call tree]。在您用這個功能之前,您必須使用分析代碼功能。

Ctrl+L:搜索下一個,重複上一次的搜索內容。

Ctrl+N:打開當前模塊的名稱(標籤)列表。

Ctrl+O:掃描object文件。掃描Object文件。該命令會顯示掃描Object文件對話框,您可以在該對話框中選擇Object文件或者lib文件,並掃描這個文件,試圖找到在實際代碼段中用到的目標模塊。

Ctrl+R:搜索所選命令的參考。該命令掃描激活模塊的全部可執行代碼,以找到涉及到首個選中的命令的全部相關參考(包括:常量、跳轉及調用),您可以在參考中使用快捷鍵
Alt+F7 和 Alt+F8來瀏覽這些參考。爲便於您使用,被參考的命令也包含在該列表中。

Ctrl+S:命令搜索。該命令顯示命令查找[Find command]對話框供您輸入彙編命令,並從當前命令開始搜索。

星號[Asterisk](*):轉到原始位置(激活線程的EIP處)。

Ctrl+星號(*):指定新的起始位置,設置當前所選線程的EIP爲首個選擇字節的地址。您可以在選擇EIP並撤消該操作。

加號[Plus](+):如果run跟蹤[run trace] 沒有激活,則根據命令歷史[command
history]跳到下一條運行過命令的地方;否則跳到Run跟蹤的下一個記錄。

Ctrl+加號:跳到前一個函數開始處。(注意只是跳到,並不執行)

減號[Minus](-):如果run跟蹤[run trace] 沒有激活,則根據命令歷史[command
history]跳到前一條運行過命令的地方;否則跳到Run跟蹤的前一個記錄。

Ctrl+減號:跳到下一個函數開始處。(注意只是跳到,並不執行)

空格[Space]:修改命令。您可在顯示對話框中以彙編語言修改實際指令或輸入新指令,這些指令將替換實際代碼,您也可以在想要修改的指令處雙擊鼠標。

冒號[Colon]:添加標籤。顯示添加標籤窗口[Add label]或修改標籤窗口[Change label],您可在此輸入與首個選擇的命令中的第一個字節相關聯的標籤(符號名)。注意,在多種編程語言中,冒號可以是標籤的一部分。

分號[Semicolon]):添加註釋[comment]。顯示添加註釋窗口[Add label]或修改註釋窗口[Change label],您可在此輸入與首條所選命令的第一個字節相關聯的註釋(註釋串會顯示在最後一列中)。注意,多種彙編語言使用分號作爲註釋開始。您也可以在註釋列雙擊需要註釋的命令行。

發佈了62 篇原創文章 · 獲贊 120 · 訪問量 32萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章