導航:首頁 > 軟體知識 > od如何暫停程序

od如何暫停程序

發布時間:2023-03-15 15:32:05

❶ 易語言怎麼停止一個程序又不關閉程序

如唯團果是在編輯模式 就用暫停命令 如果打算 編譯瞭然後在暫停 可以掛起線程 那麼這睜雀個程序就會假死悉山早 後面的代碼就不在執行了

❷ 請教OD如何給新線程下滑鼠雙擊消息斷點

默認情況下,在調試多頃陵線程程序時,當遇到斷點時(breakpoint),當前線程暫停,而其它線程繼續運行,有些情況下,這是我們不想要看到的。比如戚枯下面的例子:除第21個線程以外,其餘都是Running狀態。修改:Window->Preferences->Java->Debug:在紅色區域內,將默認的SuspendThread改為SuspendVM再調試多線程程序:可以看到所有線程都高乎洞Suspend了。

❸ 求教,OD載入程序後運行調試,一按暫停就停留在ntdll,而不是程序的領空。 80分求解決方法,解決了加分。

第一: OD載入後會停留在程序入口,剛開始就是暫停的.

第二: 如果你按f9後OD會開圓隱判始執行你的程序,這時候除非碰到斷點是不會停止的,如果你是按了f9後停留在ntdll說明程序此時遇到中段或者進入了更高級別的段,OD是調試r3級別程序的利器但是無法對r0級別的代碼攜余進行調試.

第三: 許多程序都會用一個小小的手橘改段來迷惑調試者,那就是seh結構化異常處理來進行程序的跳轉或者判斷程序是否給調試. 此情況比較多,但是OD會有提示.

第四: 而不是程序的領空這句話說的我很蛋疼,你並沒有告訴我你的程序執行情況,是否斷點,是否異常,或者OD是否提示IO指令等等.

所以請你把od的提示弄清楚後在發問,詳細的代碼段,執行環境,斷點數量.和出現問題.

❹ od輸入要跟隨的快捷鍵是什麼

這里是全部的詳細類容 你自己看看

快捷鍵

無論當前的OllyDbg窗口是什麼,這些快捷鍵均有效:

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 moles]。

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

Alt+L - 顯示日誌窗口。

Alt+M - 顯示內存窗口。

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

Ctrl+P - 顯示補丁窗口。

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

Alt+X - 關閉 OllyDbg。

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

Alt+F3 - 關閉當前窗口。

c.&vWmLSGE

Ctrl+F4 - 關閉當前窗口。

F5 - 最大化當前窗口或將當前窗口大小改為正常化。

F6 - 切換到下一個窗口。

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

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

左方向鍵 - 顯示窗口左方一個位元組寬度的內容。

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

右方向鍵 - 顯示窗口右方一個位元組寬度的內容

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

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

當CPU窗口中的反匯編面板[Disassembler pane]處於激活狀態時,您可以使用以下快捷鍵:

回車鍵 - 將選中的命令添加到命令歷史[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],您可在此輸入與首條所選命令的第一個位元組相關聯的注釋(注釋串會顯示在最後一列中)。注意,多種匯編語言使用分號作為注釋開始。您也可以在注釋列雙擊需要注釋的命令行。

命令行插件支持的命令

CALC

判斷表達式

WATCH

添加監視表達式

AT

在指定地址進行反匯編

FOLLOW

跟隨命令

ORIG

反匯編於 EIP

DUMP

在指定地址進行轉存

DA

轉存為反匯編代碼

DB

使用十六進制位元組格式轉存

DC

使用 ASCII 格式轉存

DD

轉存在堆棧格式

DU

轉存在 UNICODE 格式

DW

使用十六進制字詞格式轉存

STK

AS

(AS + 地址 + 字元串)

在指定地址進行匯編

BP

進行條件中斷(有條件的斷點)

BPX

中斷在全部調用 (Call)

BPD

清除全部調用中的斷點

BC

清除斷點

MR

內存斷點於訪問時

MW

內存斷點於寫入時

MD

清除內存斷點

HR

訪問時進行硬體中斷

HW

寫入時進行硬體中斷

HE

執行時進行硬體中斷

HD

清除硬體斷點

STOP

停止運行程序調試

PAUSE

暫停執行程序調試

RUN

運行程序進行調試

GE

運行和通過例外

SI

單步進入 Call 中

SO

步過 Call

TI

跟蹤進入直到地址

TO

跟蹤步過直到地址

TC

跟蹤進入直到滿足條件

TOC

跟蹤步過直到滿足條件

TR

運行直到返回

TU

運行直到用戶代碼

LOG

查看記錄窗口

MOD

查看模塊窗口

MEM

查看內存窗口

CPU

查看 CPU 窗口

CS

查看 Call 堆棧

BRK

查看斷點窗口

OPT

打開選項設置窗口

EXIT

退出 OllyDbg

QUIT

退出 OllyDbg

OPEN

打開一個可執行文件

CLOSE

關閉可執行文件

RST

重新運行當前程序

HELP

查看 API 函數的幫助

❺ 求od使用斷點方法。

一、條件斷點:

使用方法(如):
在當前行按[Shift+F2]鍵->條薯宏件斷點(這個不太好用,因為程序BUG偶爾失效)。
在當前行按[Shift+F4]鍵->條件記錄斷點(只要設置上條件語句和按什麼條件生效就可以了)。

條件語句(如):
EAX == 00401000 ; 當EAX的值為00401000時。
[EAX] == 05201314 ; 比如EAX的值為00401000,而地址00401000處所指向的值等於5201314時,即EAX的值表示為指針。
[[EAX]] == 05201314 ; 比如EAX的值為00401000,地址00401000處所指向的值為00402000,而地址00402000處所指向的值等於5201314時,即EAX的值表示為指針的指針。
EAX == 05201314 && EBX == 0x05201314 ; 當EAX的值等於5201314(十進制),並且EBX的值等於5201314(十六進制)時。
[EBP+8] == WM_COMMAND ;
[[EBP+8]] == 05201314 ;
byte ptr[EAX] == 'y' ;
[EAX] == "coderui" ; 比如EAX的值為00401000,而地址00401000處所指向的字元串為「coderui」時,即EAX的值鎮旦表示為指針。
[[EAX+4]+4] == WM_LBUTTONUP ;

二、消息斷點:

原理:就是在消息函數上設置條件斷點。

步驟:
1、使用[Ctrl+G]呼出「表達式跟隨窗口」,輸入「TranslateMessage」,然後回車。
2、在「轉到」的位置上使用[Shift+F4]呼出「條件記錄斷點設置窗口」。
3、在「條件」中輸入如下語句「[[ESP+4]]==當前按鈕句柄&&[[ESP+4]+4]==WM_LBUTTONUP」。
4、把「暫停程序」設置為「按條件」,其他都為默認,然後確定。
5、點擊按鈕後,程序會停在「TranslateMessage」函數的系統領空中。
6、查看內存,對代碼段下「御手擾內存訪問斷點」,然後經過多次[F9](運行),就會找到關鍵的處理代碼了。

❻ VB程序如何在OD下面的 COMMAND框中下斷

vb程序 最難辦的第一點就是斷點難下啊。因為它是解釋執行,調用的多是MSVBVM60( 我是說vb6.0 vb.net可以直接反匯編出來自己讓做可以慢慢研究)中的函數,常用的有__vbavartstne,__vbaR8Str,__vbastrcmp,
rtcGetPresentDate,rtcMsgBox等。

如果是明碼比較的,一般可以用__vbaStrCmp可以斷下。 以vb6來說基本上是這樣的

bpMSVBVM60!__vbaVarTstEq

前面要指明模塊。。另外比較笨的方法是在在對「注冊按鈕」下消慧埋息斷點 。還有一些手段就是直接推程序二進制偏移碼。前滑螞 我有一次,死活去不掉那個注冊窗口,最後直接修改INT,把rtcMsgBox,給換成了一個無所謂的同字元數的函數。。 反正VB程序不太好搞。。主要還是解釋執行的問題。

❼ 請教OD 怎樣下消息斷點

1:用OD打開軟體,
2:點擊選項——調試選項——異常,把裡面的√全部去掉!CTRL+F2重載下程序,
3:一開是程序就是一個跳轉,在散乎喚這里我們按SHIFT+F9,直到程序運行,記下從開始按F9到程序運行的次數,
4:CTRL+F2重載程序,按SHIFT+F9(次數為程序運行的次數-1次 ,
5:在OD的右下角我們看見有一個SE 句柄,這頃核時我們按CTRL+G,輸入SE 句柄前的地址,沖凱
6:按F2下斷點!然後按SHIFT+F9來到斷點處,
7:去掉斷點,按F8慢慢向下走,
8:到達程序的OEP,脫殼。

❽ 關於OD的bp send斷點

71A24C27 就是正確的斷點。。。

這個是系統dll的函數,開機後,其函數地址是固定不變的。 在所有的程序裡面都是這個地址。

只有你用od載入(或者附加)在某個程序後,巧瞎裂在71A24C27 設置斷點後,只神孝要這個程序使用了send函數進行通信,就會被斷下。
而且其他的程序,如ie,qq等使孝閉用send函數是不會被od斷下的,因為你沒有用od附加ie和qq。ollydbg是應用層的調試工具,是與進程相關的,不會跨進程。

❾ 數據掛接證明怎麼寫

數據掛接證明怎麼寫步驟如下:
1、在軟體上去暫停程序。
2、OD掛接橡棗,讓主線程運行,基李其他線程暫停,這樣就停掉了搏如遲殼程序。
3、OD跳向WaitForDebugEvent補丁它push進程ID。

閱讀全文

與od如何暫停程序相關的資料

熱點內容
商君治秦故事中獲取了哪些信息 瀏覽:356
怎麼戒頻繁交易 瀏覽:918
羅氏血糖儀如何刪除歷史數據 瀏覽:453
聯眾不銹鋼管代理廠家有哪些 瀏覽:513
電腦版本的交易貓是什麼樣 瀏覽:591
交易狀態顯示競價交易什麼意思 瀏覽:427
哪裡有寶寶尿褲代理加盟 瀏覽:313
私處養護產品廣告怎麼拍 瀏覽:388
兩輪車技術哪裡學 瀏覽:907
微信怎麼查在steam交易號 瀏覽:53
會所如何給顧客發信息 瀏覽:437
如何讀取儀器串口數據 瀏覽:166
高郵華林有哪些產品 瀏覽:958
怎麼找到重啟數據裡面的重點 瀏覽:516
阿里巴巴交易的金額去哪裡了 瀏覽:985
痘痘可以塗抹哪些產品 瀏覽:985
雲南藍菲酒代理多少錢 瀏覽:284
定西職業技術學校在哪裡 瀏覽:829
哪個學校的資料庫賣的最全 瀏覽:867
司法程序需要務工證明怎麼寫 瀏覽:355