核心目标 (STOP WASTING HOURS...)

这份路线图是为了提供一个实践性极强的学习路径,帮助学习者通过真实的案例、工具、书籍和论文来学习逆向工程,避免在无效的信息搜索中浪费大量时间。

从这里开始 (START HERE)

这部分是学习的入口,提供了快速上手所需的核心资源:

  • REA 官方仓库与网站:获取代码、安装指南、发布说明和文档。
  • 安装与环境设置 (Installation & Agent Setup):学习如何连接 Claude、Cursor 等 AI 代理。
  • 你的第一次 REA 调查 (Your First REA Investigation):一个入门实践,通过追踪一个导出按钮来分析渲染、预加载、进程间通信 (IPC) 和 CSV 写入。
  • REA 指南 (REA Guides):为不同目标(如本地二进制文件、Electron 应用和浏览器运行时)提供了不同的学习路径。
  • Guided MCP Prompts:提供了一系列现成的工作流指令,用于调查功能、比较版本、验证重建结果和追踪崩溃等。
观看与同步练习 (WATCH & FOLLOW ALONG)

这是一个视频和互动教程部分,通过实际操作来加深理解:

  1. How To Use REA To Clone Any Software In Minutes:一个快速入门教程,教你如何用 REA 克隆软件。
  2. REA + Pi Coding Agent Tutorial:一个有趣的实战项目,逆向工程 Chrome 浏览器的恐龙游戏并创建你自己的版本。
  3. Ghidra Tutorial for Beginners:Ghidra 是经典的逆向分析工具,这个教程教你如何导入二进制文件、使用反编译器并进行基本导航。
  4. Frida for Android Reverse Engineering:学习如何使用 Frida 对 Android 应用进行动态观察,特别是 Java 方法。
  5. pwn.college Reverse Engineering:提供简短的视频和真实的二进制文件挑战。
  6. Malware Unicorn RE101:一个安全实验室,专注于静态分析、调试和 x86 汇编语言。
真实的 REA 调查案例 (REAL REA INVESTIGATIONS)

这部分展示了 REA 在实际应用中的威力,通过一系列真实案例来证明其能力:

  • Notes Export:分析笔记导出功能,追踪从按钮点击到生成 CSV 文件的全过程。
  • Notion Clipboard:研究 Notion 如何通过 Electron 应用处理文本、HTML 和结构化块数据。
  • DX-Ball Reconstruction:一个极具说服力的案例,将 .exe 文件中的一个函数成功还原为可验证的 C 代码。
  • Aegis APK:分析一个 APK 文件,找到其算法并定位到本地的代码生成器实现。
  • TH04 Bullet Patterns:将 16 位 DOS 代码重建为可读的 C++ 实现。
  • CTF Flag Checker:逆向一个二进制文件,从条件逻辑推导出方程,并与原始程序进行比对。
  • Chrome Dinosaur Speed:分析浏览器运行时,创建加速规则并构建自己的迷你游戏。
  • 171 REA Cases:一个汇集了社区项目、文章和官方案例的索引。

特别提到了 DX-Ball 案例的严谨性:重建的函数经过了 3205 个输入的测试,其编译结果与原始的 63 字节完全匹配。这证明了逆向工程的精确性,而不仅仅是“AI 猜测的代码”。

GitHub 仓库 (GITHUB REPOS)

列出了学习过程中会用到的关键开源工具和项目:

  • 核心工具:morluto/rea(REA 主引擎)、NSA Ghidra(反汇编器和反编译器)、JADX(APK 转 Java)、Frida(动态插桩)、ILSpy(.NET 反编译)、x64dbg(Windows 调试器)、Cutter(图形化逆向平台)。
  • 资源集合:morluto/awesome-reverse-engineering 和 alexqauth/awesome-reverse-engineered,汇集了各种逆向工程相关的工具、应用、API 和设备重建项目。
  • 项目展示:sawu/rea-gems,一个展示用 REA 构建的项目画廊。
书籍 (BOOKS)

推荐了从入门到精通的必读经典:

  1. The Ghidra Book, 2nd Edition:Ghidra 的权威指南。
  2. Reverse Engineering for Beginners:一本巨大的免费电子书(甚至有俄语翻译)。
  3. Practical Binary Analysis:深入讲解二进制格式、反汇编、插桩和二进制分析。
  4. Practical Malware Analysis:专注于静态/动态分析、调试和安全实验环境的搭建。
  5. The Android Malware Handbook:专门分析 Android 应用和 APK 的恶意软件。
  6. Reversing: Secrets of Reverse Engineering:底层逆向工程的经典之作。
研究论文 (RESEARCH PAPERS)

推荐了一些前沿的学术研究,展示了逆向工程与人工智能的结合:

  • LLM4Decompile 和 AutoDecompiler:使用大型语言模型 (LLMs) 来分解二进制代码。
  • Decompensator:一个关于人们如何分解程序的众包项目。
  • DIRTY:一种恢复分解代码中变量名和类型的方法。
  • TRex:一种在测试中表现优异的类型恢复技术。
免费课程与实践 (FREE COURSES & PRACTICE)

提供了丰富的在线学习和实践资源:

  • OpenSecurityTraining2: x86-64 Assembly:免费学习计算机体系结构和汇编语言的基础。
  • pwn.college: Reverse Engineering:通过小型二进制文件和挑战来学习逆向工程。
  • Malware Unicorn RE101:一个完整的入门实践工作坊。
  • Nightmare:提供了数百个 CTF(夺旗赛)挑战。
  • RPISEC Modern Binary Exploitation:提供关于二进制文件、调试和利用的实验室练习。
最佳学习顺序 (Best order to learn)

最后,路线图给出了一个推荐的、循序渐进的学习路径:

  1. 安装 REA
  2. 完成 "Notes Export" 实践
  3. 将 Notion 作为一个 Electron 应用进行拆解分析
  4. 解决一个 CTF 题目
  5. 调查 Aegis APK
  6. 重现 DX-Ball 中的一个函数
  7. 学习 Ghidra、汇编语言和论文

路线图特别强调:不需要按顺序学习所有内容。整个学习路径的核心思想是:选择一个应用中的一个功能 -> 获取 REA 分析的证据 -> 形成清晰的规范 -> 在本地重建 -> 与原始程序进行测试比对。

posted on 2026-10-24 14:08  PetterLiu  阅读(19)  评论(0)    收藏  举报