软件逆向工程框架—Ghidra逆向分析工具使用与实战教程建议收藏!
摘要:Ghidra是美国国家安全局开发的软件逆向工程框架,支持多平台和多种指令集。本文介绍了Ghidra的安装方法(需Java环境)和基本使用流程,包括创建项目、导入文件、反汇编操作等。通过一个实战案例演示了如何利用Ghidra分析程序字符串、查看反汇编代码,并成功破解了一个简单程序的验证逻辑(将十六进制数0x86187转换为十进制549255作为正确输入)。文章最后提供了网络安全学习资源包的获取
简介
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
我们运行程序后将此数字输入看看
网络安全学习资源分享:
给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
因篇幅有限,仅展示部分资料,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,请看下方扫描即可前往获取
👉1.成长路线图&学习规划👈
要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。


👉2.网安入门到进阶视频教程👈
很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,其中一共有21个章节,每个章节都是当前板块的精华浓缩。(全套教程扫描领取哈)

👉3.SRC&黑客文档👈
大家最喜欢也是最关心的SRC技术文籍&黑客技术也有收录
SRC技术文籍:
黑客资料由于是敏感资源,这里不能直接展示哦! (全套教程扫描领取哈)
👉4.护网行动资料👈
其中关于HW护网行动,也准备了对应的资料,这些内容可相当于比赛的金手指!
👉5.黑客必读书单👈

👉6.网络安全岗面试题合集👈
当你自学到这里,你就要开始思考找工作的事情了,而工作绕不开的就是真题和面试题。
所有资料共282G,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,可以扫描下方二维码或链接免费领取~
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)