日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

OD快捷鍵使用大全。非常詳細(xì)(游戲逆向分析必看)

 鬧海魚兒 2013-06-23

無論當(dāng)前的OllyDbg窗口是什么,這些快捷鍵均有效:

Ctrl+F2 - 重啟程序,即重新啟動(dòng)被調(diào)試程序。如果當(dāng)前沒有調(diào)試的程序,OllyDbg會(huì)運(yùn)行歷史列表[history

list]中的第一個(gè)程序。程序重啟后,將會(huì)刪除所有內(nèi)存斷點(diǎn)和硬件斷點(diǎn)。

譯者注:從實(shí)際使用效果看,硬件斷點(diǎn)在程序重啟后并沒有移除。


Alt+F2 - 關(guān)閉,即關(guān)閉被調(diào)試程序。如果程序仍在運(yùn)行,會(huì)彈出一個(gè)提示信息,詢問您是否要關(guān)閉程序。

F3 - 彈出“打開32位.EXE文件”對(duì)話框[Open 32-bit .EXE file],您可以選擇可執(zhí)行文件,并可以輸入運(yùn)行參數(shù)。

Alt+F5 -

讓OllyDbg總在最前面。如果被調(diào)試程序在某個(gè)斷點(diǎn)處發(fā)生中斷,而這時(shí)調(diào)試程序彈出一個(gè)總在最前面的窗口(一般為模式消息或模式對(duì)話框[modal message

or dialog]),它可能會(huì)遮住OllyDbg的一部分,但是我們又不能移動(dòng)最小化這個(gè)窗口。激活OllyDbg(比如按任務(wù)欄上的標(biāo)簽)并按

Alt+F5,OllyDbg將設(shè)置成總在最前面,會(huì)反過來遮住剛才那個(gè)窗口。如果您再按一下Alt+F5,OllyDbg會(huì)恢復(fù)到正常狀態(tài)。

OllyDbg是否處于總在最前面狀態(tài),將會(huì)保存,在下一次調(diào)試時(shí)依然有效。當(dāng)前是否處于總在最前面狀態(tài),會(huì)顯示在狀態(tài)欄中。


F7 -

單步步入到下一條命令,如果當(dāng)前命令是一個(gè)函數(shù)[Call],則會(huì)停在這個(gè)函數(shù)體的第一條命令上。如果當(dāng)前命令是是含有REP前綴,則只執(zhí)行一次重復(fù)操作。


Shift+F7 -

與F7相同,但是如果被調(diào)試程序發(fā)生異常而中止,調(diào)試器會(huì)首先嘗試步入被調(diào)試程序指定的異常處理(請(qǐng)參考忽略Kernel32中的內(nèi)存非法訪問)。


Ctrl+F7 -

自動(dòng)步入,在所有的函數(shù)調(diào)用中一條一條地執(zhí)行命令(就像您按住F7鍵不放一樣,只是更快一些)。當(dāng)您執(zhí)行其他一些單步命令,或者程序到達(dá)斷點(diǎn),或者發(fā)生異常時(shí),自動(dòng)步入過程都會(huì)停止。每次單步步入,OllyDbg都會(huì)更新所有的窗口。所以為了提高自動(dòng)步入的速度,請(qǐng)您關(guān)閉不必要成窗口,對(duì)于保留的窗口最好盡量的小。按Esc鍵,可以停止自動(dòng)步入。

F8 -

單步步過到下一條命令。如果當(dāng)前命令是一個(gè)函數(shù),則一次執(zhí)行完這個(gè)函數(shù)(除非這個(gè)函數(shù)內(nèi)部包含斷點(diǎn),或發(fā)生了異常)。如果當(dāng)前命令是含有REP前綴,則會(huì)執(zhí)行完重復(fù)操作,并停在下一條命令上。

Shift+F8 -

與F8相同,但是如果被調(diào)試程序發(fā)生異常而中止,調(diào)試器會(huì)首先嘗試步過被調(diào)試程序指定的異常處理(請(qǐng)參考忽略Kernel32中的內(nèi)存非法訪問)。

Ctrl+F8 -

自動(dòng)步過,一條一條的執(zhí)行命令,但并不進(jìn)入函數(shù)調(diào)用內(nèi)部(就像您按住F8鍵不放一樣,只是更快一些)。當(dāng)您執(zhí)行其他一些單步命令,或者程序到達(dá)斷點(diǎn),或者發(fā)生異常時(shí),自動(dòng)步過過程都會(huì)停止。每次單步步過,OllyDbg都會(huì)更新所有的窗口。所以為了提高自動(dòng)步過的速度,請(qǐng)您關(guān)閉不必要成窗口,對(duì)于保留的窗口最好盡量的小。按Esc鍵,可以停止自動(dòng)步過。

F9 - 讓程序繼續(xù)執(zhí)行。


Shift+F9 -

與F9相同,但是如果被調(diào)試程序發(fā)生異常而中止,調(diào)試器會(huì)首先嘗試執(zhí)行被調(diào)試程序指定的異常處理(請(qǐng)參考忽略Kernel32中的內(nèi)存非法訪問)。

Ctrl+F9 -

執(zhí)行直到返回,跟蹤程序直到遇到返回,在此期間不進(jìn)入子函數(shù)也不更新CPU數(shù)據(jù)。因?yàn)槌绦蚴且粭l一條命令執(zhí)行的,所以速度可能會(huì)慢一些。按Esc鍵,可以停止跟蹤。

Alt+F9 -

執(zhí)行直到返回到用戶代碼段,跟蹤程序直到指令所屬于的模塊不在系統(tǒng)目錄中,在此期間不進(jìn)入子函數(shù)也不更新CPU數(shù)據(jù)。因?yàn)槌绦蚴且粭l一條執(zhí)行的,所以速度可能會(huì)慢一些。按Esc鍵,可以停止跟蹤。

Ctrl+F11

-Run跟蹤步入,一條一條執(zhí)行命令,進(jìn)入每個(gè)子函數(shù)調(diào)用,并把寄存器的信息加入到Run跟蹤的存儲(chǔ)數(shù)據(jù)中。Run跟蹤不會(huì)同步更新CPU窗口。

F12 - 停止程序執(zhí)行,同時(shí)暫停被調(diào)試程序的所有線程。請(qǐng)不要手動(dòng)恢復(fù)線程運(yùn)行,最好使用繼續(xù)執(zhí)行快捷鍵或菜單選項(xiàng)(像 F9)。

Ctrl+F12 - Run跟蹤

步過,一條一條執(zhí)行命令,但是不進(jìn)入子函數(shù)調(diào)用,,并把寄存器的信息加入到Run跟蹤的存儲(chǔ)數(shù)據(jù)中。Run跟蹤不會(huì)同步更新CPU窗口。

Esc - 如果當(dāng)前處于自動(dòng)運(yùn)行或跟蹤狀態(tài),則停止自動(dòng)運(yùn)行或跟蹤;如果CPU顯示的是跟蹤數(shù)據(jù),則顯示真實(shí)數(shù)據(jù)。

Alt+B - 顯示斷點(diǎn)窗口。在這個(gè)窗口中,您可以編輯、刪除、或跟進(jìn)到斷點(diǎn)處。

Alt+C - 顯示CPU窗口。

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

Alt+K - 顯示調(diào)用棧[Call stack]窗口。

Alt+L - 顯示日志窗口。

Alt+M - 顯示內(nèi)存窗口。

Alt+O - 顯示選項(xiàng)對(duì)話框[Options dialog]

Ctrl+P - 顯示補(bǔ)丁窗口。

Ctrl+T - 打開 暫停 Run跟蹤 對(duì)話框

Alt+X - 關(guān)閉 OllyDbg。

大多數(shù)窗口都支持以下的鍵盤命令:

Alt+F3 - 關(guān)閉當(dāng)前窗口。

c.&vWmLSGE

Ctrl+F4 - 關(guān)閉當(dāng)前窗口。

F5 - 最大化當(dāng)前窗口或?qū)?dāng)前窗口大小改為正常化。

F6 - 切換到下一個(gè)窗口。

Shift+F6 - 切換到前一個(gè)窗口。

F10 - 打開與當(dāng)前窗口或面板相關(guān)的快捷菜單。

左方向鍵 - 顯示窗口左方一個(gè)字節(jié)寬度的內(nèi)容。

Ctrl+左方向鍵 - 顯示窗口左方一欄的內(nèi)容。

右方向鍵 - 顯示窗口右方一個(gè)字節(jié)寬度的內(nèi)容


Ctrl+右方向鍵 - 顯示窗口右方一欄的內(nèi)容

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

當(dāng)CPU窗口中的反匯編面板[Disassembler pane]處于激活狀態(tài)時(shí),您可以使用以下快捷鍵:

回車鍵 - 將選中的命令添加到命令歷史[command history]中,如果當(dāng)前命令是一個(gè)跳轉(zhuǎn)、函數(shù)或者是轉(zhuǎn)換表的一個(gè)部分,則進(jìn)入到目的地址。

退格鍵 - 移除選中部分的自動(dòng)分析信息。如果分析器將代碼誤識(shí)別為數(shù)據(jù),這個(gè)快捷鍵就非常有用。請(qǐng)參考解碼提示[decoding hints].


Alt+退格鍵 - 撤消所選部分的修改,以備份數(shù)據(jù)的相應(yīng)內(nèi)容替換所選部分。僅當(dāng)備份數(shù)據(jù)存在且與所選部分不同時(shí)可用。


Ctrl+F1 -如果API幫助文件已經(jīng)選擇,將打開與首個(gè)選擇行內(nèi)的符號(hào)名相關(guān)聯(lián)的幫助主題。

F2 -在首個(gè)選擇的命令上開關(guān)INT3 斷點(diǎn)[Breakpoint],也可以雙擊該行第二列。

Shift+F2 -在首個(gè)選擇命令設(shè)置條件斷點(diǎn),參見忽略Kernel32中內(nèi)存訪問異常[Ignore memory access violations

in Kernel32]。

F4

-執(zhí)行到所選行,在首個(gè)選擇的命令上設(shè)置一次性斷點(diǎn),然后繼續(xù)執(zhí)行調(diào)試程序,直到OllyDbg捕獲到異?;蛘咄V乖谠摂帱c(diǎn)上。在程序執(zhí)行到該命令之前,該一次性斷點(diǎn)一直有效。如有必要,可在斷點(diǎn)窗口[Breakpoints

window]中刪除它。

Shift+F4 -設(shè)置記錄斷點(diǎn)(一種條件斷點(diǎn),當(dāng)條件滿足時(shí)一些表達(dá)式的值會(huì)記錄下來), 詳情參見斷點(diǎn)[Breakpoint]。

Ctrl+F5 -打開與首個(gè)選擇的命令相對(duì)應(yīng)的源文件。


Alt+F7 -轉(zhuǎn)到上一個(gè)找到的參考。

Alt+F8 -轉(zhuǎn)到下一個(gè)找到參考。

Ctrl+A -分析當(dāng)前模塊的代碼段。


Ctrl+B - 開始二進(jìn)制搜索。

Ctrl+C -復(fù)制所選內(nèi)容到剪貼板。復(fù)制時(shí)會(huì)簡(jiǎn)單地按列寬截?cái)嗖豢梢妰?nèi)容,如果希望排除不需要的列,可把這些列的寬度調(diào)整到最小。

Ctrl+E -以二進(jìn)制(十六進(jìn)制)格式編輯所選內(nèi)容。

Ctrl+F -開始命令搜索。

Ctrl+G -轉(zhuǎn)到某地址。該命令將彈出輸入地址或表達(dá)式的窗口。該命令不會(huì)修改 EIP。


Ctrl+J -列出所有的涉及到該位置的調(diào)用和跳轉(zhuǎn),在您用這個(gè)功能之前,您必須使用分析代碼功能。

Ctrl+K - 查看與當(dāng)前函數(shù)相關(guān)的調(diào)用樹[Call tree]。在您用這個(gè)功能之前,您必須使用分析代碼功能。


Ctrl+L - 搜索下一個(gè),重復(fù)上一次的搜索內(nèi)容。

Ctrl+N - 打開當(dāng)前模塊的名稱(標(biāo)簽)列表。


Ctrl+O -

掃描object文件。掃描Object文件。該命令會(huì)顯示掃描Object文件對(duì)話框,您可以在該對(duì)話框中選擇Object文件或者lib文件,并掃描這個(gè)文件,試圖找到在實(shí)際代碼段中用到的目標(biāo)模塊。

Ctrl+R

-搜索所選命令的參考。該命令掃描激活模塊的全部可執(zhí)行代碼,以找到涉及到首個(gè)選中的命令的全部相關(guān)參考(包括:常量、跳轉(zhuǎn)及調(diào)用),您可以在參考中使用快捷鍵

Alt+F7 和 Alt+F8來瀏覽這些參考。為便于您使用,被參考的命令也包含在該列表中。


Ctrl+S -命令搜索。該命令顯示命令查找[Find command]對(duì)話框供您輸入?yún)R編命令,并從當(dāng)前命令開始搜索。

星號(hào)[Asterisk](*) -轉(zhuǎn)到原始位置(激活線程的EIP處)。


Ctrl+星號(hào)(*) - 指定新的起始位置,設(shè)置當(dāng)前所選線程的EIP為首個(gè)選擇字節(jié)的地址。您可以在選擇EIP并撤消該操作。


加號(hào)[Plus](+) -如果run跟蹤[run trace] 沒有激活,則根據(jù)命令歷史[command

history]跳到下一條運(yùn)行過命令的地方;否則跳到Run跟蹤的下一個(gè)記錄。

Ctrl+加號(hào) - 跳到前一個(gè)函數(shù)開始處。(注意只是跳到,并不執(zhí)行)


減號(hào)[Minus](-) - 如果run跟蹤[run trace] 沒有激活,則根據(jù)命令歷史[command

history]跳到前一條運(yùn)行過命令的地方;否則跳到Run跟蹤的前一個(gè)記錄。


Ctrl+減號(hào) - 跳到下一個(gè)函數(shù)開始處。(注意只是跳到,并不執(zhí)行)

空格[Space] -

修改命令。您可在顯示對(duì)話框中以匯編語言修改實(shí)際指令或輸入新指令,這些指令將替換實(shí)際代碼,您也可以在想要修改的指令處雙擊鼠標(biāo)。

冒號(hào)[Colon]( - 添加標(biāo)簽。顯示添加標(biāo)簽窗口[Add label]或修改標(biāo)簽窗口[Change

label],您可在此輸入與首個(gè)選擇的命令中的第一個(gè)字節(jié)相關(guān)聯(lián)的標(biāo)簽(符號(hào)名)。注意,在多種編程語言中,冒號(hào)可以是標(biāo)簽的一部分。


分號(hào)[Semicolon](;) - 添加注釋[comment]。顯示添加注釋窗口[Add label]或修改注釋窗口[Change

label],您可在此輸入與首條所選命令的第一個(gè)字節(jié)相關(guān)聯(lián)的注釋(注釋串會(huì)顯示在最后一列中)。注意,多種匯編語言使用分號(hào)作為注釋開始。您也可以在注釋列雙擊需要注釋的命令行。

命令行插件支持的命令

CALC

判斷表達(dá)式

WATCH

添加監(jiān)視表達(dá)式


AT

在指定地址進(jìn)行反匯編


FOLLOW

跟隨命令

ORIG

反匯編于 EIP

DUMP

在指定地址進(jìn)行轉(zhuǎn)存


DA

轉(zhuǎn)存為反匯編代碼

DB

使用十六進(jìn)制字節(jié)格式轉(zhuǎn)存

DC

使用 ASCII 格式轉(zhuǎn)存


DD

轉(zhuǎn)存在堆棧格式

DU

轉(zhuǎn)存在 UNICODE 格式


DW

使用十六進(jìn)制字詞格式轉(zhuǎn)存

STK

AS

(AS + 地址 + 字符串)

在指定地址進(jìn)行匯編

BP

進(jìn)行條件中斷(有條件的斷點(diǎn))


BPX

中斷在全部調(diào)用 (Call)

BPD

清除全部調(diào)用中的斷點(diǎn)

BC

清除斷點(diǎn)

MR

內(nèi)存斷點(diǎn)于訪問時(shí)

MW

內(nèi)存斷點(diǎn)于寫入時(shí)

MD

清除內(nèi)存斷點(diǎn)

HR

訪問時(shí)進(jìn)行硬件中斷

HW

寫入時(shí)進(jìn)行硬件中斷


HE

執(zhí)行時(shí)進(jìn)行硬件中斷

HD

清除硬件斷點(diǎn)

STOP

停止運(yùn)行程序調(diào)試

PAUSE

暫停執(zhí)行程序調(diào)試

RUN

運(yùn)行程序進(jìn)行調(diào)試

GE

運(yùn)行和通過例外


SI

單步進(jìn)入 Call 中

SO

步過 Call

TI

跟蹤進(jìn)入直到地址

TO

跟蹤步過直到地址

TC

跟蹤進(jìn)入直到滿足條件


TOC

跟蹤步過直到滿足條件

TR

運(yùn)行直到返回

TU

運(yùn)行直到用戶代碼

LOG

查看記錄窗口

MOD

查看模塊窗口


MEM

查看內(nèi)存窗口


CPU

查看 CPU 窗口


CS

查看 Call 堆棧

BRK

查看斷點(diǎn)窗口


OPT

打開選項(xiàng)設(shè)置窗口

EXIT

退出 OllyDbg

QUIT

退出 OllyDbg

OPEN

打開一個(gè)可執(zhí)行文件

CLOSE

關(guān)閉可執(zhí)行文件

RST

重新運(yùn)行當(dāng)前程序

HELP

查看 API 函數(shù)的幫助

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多