Skip to main content

MacでGhidraを動かす

· 3 min read
hi120ki
Hiroki Akamatsu

OpenJDKの導入

Homebrewのインストール

公式サイト の「インストール」よりコマンドをコピーし、ターミナルに貼り付けてエンターキーを押します

コマンド実行後、続けて実行する必要のあるコマンドがターミナルに表示されるので、案内に従ってそのコマンドをコピーし、ターミナルに貼り付けてエンターキーを押します

brew --versionコマンドをターミナルで実行し、以下のような表示(バージョン番号や日付は異なることがある)が出ればインストール完了です

brew --version

OpenJDKのインストール

brew install openjdkコマンドをターミナルで実行し、OpenJDKをインストールします

コマンド実行後、続けて実行する必要のあるコマンドがターミナルに表示されるので、案内に従ってそのコマンドをコピーし、ターミナルに貼り付けてエンターキーを押します

java --versionコマンドをターミナルで実行し、以下のような表示(バージョン番号や日付は異なることがある)が出ればインストール完了です

java --version

Ghidra の導入

https://ghidra-sre.org/

Ghidraのダウンロード

https://github.com/NationalSecurityAgency/ghidra/releases をブラウザで開き最新のバージョンのzipファイルghidra_<バージョン>_PUBLIC_<日付>.zipをダウンロードする

ghidra-github.jpg

Ghidraのファイルの解凍

ダウンロードしたghidra_<バージョン>_PUBLIC_<日付>.zipファイルを移動させ(今回はDocuments),ダブルクリックで解凍します

ghidra-move.png

ghidra-moved.png

Ghidraの起動 - Mac

ターミナルで解凍したディレクトリに移動し./ghidraRunで実行します

cd ~/Documents/
cd ghidra_10.1.5_PUBLIC/
./ghidraRun

ghidra-welcome.png

MacOS にて Ghidra 付属のデコンパイラが「開発元が未確認」とエラーが出る場合は

システム環境設定アプリ > セキュリティとプライバシー > 一般 > ダウンロードしたアプリの許可実行

から実行を許可する必要があります

Tips

またいちいちディレクトリに移動するのが面倒な場合は shell に alias を追加し起動することもできます

  • fish shell の場合 (~/.config/fish/config.fish)
alias ghidra '~/Documents/ghidra_10.1.5_PUBLIC/ghidraRun'

を追記すると ghidra コマンドで Ghidra を起動させることができます

(おまけ) Ghidraでのファイル読み込み

起動後File→New Projectを選択

ghidra-1.png

Non-shared projectを選択

ghidra-2.png

適当なProject DirectoryとProject Nameを入力

ghidra-3.png

Tool Chestの緑のアイコンをクリック

ghidra-4.png

File→Import Fileから配布バイナリを選択

ghidra-5.png

ghidra-6.png

ghidra-7.png

「analyze now?」にYes

ghidra-8.png

Analysis OptionはデフォルトでOK

ghidra-9.png

左の真ん中のSymbol TreeのFunctionsを展開しmainを選択

ghidra-10.png

ghidra-11.png

真ん中に逆アセンブル結果,右に逆コンパイル結果が表示される

ghidra-12.png