iT邦幫忙

2025 iThome 鐵人賽

DAY 14
0
Security

逆向系列 第 14

組合語言筆記 - 工具下載

  • 分享至 

  • xImage
  •  

前面介紹了幾個常見的逆向工具,這篇文章介紹如何下載這些工具:

  1. strings
    為 linux 內建的工具,無須下載

  2. objdump
    objdump 是 GNU binutils 套件的一部分,用來查看可執行檔或目標檔的詳細資訊,包含反組譯結果。預設輸出的語法是 AT&T,但我們可以轉成習慣使用的 intel 語法。

    安裝:

    sudo apt install binutils   # 安裝
    objdump --version           # 查看版本
    

    範例:

    objdump -M intel -d ./chosen   # 反組譯,輸出 intel 語法
    objdump -M intel -d ./chosen | head   # 只顯示前 10 行
    objdump -M intel -d ./chosen | head -n 20   # 顯示前 20 行
    objdump -M intel -d ./chosen | less   # 分頁顯示結果
    
    objdump -d program   # 一般反組譯
    objdump -t program   # 顯示符號表
    
  3. Radare2
    Radare2 是一套功能非常完整的開源逆向工程框架,能夠進行靜態分析與動態分析

    安裝方式:

    • 方法一:

      sudo apt update
      sudo apt install radare2
      
    • 方法二(從 GitHub 原始碼):

      sudo apt install git
      git clone https://github.com/radareorg/radare2.git
      cd radare2
      sys/install.sh
      

    確認是否有安裝:

    r2 -v   # 查看版本
    

    範例:

    r2 ./chosen0
    

    常見語法:

    ? 顯示有哪些指令
    
    d? 查詢 d 開頭的所有指令
    
    aa 分析檔案
    
    afl 列出目前檔案的 function,可以看到 main 等函式 function
    
    s <function> 移動到指定 function
    
    [0x00001080]> 代表目前所在位址
    
    V 進入圖形化介面
    
    q 退出
    

上一篇
組合語言筆記 - 常見工具
下一篇
組合語言筆記 - Radare2 基本操作
系列文
逆向30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言