成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

網絡安全編程:逆向調試分析工具之OllyDbg

安全
在逆向分析中,調試工具可以說是非常重要的。調試器能夠跟蹤一個進程的運行時狀態,在逆向中稱為動態分析工具。本文介紹應用層下最流行的調試工具OllyDbg。

[[390675]]

 在逆向分析中,調試工具可以說是非常重要的。調試器能夠跟蹤一個進程的運行時狀態,在逆向中稱為動態分析工具。動態調試會用在很多方面,比如漏洞的挖掘、游戲外掛的分析、軟件加密解密等方面。本文介紹應用層下最流行的調試工具OllyDbg。

OllyDbg縮寫為OD,是由一款具有可視化界面的運行在應用層(或者R3)的一款32位的反匯編逆向調試分析工具。OD是所有做逆向分析者都離不開的工具。它的流行,究其原因,是操作簡單、參考文檔相當豐富、支持插件功能。

1. OD的版本

OD的主流版本是1.10,但是它存在很多修改版。OD 雖然是動態調試工具,但是由于其強大的功能經常被很多人用在軟件破解等方面,很多軟件作者的心血被付諸東流。軟件的作者為了防止軟件被OD調試,加入了很多防止OD進行調試的反調試功能來保護自己的軟件不被破解;而破解者為了能夠繼續使用OD來破解軟件,則不得不對OD進行修改,從而達到反反調試的效果。

調試、反調試、反反調試,對于新接觸調試的愛好者來說容易混淆。簡單來說,反調試是阻止使用OD進行調試,而反反調試是突破反調試繼續進行調試。而OD的修改版本之所以很多,就是為了能夠更好地突破軟件的反調試。從OD存在著眾多的修改版本可以看出,軟件的保護與軟件的破解一直在進行著“攻”和“防”的突破當中。

因此,如果從學習的角度來講,建議選擇原版的OD進行使用。在使用的過程中,除了會掌握很多調試的技巧,也會學到很多反調試的技巧,從而掌握反反調試的技巧。而如果在實際的應用中,則可以直接使用修改版的OD,避免OD被軟件反調試,從而提高逆向調試分析的速度。

2. OD主界面

OD的發行是一個壓縮包,解壓即可運行使用。運行OD解壓目錄中的ollydbg.exe程序,會出現一個分布恰當、有菜單有版面和能輸入命令的一個看似強大的軟件窗口,如圖1所示。

圖1  OD調試主界面

在圖1中,工作區可以分為6部分,從左往右、從上往下,這6部分分別是反匯編窗口、信息窗口、數據窗口、寄存器窗口、棧窗口和命令窗口。下面分別介紹各個窗口的用法。

反匯編窗口:該窗口用于顯示反匯編代碼,調試分析程序主要就是在這個窗口中進行,這也是進行調試分析的主要工作窗口。

信息窗口:該窗口用于顯示與反匯編窗口上下文相關的內存或寄存器信息。

數據窗口:該窗口用于以多種格式顯示內存中的內容,可以使用的格式有Hex、文本、短型、長型、浮點和反匯編等。

寄存器窗口:該窗口用于顯示各個寄存器的內容,包括前面介紹的通用寄存器、段寄存器、標志寄存器、浮點寄存器,另外,還可以在寄存器窗口中的右鍵菜單選擇顯示MMX寄存器、3DNow!寄存器和調試寄存器。

棧窗口:該窗口用于顯示堆棧內容,即ESP寄存器和EBP寄存器指向的地址部分。

命令窗口:該窗口用于輸入命令來簡化調試分析的工作,該窗口并非基本窗口,而是由OD的插件提供的功能,幾乎所有的OD使用者都會使用該控件,因此必須掌握該窗口的使用。

3. OD功能窗口

OD中的主窗口是OD眾多窗口中的一個,主要是用來顯示CPU相關內容的窗口,主窗口也被稱為CPU窗口。除了CPU窗口外,OD還有功能非常多的其他窗口。可以通過菜單欄的“查看(V)”項目打開這些窗口進行使用,或者通過工具欄上的“窗口切換”工具來選擇使用不同的功能窗口。工具欄的“窗口切換”如圖2所示。

[[390676]]

圖2  “窗口切換”選項工具欄

(1)“內存”窗口

“內存”窗口顯示了程序各個模塊節區在內存中的地址,如圖3所示。

圖3  “內存”窗口

在內存窗口中,可以用鼠標選中某個模塊的節區,然后按下F2鍵來下斷點。一旦代碼訪問到這個段,OD就會相應斷點斷下。

(2)“調用堆棧”窗口

“調用堆棧”用來顯示當前代碼所屬函數的調用關系。“調用堆棧”窗口如圖4所示。

圖4  “調用堆棧”窗口

從圖4中第1行信息可以看出,當前代碼所在的函數首地址是NOTEPAD模塊中的010040BA地址處,調用該函數的位置來自于NOTEPAD.010045CA,而NOTEPAD.010045CA函數所在的函數首地址需要從第3行中查看,該函數的首地址是NOTEPAD.01004565。其調用關系模擬如下: 

  1. Func 01004565()  
  2.  
  3. ……  
  4. 010045CA: call 010040BA  
  5.  
  6. Func 010040BA()  
  7.  

各個調用關系之間的Arg1、Arg2是由調用方函數傳遞給被調用方的函數參數。調用棧的結構類似于棧的結構,都是由高往低方向延伸。在調用棧窗口中越靠下的函數,其棧地址越高,函數之間的調用關系也是由下往上的。

(3)“斷點”窗口

“斷點”窗口顯示了設置的所有的軟斷點,如圖5所示。

圖5  “斷點”窗口

從圖5中可以看出,設定了3條軟斷點,設置斷點的地址從圖5的第1列可以查看。如果在API函數的首地址上設定斷點,那么在地址后會給出API函數的名稱。設置好的斷點如果不想使用,可以進行刪除;如果暫時不想使用,則可以通過使用空格鍵來切換其是否激活的狀態。

4. 常用斷點的設置方法

在OD中,常用的設置斷點的方法有命令法、菜單法和快捷鍵法。無論通過哪種方法設置斷點,其實斷點的類型不外乎有3種,分別是INT3斷點、內存斷點和硬件斷點。

(1)通過命令設置斷點

通過命令可以設置硬件斷點和INT3斷點。設置INT3斷點的方法較為簡單,直接在命令窗口輸入“bp斷點地址”或“bp API函數名稱”即可。設置好以后,可以通過斷點窗口查看設置好的斷點。

關于硬件斷點,這里介紹4條命令,具體如下。

① hr:硬件讀斷點,如hr 斷點地址。

② hw:硬件寫斷點,如hw 斷點地址。

③ he:硬件執行斷點,如he 斷點地址。

④ hd:刪除硬件斷點,如hd 斷點地址。

硬件斷點最多只能設置4個,這是跟CPU相關的。可以用于設置斷點的調試寄存器只有4個,分別是DR0、DR1、DR2和DR3。通過命令設置好硬件斷點后,可以在菜單的“調試(D)”項中打開“硬件斷點(H)”,查看設置好的硬件斷點,如圖6所示。

6  硬件斷點圖

(2)通過快捷鍵設置斷點

通過快捷鍵設置斷點的方法非常簡單,在需要設置斷點的代碼行處按下F2鍵即可設置一個INT3斷點,在設置好的INT3斷點處再次按下F2鍵即可取消設置好的斷點。

除了可以在代碼處通過F2鍵設置斷點外,還可以在內存窗口中,在指定的節上按下F2鍵來設置斷點。這里設置的斷點是一次性斷點,即斷點被觸發后設置的斷點自動被刪除。

(3)通過菜單設置斷點

通過菜單設置斷點的方法比較簡單,如圖7所示。

圖7  通過菜單設置斷點

在菜單中可以看到設置內存斷點的選項,分別是“內存訪問”和“內存寫入”。內存斷點通常對數據部分設置斷點,如果要找到某塊內存中數據是由哪塊代碼進行處理的,通過設置內存斷點可以很容易找到。

對于動態調試分析來說,合理設置斷點非常重要。在OD中,有很多設置斷點的方法和技巧,請大家在使用和學習的過程中慢慢學習和摸索。

5. OD調試快捷鍵

① F8鍵:單步步過,依次執行每一條代碼,遇到CALL不進入,遇到REP不重復。

② F7鍵:單步步入,依次執行每一條代碼,遇到CALL則進入,遇到REP則重復。

③ F4 鍵:執行到功能的代碼處(前提條件是選中的代碼在程序的流程中一定會被執行到)。

④ F9鍵:運行程序,直到遇到斷點才停止。

⑤ Ctrl+F9組合鍵:返回調用處(在Win7及更高的版本的操作系統下,該快捷鍵失靈了)。

⑥ Alt+F9組合鍵:執行到函數的結尾處。 

 

責任編輯:龐桂玉 來源: 計算機與網絡安全
相關推薦

2021-04-13 11:15:54

網絡安全C語言循環結構

2021-04-08 11:10:22

網絡安全C語言if…else…

2021-04-14 15:53:58

網絡安全C語言wcslen

2021-04-06 11:04:54

網絡安全C語言代碼

2021-05-08 11:50:59

網絡安全API函數代碼

2021-04-26 10:32:38

網絡安全PE編程工具

2016-10-10 00:18:27

2021-04-01 10:40:22

網絡安全軟件

2021-06-18 09:55:09

網絡安全目錄監控

2011-03-17 11:24:18

2011-03-17 13:32:45

2021-03-24 09:46:46

網絡安全軟件反匯編

2024-12-17 17:32:17

2021-03-03 12:20:42

網絡安全DLL編程

2011-03-17 12:49:32

2021-06-11 13:40:17

網絡安全專殺工具病毒

2021-12-28 00:11:40

網絡安全攻擊

2021-05-21 12:52:47

網絡安全Android App虛擬機

2021-04-30 18:50:44

網絡安全PE編程添加節區

2021-01-26 13:45:03

網絡安全Winsock編程
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 午夜天堂精品久久久久 | 成年人免费在线视频 | 久久黄色网 | 天堂av在线影院 | 天天干天天操天天爽 | 免费天天干 | 亚洲福利在线观看 | 天天天操 | www国产成人免费观看视频,深夜成人网 | aa级毛片毛片免费观看久 | 九九热在线免费视频 | 色噜噜狠狠色综合中国 | 国产精品欧美一区二区三区 | 精品亚洲一区二区三区 | 三级视频在线观看 | 色必久久 | 国产成人在线播放 | 在线国产中文字幕 | 欧美精品三区 | 日本一区二区三区四区 | 亚洲精品在线免费 | 日韩一区二区免费视频 | 一级免费黄色 | 国产精品久久久久永久免费观看 | 精品视频一区二区三区在线观看 | 91资源在线 | 国产成人精品一区二区三区 | 国产日韩欧美在线 | 懂色一区二区三区免费观看 | 久久精品免费一区二区 | 成人在线一区二区 | 亚洲免费视频播放 | 午夜精品久久久久久久久久久久久 | 国产一级电影在线 | 一级h片| 久久久久久亚洲精品 | 久久福利电影 | 美女黄网 | 国产一级片在线播放 | 免费人成激情视频在线观看冫 | 亚洲午夜精品久久久久久app |