核心目标 (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)
这是一个视频和互动教程部分,通过实际操作来加深理解:
- How To Use REA To Clone Any Software In Minutes:一个快速入门教程,教你如何用 REA 克隆软件。
- REA + Pi Coding Agent Tutorial:一个有趣的实战项目,逆向工程 Chrome 浏览器的恐龙游戏并创建你自己的版本。
- Ghidra Tutorial for Beginners:Ghidra 是经典的逆向分析工具,这个教程教你如何导入二进制文件、使用反编译器并进行基本导航。
- Frida for Android Reverse Engineering:学习如何使用 Frida 对 Android 应用进行动态观察,特别是 Java 方法。
- pwn.college Reverse Engineering:提供简短的视频和真实的二进制文件挑战。
- 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)
推荐了从入门到精通的必读经典:
- The Ghidra Book, 2nd Edition:Ghidra 的权威指南。
- Reverse Engineering for Beginners:一本巨大的免费电子书(甚至有俄语翻译)。
- Practical Binary Analysis:深入讲解二进制格式、反汇编、插桩和二进制分析。
- Practical Malware Analysis:专注于静态/动态分析、调试和安全实验环境的搭建。
- The Android Malware Handbook:专门分析 Android 应用和 APK 的恶意软件。
- 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)
最后,路线图给出了一个推荐的、循序渐进的学习路径:
- 安装 REA
- 完成 "Notes Export" 实践
- 将 Notion 作为一个 Electron 应用进行拆解分析
- 解决一个 CTF 题目
- 调查 Aegis APK
- 重现 DX-Ball 中的一个函数
- 学习 Ghidra、汇编语言和论文
路线图特别强调:不需要按顺序学习所有内容。整个学习路径的核心思想是:选择一个应用中的一个功能 -> 获取 REA 分析的证据 -> 形成清晰的规范 -> 在本地重建 -> 与原始程序进行测试比对。

浙公网安备 33010602011771号