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代码

相关推荐
浩浩测试一下10 小时前
抬栈 恢复上下文 (逆向分析)
汇编·逆向·堆栈·windows核心编程
NPE~1 天前
[App逆向]脱壳实战
android·教程·逆向·android逆向·逆向分析
深念Y4 天前
Denuvo加密被全面攻破?聊聊D加密原理和这次的破解事件
人工智能·游戏·ai·逆向·虚拟机·虚拟·d加密
white-persist9 天前
逆向入门经典题:从 IDA 反编译坑点到 Python 解题详细分析解释
c语言·开发语言·数据结构·python·算法·逆向·安全架构
曼岛_11 天前
[逆向工程]160个CrackMe入门实战之Andrnalin.2解析(九)
java·数据库·microsoft·逆向
CYRUS STUDIO16 天前
Frida 检测与对抗实战:进程、maps、线程、符号全特征清除
android·逆向·frida
CYRUS_STUDIO17 天前
Frida 检测与对抗实战:进程、maps、线程、符号全特征清除
android·逆向
CYRUS STUDIO17 天前
Frida 源码编译全流程:自己动手编译 frida-server
android·安全·逆向
CYRUS_STUDIO18 天前
Frida 源码编译全流程:自己动手编译 frida-server
android·逆向
岁岁的O泡奶20 天前
NSSCTF_reverse_[SWPUCTF 2022 新生赛]base64——[HDCTF 2023]easy_re
经验分享·python·逆向