web-dev-qa-db-ja.com

ギドラとアイダの違いは何ですか?

ギドラとアイダの比較はありますか?ギドラがイダにない特定の機能はありますか? Ghidraを詳細に説明する優れた情報源(できれば本)はありますか?

17
Avi

これは主に主観的ですが、

  • Ghidraは無料で、逆コンパイラを含めて GitHubのオープンソース です。 IDAは、特に逆コンパイラライセンスの追加を開始するときに、非常に高価です。
  • IDAはGhidraがサポートしていないいくつかのアーキテクチャをサポートし、その逆も同様です。
  • IDAにはデバッガーがありますが、Ghidraにはありません。
  • Ghidraには複数のバイナリを一度にプロジェクトにロードする機能がありますが、IDAのサポートは制限されており、ほとんどが醜いハックです。これは、アプリケーションとそのライブラリの間のコードをより簡単に追跡できることを意味します。
  • Ghidraの逆アセンブラには、データフロー分析が組み込まれており、レジスタまたは変数をクリックすると、どこからデータを取得できるかがわかります。 IDAには、そのレジスターの他の使用法を示すための「ダム」テキスト強調表示があります。これらの機能は、同じ概念の実装が少し異なり、両方に用途があります。
  • Ghidraには、設計によって組み込まれた協調的な分解/逆コンパイラプロジェクトがありますが、IDAは協調を行うためにプラグインを必要とし、IDAデータベースファイルは共有するようには設計されていません。
  • ギドラには元に戻すボタンがあります!そしてそれはうまくいきます! (IDAはそうではなく、それは非常に迷惑です)
  • IDAははるかに成熟しており、ギドラが(まだ)ミラーリングできない長年にわたって追加された多くの小さな機能を備えています。
  • IDAはより成熟したユビキタスな製品であるため、IDAを中心に多くのオープンソースツールが構築されています。
  • ギドラが表示され、非常に大規模な(1GB +)ファームウェアイメージを適切なパフォーマンスでサポートします。また、大きなメモリ領域を宣言するファームウェアイメージの分析にも問題はありません。 IDAは歴史的にこれに問題があり、非常にイライラすることがあります。
  • 事例として、Windows OSバイナリ(kernelbase.dllなど)の逆アセンブルに対するGhidraのサポートは、x86命令デコーダのいくつかのバグが原因で現在壊れています。これについてGitHubに問題があります。

これらのポイントは、執筆時点(2019年3月)に当てはまりますが、時間の経過とともに変化する可能性があります。

28
Polynomial

edit 2020-04-07: The Ghidra Book は2020年7月にリリースされる予定です。現在、最初の8つの章のみが早期アクセスPDFの形式で利用できます。

この質問は https://reverseengineering.stackexchange.com/questions/ に適しています。

ギドラとアイダの比較はありますか?

はいあります。 1つは、Infiltrateセキュリティ会議2019でJeremy BlackthorneとAlexei Bulazelによって作成されました。

ギドラがアイダにない特定の機能はありますか?

以下は、ギドラ、IDA、およびバイナリ忍者を比較するプレゼンテーションのスライドです。

  • 3者間比較

    IDA vs Binary Ninja vs Ghidra

  • 逆コンパイラ:IDA Hex-Rays対Ghidra

    IDA Hex-Rays vs Ghidra

  • 中級言語:Binary Ninja vs Ghidra

    ILs: Binary Ninja vs Ghidra

    Ghidraを詳細に説明する優れた情報源(できれば本)はありますか?

まだ本はありません。

いくつかの重要なポイント:

  • Ghidraは、あらゆるアーキテクチャをサポートするように拡張できます。アーキテクチャのサポートは Sleigh で追加できます
  • IDAはバージョン7.3に元に戻す機能を含むようにリファクタリングされました
5
julian