逆向工程工具介紹2-IDA


IDA介紹

IDA是一個用於靜態分析程序的軟件。

所謂靜態和動態就是指是否執行調試運行來處理。OllyDBG是進行修改調試,而IDA用於觀察程序。

有一些程序不適合動態處理,比如病毒木馬程序,一旦執行就會導致意外。所以就有了靜態處理的重要性。

安裝IDA

https://www.cncrk.com/downinfo/269648.html 

初次進入IDA

在安裝好IDA后,有兩個可執行文件IDA.exe和IDA64.exe

分別是針對於32位程序和64位程序。

選擇需要使用的版本,進入程序界面

 

New新的Go直接打開,Previous曾經的項目

 

快捷鍵介紹

 

編號 快捷鍵 功能說明
1 Enter 跟進函數實現,查看標號對應地址
2 Esc 返回更進處
3 A 解釋光標處的地址為一個字符串的首地址
4 B 十六進制與二進制轉化
5  C  解釋光標處為一條指令
6  D 解釋光標處的地址為數據,每按一次將會轉換這個地址的數據長度 
7  G 快速查找到對應地址 
8  H  十六進制和十進制轉換 
9  K 將數據解釋為棧變量 
10  ; 添加注釋 
11  M 解釋為枚舉成員 
12  N 重新命名 
13  O 解釋地址為數據段偏移量,用於字符串標號 
14  T 解釋數據為一個結構體變量 
15  X 轉換視圖到交叉參考模式 
16  Shitf+F9 添加結構體 

  通過實例操作來體會基本IDA操作:

    1 加載分析文件

      IDA加載文件后,會詢問分析方式

 

     Protable executable for 80386(PE)[pe.dll]  :分析一個PE格式的文件

    MS-DOS executable(EXE)[dos.dll]  :分析文件為DOS控制台下的一個文件

    Binary file  分析文件為一個二進制文件。

   根據示例windows變成message函數的exe程序,作為pe格式文件來分析處理。

    2  各種視圖功能

    

 

     視圖窗口說明

IDA View-A 分析視圖窗口,用於顯示分析結果,可選用流程圖或代碼形式
Hex View-A 二進制視圖窗口,打開文件的二進制信息。
Exports   分析文件中的導出函數信息窗口
Imports 分析文件中的導入函數信息窗口
Names 名稱窗口,分析文檔中用到的標號名稱
Functions 分析文件中的函數信息窗口
Structures 添加結構體信息窗口
Enums 添加枚舉信息窗口

 

  3  查看分析信息

    

 

     圖為IDA分析后的反匯編代碼,將其復制稍微修改就可以直接在IDE上面跑匯編代碼了。

    IDA的數據查詢很簡單,只需要雙擊標號就可跟蹤到數據定義處。查看函數方式也是這樣。

  4 切換反匯編視圖和流程視圖

    

 

    在IDA views這里這個窗口選擇查看的是Graph overview流程圖查看,然后雙擊進入后就是text view查看。

    5 IDA函數名稱識別:

    IDA可以識別處函數MessageNBoxA及各參數的信息,IDA通過SIG文件來識別已知的函數信息。在安裝IDA的同時,已將常用庫制作為SIG文件放置在了IDA安裝目錄中的SIG文件夾下面,

    利用此功能可識別出第三方提供的庫函數,從而簡化分析流程。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM