写在前面

  此系列是本人一个字一个字码出来的,包括示例和实验截图。本人非计算机专业,可能对本教程涉及的事物没有了解的足够深入,如有错误,欢迎批评指正。 如有好的建议,欢迎反馈。码字不易,如果本篇文章有帮助你的,如有闲钱,可以打赏支持我的创作。如想转载,请把我的转载信息附在文章后面,并声明我的个人信息和本人博客地址即可,但必须事先通知我

简介

  Ghidra是由美国国家安全局(NSA)研究部门开发的软件逆向工程(SRE)套件,用于支持网络安全任务。它包括一套功能齐全的高端软件分析工具,使用户能够在各种平台上分析编译后的代码,包括WindowsMac OSLinux。功能包括反汇编,汇编,反编译,绘图和脚本,以及数百个其他功能。Ghidra支持各种处理器指令集和可执行格式,可以在用户交互模式和自动模式下运行。用户还可以使用公开的API开发自己的Ghidra插件和脚本。

  每个教程都有自己的侧重点,介绍的应该是学习方法和基础知识,而不是填鸭式教学,不教的不会,这个不是我写这个教程的初衷。本系列教程侧重于Linux平台分析逆向ELF文件,我将会在Deepin操作系统上,使用Ghidra 10.1.5进行介绍。

  本系列教程是我研读The Ghidra Book完整版整理得到,结合我的写作风格,以尽可能简单的语言进行,并配合实例进行介绍,避免眼高手低的情况。

  国内有关Ghidra系统的入门教程很少,还是英文的,对于英文基础薄弱的同志是个头痛的事。但不意味着你不用学英语了,软件只有英文版本,没有任何其他语言的版本,当然包括中文。

  鉴于之前写的教程会被大量的网站转载,甚至自己不经我的允许原创并嵌入自己的广告。以防拿着我写的教程卖钱,我会在文章加入一些个人信息进行反制(在不影响教程流畅度和观感的情况下),当然这也不能彻底解决问题。

前置知识

  在学习任何教程之前,都有自己所需的前置知识,除非你学习最基础的课。在寂静的羽夏的本系列教程,如果你不学会如下知识,你将寸步难行:

  • 熟练使用 C/C++ ,对指针信手拈来
  • 会汇编(本篇是 Intel x64架构,其他类推)
  • 会英语,最起码对英语没有生理上的反感和恶心
  • 清楚什么是进制
  • 充分了解 C/C++ 与汇编的联系
  • 计算机编程和现代操作系统的基础知识,比如堆和栈、虚拟内存等
  • 什么是调用约定

  如果想充分了解C/C++汇编的联系,可以参考我的 羽夏看C语言系列教程 。虽然是Win平台的,但相差无几,原理相通。

目录

参考书

  The Ghidra Book完整版,想下载电子版找 看雪论坛 ,只有英文的,如果经济基础允许建议支持正版。

下一篇

  跟羽夏学 Ghidra ——工具

跟羽夏学 Ghidra ——简述的更多相关文章

  1. 跟羽夏学 Ghidra ——工具

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.本人非计算机专业,可能对本教程涉及的事物没有了解的足够深入,如有错误,欢迎批评指正. 如有好的建议,欢迎反馈.码字不易,如果本篇文章 ...

  2. 跟羽夏学 Ghidra ——初识

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.本人非计算机专业,可能对本教程涉及的事物没有了解的足够深入,如有错误,欢迎批评指正. 如有好的建议,欢迎反馈.码字不易,如果本篇文章 ...

  3. 跟羽夏学 Ghidra ——窗口

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.本人非计算机专业,可能对本教程涉及的事物没有了解的足够深入,如有错误,欢迎批评指正. 如有好的建议,欢迎反馈.码字不易,如果本篇文章 ...

  4. 跟羽夏学 Ghidra ——数据

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.本人非计算机专业,可能对本教程涉及的事物没有了解的足够深入,如有错误,欢迎批评指正. 如有好的建议,欢迎反馈.码字不易,如果本篇文章 ...

  5. 跟羽夏学 Ghidra ——引用

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.本人非计算机专业,可能对本教程涉及的事物没有了解的足够深入,如有错误,欢迎批评指正. 如有好的建议,欢迎反馈.码字不易,如果本篇文章 ...

  6. 跟羽夏学 Ghidra ——导航

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.本人非计算机专业,可能对本教程涉及的事物没有了解的足够深入,如有错误,欢迎批评指正. 如有好的建议,欢迎反馈.码字不易,如果本篇文章 ...

  7. 跟羽夏学 Ghidra ——调试

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.本人非计算机专业,可能对本教程涉及的事物没有了解的足够深入,如有错误,欢迎批评指正. 如有好的建议,欢迎反馈.码字不易,如果本篇文章 ...

  8. (一)羽夏看C语言——简述

    "羽夏看C语言"介绍什么   本系列从汇编的角度,比较翔实的介绍C语言.C++和C其实是一样的东西,C++的编译器只是更强大,更能帮助我们写代码,例如模板.没有特殊说明,本系列不会 ...

  9. 羽夏看Win系统内核——简述

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

  10. 羽夏看Win系统内核——保护模式篇

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

随机推荐

  1. vue项目nginx部署二级目录

    一.修改router.js中添加base根目录配置 const vueRouter = new Router({ mode: 'history', base: 'app', 二.修改vue.confi ...

  2. 《写给程序员的Python教程》阅读随笔---python禅学(Zen_of_python)

    Beautiful is better than ugly. Explicit is better than implicit. Simple is better than complex. Comp ...

  3. Refresh 重构(Refactor)

    最近在闲暇之余重(第)温(一..次)此书, 首先能感受到的, 无论你是新程序员还是老程序员, 这本书都已经不具备太多的可读性了. 由于本书成书年代久远, 那个时候软件行业还不够发达, 面向对象还没有被 ...

  4. 【VMware vSAN】创建vSAN Max集群并配置挂载远程数据存储。

    VMware Explore 2023大会上,VMware正式发布了vSAN Max,这是VMware的一种全新分解存储架构,可以为vSphere集群提供PB级分解存储.vSAN Max是基于vSAN ...

  5. #线段树,矩阵乘法#LOJ 3264「ROIR 2020 Day 2」海报

    题目 分析 设\(dp[i][0/1/2/3]\)表示以\(i\)结尾1的长度为0/1/2/3的最大值, 那么 \[\begin{cases}dp[i][0]=\max\{dp[i-1][\dots] ...

  6. FFmpeg开发笔记(十二)Linux环境给FFmpeg集成libopus和libvpx

    ​MP4是最常见的视频封装格式,在<FFmpeg开发实战:从零基础到短视频上线>一书的"1.2.3  自行编译与安装FFmpeg"介绍了如何给FFmpeg集成x264和 ...

  7. 战码先锋直播预告丨参与文档贡献,开启OpenHarmony社区贡献之旅

    OpenAtom OpenHarmony(以下简称"OpenHarmony")工作委员会首度发起「OpenHarmony开源贡献者计划」(本期OpenHarmony开源贡献者计划以 ...

  8. 30分钟成为Contributor|共建测试子系统,赋能提升项目代码质量

    如何优雅地参与开源贡献,向顶级开源项目提交 PR(Pull Request),跟着大咖30分钟成为OpenAtom OpenHarmony(以下简称"OpenHarmony") C ...

  9. Docker 学习之道: 容器注册表及其最佳实践

    容器注册表是Docker容器镜像的集中存储和分发系统.它允许开发人员以这些镜像的形式轻松共享和部署应用程序.容器注册表在容器化应用程序的部署中发挥着关键作用,因为它们提供了一种快速.可靠和安全的方式, ...

  10. C# Lock的用法

    当我们使用线程的时候,效率最高的方式当然是异步,即各个线程同时运行,其间不相互依赖和等待.但当不同的线程都需要访问某个资源的时候,就需要同步机制了,也就是说当对同一个资源进行读写的时候,我们要使该资源 ...