Ghidra逆向分析工具使用

简介

Ghidra 是由美国国家安全局研究局创建和维护的软件逆向工程 (SRE) 框架 。该框架包括一套功能齐全的高端软件分析工具,使用户能够在包括 Windows、macOS 和 Linux 在内的各种平台上分析编译代码。功能包括反汇编、汇编、反编译、绘图和脚本,以及数百个其他功能。Ghidra 支持多种处理器指令集和可执行格式,并且可以在用户交互和自动化模式下运行。用户还可以使用 Java 或 Python 开发自己的 Ghidra 扩展组件和/或脚本。

安装

下载地址:https://github.com/NationalSecurityAgency/ghidra

在github里下载后进入文件夹,安装java环境:jdk-24版本

然后运行工具ghidraRun.bat

运行后会出现这个黑色的框框

将我们准备好的jdk文件根目录复制上去,然后回车

将我们准备好的jdk文件根目录复制上去,然后回车

如果出现这个界面的话就是配置成功

如图所示,我们只需保留主程序窗口就可以了

如何使用

  1. 首先我们创建一个project(上图我是已经新建了一个叫做demo01的项目)

  2. 选择Non-Shared Project (另一个选择Shared Project是会在本地监听一个端口,方便分享)

  3. 接下来填好路径和项目名就可以了

  4. 导入要分析的二进制文件,,或者直接将文件拖拽进工程,都选择默认选项就行

  5. 打开之后是这个界面,可以点击options选择添加外部库

  6. 得到一个程序的信息

  7. .双击这个工程的exe程序,或者将程序拖入Tool Chest中小龙(Tool Chest可以自己添加工具)

  8. 选择yes

  9. 按照默认的来,选择Analyze

  10. 等待一会,出现以下界面就打大功告成!

怎么找到函数

我们可以找到左边的functions,找到entry(当然有些程序直接有main,或者_start等关键字)

通过Filter搜索可以更快一点,双击即可再右边看到entry代码

相关推荐
sysinside3 天前
Binary Ninja 6.0 (macOS, Linux, Windows) 发布 - 逆向平台
逆向·反编译
0xBADCODE6 天前
动态DEX加载+反射+DES硬编码密钥:安卓三层逆向实战
android·java·python·安全·网络安全·逆向·ctf
深念Y6 天前
B站封面与元数据抓取完整方案
逆向
安全小王子11 天前
nssctf_chicken_soup
网络安全·逆向·ctf·nssctf
安全小王子11 天前
nssctf——老鼠走迷宫
网络安全·逆向·ctf·nssctf
深念Y11 天前
QQ 数据库解密与聊天记录导出 — 技术文档
数据库·sqlite·手机·数据恢复·逆向·二进制·qq
安全小王子11 天前
nssctf_easyapp
网络安全·逆向·ctf·nssctf
安全小王子13 天前
nssctf_sign-ezc++
网络安全·逆向·ctf·nssctf
网安蟹佬霸13 天前
Android安全攻防实战:从APK逆向到Frida动态Hook全流程详解(附脚本)
android·前端·安全·web安全·逆向·csrf·网安
刘晴83016 天前
游戏逆向实战:我会梯云纵
逆向