一、OllyDBG是一款調試分析工具,主要用於動態調試。
(一)窗口概況:
圖中標號對應的功能區:
反匯編區域:1、地址;2、匯編代碼對應的十六進制機器窗口;3、反匯編窗口;4、對應的注釋。
寄存器區域:5、寄存器
數據區域:7、數據所在的內存地址;8、十六進制編碼信息;9數據對應的ASCII碼信息
棧區域:10、地址;11、數據;12、說明信息。
(二)常用快捷鍵:
F2:斷點
F3:加載一個可以執行程序。
F4:程序執行到光標位置。
F5:縮小、還原當前窗口。
F7:單步步入。
F8:單步步過。
F9:直接運行程序,遇到斷點處,程序暫停。
Ctrl+F2:重新運行程序到起始處,用於重新調試程序。
Ctrl+F9:執行到函數返回處,用於跳出函數實現。
Alt+F9:執行到用戶代碼處,用於快速跳出函數實現。
Ctrl+G :輸入十六進制地址,在反匯編或數據窗口中快速定位到該地址處。
+號:轉到下一步 //Plus
-號:轉到上一步 //Minus
*號:轉到當前指令地址 //EIP
Enter:跟進到地址處(例如:反匯編窗口中call指令后地址……)
(三)插件命令欄指令
bp 下斷點
bc 清除斷點
dd 以雙字方式顯示數據
dw 以字方式顯示數據
db 以字節方式顯示數據
? 計算表達式的值
二、IDA是一款靜態反匯編分析工具。
視圖簡介:
IDA View-A:分析視圖窗口,用於顯示分析結果,可選用流程圖或反匯編代碼形式(通過鼠標右擊Text view或Graph view切換)。
Hex View-A:二進制視圖窗口,打開文件的二進制信息。
Exports:分析文件中導出函數信息窗口。
Imports:分析文件中導入函數信息窗口。
Names:名稱窗口,分析文檔中用到的標號名稱。
Functions:分析文件中的函數信息窗口。
Structures:添加結構體信息窗口。
Enums:添加枚舉信息窗口。
常用快捷鍵:
Enter:跟進函數實現,查看標號對應的地址。
Esc:返回跟進處。
A:解釋光標處的地址為一個字符串的首地址。
B:十六進制與二進制數的轉換
C:解釋光標處的地址為一條指令
D:解釋光標處的地址為數據,每按一次將會轉換這個地址的數據長度。
G:快速查找到應地址
H:十六進制數與十進制數轉換。
K:將數據解釋為棧變量。
;:添加注釋。
M:解釋為枚舉成員。
N:重新命名。
O:解釋地址為數據段偏移量,用於字符串標號。
T:解釋地址為一個結構體成員。
X:轉換視圖到交叉參考模式。
shift+F9:添加結構體。