Ghidraの操作メモ - Navigationメニュー(その1) - | reverse-eg-mal-memoのブログ

reverse-eg-mal-memoのブログ

サイバーセキュリティに関して、あれこれとメモするという、チラシの裏的存在。
medium(英語):https://sachiel-archangel.medium.com/

●指定アドレス・ラベルへのジャンプ

Navigationの機能で、指定のアドレスやラベルにジャンプする方法です。

Navigationのメニューから選択できるほか、ショートカットが利用できます。

 

 

●Go To ...

個人的には、一番使います。ショートカットも「G」キーと、押しやすく覚えやすいキーがアサインされています。
というか、IDA Proと同じじゃん。
Go To...を実行すると、ダイアログが表示されます。ここに、アドレスのほかラベルを入力してもOKです。このため、解析時に分かりやすいラベルを設定しておくと、解析の途中で参照するときに便利でしょう。
 
 

●Go To Symbol Source

ソースとリンクしていれば、そちらにジャンプする機能のようです。
eclipseと連携しているようですが、私の環境には入っていないので、エラーとなってしまいます。
まあ、マルウェア解析する場合にソースが入手できるケースはほぼ考えられないので・・・。
というか、ソース入手できてるんなら、そっちをそのまま解析したほうが早くね?
(もちろん、Ghidraはマルウェア解析専用に作られたものではないと思うので、開発者がコンパイル後のコードとの比較で使うかもですが。・・・それって、マルウェアの開発も捗らね?(汗))
 

●Go To Next Function、Go to Previous Function

現在のカーソル位置から、次または前の関数の開始位置へと移動する機能です。
物理的な位置を憶えながら解析するほど器用ではないので、個人的にはあまり使わないかも。
 

●Go To Program...、Go To Last Active Program

Listingに複数のプログラムを開いている場合に、プログラム間の移動をする場合に使います。
最初にプロジェクトからGhidraのCodeBrowserを起動するとタブは一つですが、CodeBrowserのファイルメニューのImport File...から別の実行ファイルを読み込むと、新たなタブが作成され、そのプログラムも解析されます。なお、試したところ、タブに表示される名前さえ変えれば、同じ実行ファイルでも解析可能でした。そんな用事はないと思いますが、もし同じ検体をAnalyzeのオプションを変えて解析したい場合は、それも可能なようです。
Go To Program...を押すと、タブで表示されているプログラムがリスト表示されます。このリストからプログラムを選択すると、そのタブがアクティブになります。Go To Last Active Programは、直前にアクティブだったタブに移動します。
なお、これと同じ操作は、タブをクリックすることでも可能です。
・・・いや、やっぱり普通はタブを使うよね?私は多分タブを使うし、この機能忘れそうだなぁ・・・忘れても問題無いかと思います・・・。