OpenJDKの導入

Homebrewのインストール

https://brew.sh/index_ja の「インストール」よりコマンドをコピーし、ターミナルに貼り付けてエンターキーを押します

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

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

$ brew --version
Homebrew 3.6.0
Homebrew/homebrew-core (git revision e5722d08e47; last commit 2022-09-09)
Homebrew/homebrew-cask (git revision 0dc06a0f09; last commit 2022-09-09)

OpenJDKのインストール

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

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

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

$ java --version
openjdk 18.0.2.1 2022-08-18
OpenJDK Runtime Environment Homebrew (build 18.0.2.1+0)
OpenJDK 64-Bit Server VM Homebrew (build 18.0.2.1+0, mixed mode, sharing)

Ghidra の導入

https://ghidra-sre.org/

Ghidraのダウンロード

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

Ghidraのファイルの解凍

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

Ghidraの起動 - Mac

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

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

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を選択

Non-shared projectを選択

適当なProject DirectoryとProject Nameを入力

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

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

「analyze now?」にYes

Analysis OptionはデフォルトでOK

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

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