一个逆向工具 Ghidra 在 Linux 上的安装和基本使用
项目网址:
https://github.com/NationalSecurityAgency/ghidra/releases1,下载
1.1 下载 ghidra
这里下载当前最新的预制二进制版本:
wget https://github.com/NationalSecurityAgency/ghidra/releases/download/Ghidra_11.4.2_build/ghidra_11.4.2_PUBLIC_20250826.zip解压:
直接 unzip 即可:
unzip ghidra_11.4.2_PUBLIC_20250826.zip
1.2. 下载 openjdk
这个 ghidra 需要 openjdk 21:
https://adoptium.net/temurin/releases?version=21&os=any&arch=any这里需要通过浏览器点击下载对应版本

解压到某合适的目录:

2. 应用 ghidra
2.1 配置 JAVA_HOME
在图形桌面上打开 terminal,然后通过命令行打开 ghidraRun
./ghidraRun第一打开的时候,会提示要求输入 java 21 的解压文件夹:
本机器是:/home/hipper/ex_ghidra/jdk_21_0_9p10
包含 ./bin/javac
2.2 应用分析二进制程序
运行后,出现如下界面:
先创建项目:
File-> New Project:

取个项目名字,选好文件夹。

导入二进制文件:

单击 import File ...
选择需要分析的 elf 文件(exe或so)加载:

单击 Tool -> run tools -> code browser:

在新窗口中单击 File-> open :

单击 OK后会紧接着询问是否 Analyze:

单击 Yes,单击 Analyze
等几分钟。
在 symbol tree中找function:

这里会在 decompile 窗口中给出反编译的 cpp 代码。
导出分析结果:

选好文件类型和文件名,例如 可以是 C/C++,然后开始导出:

然后可以结合文件格式查阅。
