简介
Ghidra 是由美国国家安全局研究局创建和维护的软件逆向工程 (SRE) 框架 。该框架包括一套功能齐全的高端软件分析工具,使用户能够在包括 Windows、macOS 和 Linux 在内的各种平台上分析编译代码。功能包括反汇编、汇编、反编译、绘图和脚本,以及数百个其他功能。Ghidra 支持多种处理器指令集和可执行格式,并且可以在用户交互和自动化模式下运行。用户还可以使用 Java 或 Python 开发自己的 Ghidra 扩展组件和/或脚本。
下载地址:
https://github.com/NationalSecurityAgency/ghidra
使用
在github里下载后进入文件夹,安装java环境
apt install openjdk-11-jdk
然后运行工具
./ghidraRun
进入主界面
新建一个项目或者打开一个项目
next
设置项目的存放地址,和名字
0
导入你想反汇编的文件,双击文件,然后会让你选择分析的东西,这里我们默认即可
实战
使用ghidra逆向程序
查看程序中的字符串
找到刚刚显示在终端里的字符串
然后双击去到函数调用的地方
点击反汇编函数
我们就能看到和ida差不多的反汇编的界面了
分析伪代码
在第二十一行的位置和0x86187做了一个对比,正确的话就弹出flag,错误的话就退出
我们将0x86187转换成十进制即可,右击,选择转换成10进制
对比的数字为549255
我们运行程序后将此数字输入看看
总结
这个工具我在外网看见的,并且工具本身也是开源的,我就拿来用一下试试,然后记录一下操作,平时我用的是ida和x64dbg,已经用习惯了