Ghidra(ギドラ、 )は、アメリカ国家安全保障局(NSA)によって開発されたオープンソースのリバースエンジニアリングツールである。実行バイナリは2019年3月の RSAカンファレンスで公開され、ソースコードは1か月後にGitHubで公開された。Ghidraは多くのセキュリティ研究者によってIDA Proの競合相手とみなされている。また、GUI用のSwingを使用してJavaで作成されている。逆コンパイラの部分はC++で記述されているため、スタンドアロン形式で使用できる。

Ghidraを使用して自動分析を実行するスクリプトは、JavaまたはPython(Jython経由)で作成できる。ただし、この機能は拡張可能であり、コミュニティプラグインを介して他のプログラミング言語でも作成できる。Ghidraに新しい機能を追加するプラグインは、Javaベースの拡張フレームワークを使用して開発できる。

歴史 Ghidraの存在は2017年3月にを通じて初めて公開されたが、ソフトウェア自体は2年後に機密解除され、正式リリースまで利用できないままだった。ソースコード内のコメントから、1999年頃から存在していたことが判明した。 +大幅な変更箇所バージョン年主な変更点1.02003概念実証2.02004データベース、ドッキングウィンドウ3.02006SLEIGH、逆コンパイラ、バージョン管理4.02007スクリプト、バージョントラッキング5.02010ファイルシステムブラウザ6.02014非機密バージョン9.02019公開バージョン9.22020グラフ可視化、新たなパーサー10.02021デバッガー11.02023RustとGoバイナリのサポート、BSim11.12024SwiftとDWARF 5のサポート、 Mach-Oの改善

2019年6月、corebootはGhidraのソフトウェアスイートをオープンソースで公開した後、ファームウェア固有の問題に対するリバースエンジニアリングの取り組みにGhidraの使用を開始した。

Ghidra 10.0以降、正式にデバッガとして使用できるようになった。Ghidraのデバッガは、経由のユーザーモードWindowsプログラムとGDB経由のLinuxプログラムのデバッグをサポートしている。

対応アーキテクチャ 次のアーキテクチャまたはバイナリ形式に対応している。

x86 16、32、64 ARM、AArch64 PowerPC 32/64 and VLE MIPS 16/32/64 microMIPS 68xxx Java、DEX bytecode PA-RISC RISC-V eBPF BPF Tricore PIC 12/16/17/18/24 SPARC 32/64 CR16C Z80 6502 MC6805/6809, HC05/HC08/HC12 8048, 8051, 8085 CP1600 MSP430 AVR8, AVR32 SuperH V850 Loongson Xtensa

脚注

注釈

出典

関連項目 IDA Pro JEB decompiler Binary Ninja

外部リンク