ghidra使用教程
2019年,NSA發布了一款功能強大、免費的開源逆向分析工具:Ghidra。該反匯編工具類似于我們常用的IDA,不過其基于JAVA開發,是一款適用于Windows、Mac和Linux的跨平臺反匯編工具,用戶還可以使用Java或Python開發自己的Ghidra插件或者腳本。2017年維基解密在Vault 7中首次曝光了Ghidra,該信息來自于中央情報局(CIA)的內部文件,Ghidra在過去數年里一直被用于NSA相關的網絡安全任務當中。
安裝
首先你需要在ghidra官網https://ghidra-sre.org/上下載文件或者你可以執行以下命令
wget https://ghidra-sre.org/ghidra_9.0.1_PUBLIC_20190325.zip
該命令制定下載版本,當然你也可以自己選擇合適的版本下載。
下載完成之后進行解壓縮,這是對于我的版本。
unzip ghidra_9.0.1_PUBLIC_20190325.zip
接下來安裝Java jdk 和 jre
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt update
sudo apt install openjdk-11-jdk
sudo apt install openjdk-11-jre-headless
進入安裝目錄chmod +x gihdraRun./ghidraRun
此時已經安裝完成,程序已經可以跑起來了


Ghidra的使用
Ghidra功能齊全。它包括強大的代碼瀏覽器,圖形查看器,反編譯器,數百個腳本,各種搜索工具,撤消/重做支持,協同工作服務器,程序差異比較工具等。由于Ghidra是巨大的,這里無法涵蓋每一個功能。那么,我們將關注那些經驗豐富的逆向工程師所認為的基礎功能,也就是最重要和最有用的功能。
項目管理
在Ghidra中,任何東西都是一個項目。與IDA不同,您不會使用輸入文件開始逆向工程會話,而是從創建項目開始。

新建一個非共享項目

創建好項目之后我們就可以選擇文件進行反編譯了,選擇2018SUCTF一道題目進行反編譯測試

然后就可以在目錄下看到加載的目標了,雙擊即可進入

分析后就可以看到完整界面了,由于是基于項目的,我們可以導入多個文件

主要功能介紹
Navigation菜單
該菜單下是一些主要操作選項:

Window菜單
該菜單下是其主要支持的功能窗口,類似于IDA中view->opensubview

腳本管理菜單

選中之后是可以直接運行的,比如我們選擇搜索字符串功能

在左側的操作欄中可以看到有程序樹,符號樹,數據類型管理這幾個界面。,
反編譯(Ctrl+E)
相當于IDA中的F5,展示反編譯后的代碼:

更多操作
更多詳細的快捷鍵和操作可見解壓后docs文件夾中的CheatSheet.html文件:

參考