【免费下载链接】awesome-reverse-engineering
Curated reverse-engineering tools and learning resources for binaries, apps, firmware, formats, and protocols.
🔍 逆向工程(Reverse Engineering)是通过分析二进制程序、应用、固件和协议来理解其内部行为的技术。awesome-reverse-engineering 是一份精心整理的逆向工程工具与学习资源清单,收录 140+ 款工具、书籍、课程和实战平台,覆盖二进制分析、调试、恶意软件分析、移动端逆向、固件逆向等 15 个主题分类,每条都写明了"这个工具能帮你完成什么任务",是新手快速建立逆向工具视野的完整指南。
一、清单里有什么:15 大分类逆向工具一览
这份清单最大的特点是**"按任务找工具"**——不是堆工具名,而是告诉你每个工具解决什么问题。各分类条目数如下:
| 分类 | 适合任务 | 条目数 |
|---|---|---|
| 📚 学习资源(Learning) | 学汇编、学逆向基础 | 12 |
| 🗂️ 文件识别与初筛(File identification & triage) | 判断未知可执行文件"是什么" | 9 |
| 🧬 原生分析(Native analysis) | 反编译、读懂机器码 | 9 |
| 🐞 调试器(Debuggers) | 单步跟踪运行中的程序 | 8 |
| 📡 动态插桩与跟踪(Instrumentation) | 拦截调用、观测运行时行为 | 6 |
| ☣️ 恶意软件分析(Malware analysis) | 沙箱、内存取证、规则扫描 | 9 |
| 📱 Android 与托管代码 | 逆向 APK、.NET、Java | 11 |
| 🍎 iOS 与 macOS | 逆向 Apple 平台程序与固件 | 5 |
| 🧱 语言运行时与打包器 | 解包 Python、Go、Unity 等 | 10 |
| 🌐 Web 与协议分析 | 抓包、解析协议 | 10 |
| 🔌 固件与硬件(Firmware & hardware) | 提取固件、芯片调试 | 14 |
| 📐 文件格式(File formats) | 解析自定义二进制格式 | 7 |
| ⚖️ 二进制差分与分析框架 | 对比版本、自动化分析 | 9 |
| 🤖 AI 辅助分析(AI-assisted analysis) | 用 AI Agent 驱动分析 | 11 |
| 🎯 实战与社区(Practice & communities) | 刷题、CTF、提问 | 8 |
💡 另有 docs/list-review.md 提供 21 个同类清单的带日期对比评测,帮你判断"这份清单和其他 awesome 列表相比强在哪"。
二、新手入门逆向工程:三步走学习路线
README 开头就内置了一张"Start here" 路线表,按你要完成的任务直接指向分类,新手照着走即可:
第一步:打好汇编与逆向基础(Learning)
逆向的地基是汇编语言和可执行文件格式。这个分类里的免费资源质量很高:
- Reverse Engineering for Beginners:把 C/C++ 示例逐行对应到汇编的免费入门书,公认的新手第一读物
- pwn.college:浏览器里就能跑的实验课程,覆盖 Linux、汇编、逆向与二进制漏洞利用
- Compiler Explorer:在网页上实时查看代码编译后的汇编,直观理解"源代码 → 机器码"
- 书籍方面推荐《Practical Binary Analysis》和《The Ghidra Book》(2026 第二版),前者讲 ELF/PE 内部结构,后者手把手带你用 Ghidra
第二步:识别与分析二进制文件(Triage + Native analysis)
拿到一个未知可执行文件,逆向工程师的肌肉记忆是先"初筛"再看内部:
- Detect It Easy / pestudio / PE-bear:快速识别文件格式、编译器、打包器,查看 PE 头、导入表等特征
- FLOSS:恢复被混淆的字符串,常能直接暴露程序的意图
- Ghidra(NSA 开源):反汇编 + 反编译 + 无头分析,免费且功能全,新手首选
- IDA:交互式反汇编反编译标杆,商业软件(有免费版)
- radare2 / Rizin / Cutter:命令行派与图形界面派,Cutter 是 Rizin 的图形前端
- Binary Ninja:中间表示(IR)做得最好的反编译器之一,商业软件(有免费版)
第三步:动态调试与运行时跟踪(Debuggers + Instrumentation)
静态分析看不动时,就让程序跑起来观察:
- GDB + GEF / pwndbg:Linux 下的标准调试组合,插件提供寄存器、堆、内存上下文视图
- x64dbg:Windows 用户态调试器事实标准
- WinDbg:微软官方调试器,支持时间旅行调试(TTD)
- Frida:向运行中进程注入脚本,拦截函数调用、修改行为,移动端逆向的"瑞士军刀"
- strace:跟踪 Linux 系统调用,看程序到底读了什么文件、发了什么网络包
三、按场景选工具:恶意软件分析到固件逆向
☣️ 恶意软件分析必备工具
⚠️ 官方特别提醒:只在隔离、可丢弃的环境中运行恶意样本。
- CAPE Sandbox:自动化沙箱,在虚拟机中运行样本并记录行为、释放的载荷
- REMnux:一整套 Linux 恶意分析工具箱,虚拟机/容器即装即用
- Volatility 3:内存取证框架,从内存镜像中提取进程、网络连接
- YARA / YARA-X:用规则字符串和字节模式识别分类文件
- FLARE-VM:一键把 Windows 虚拟机装成恶意分析工作站
📱 移动端逆向:Android 与 iOS
- JADX:Android DEX 反编译器,图形界面直接看回 Java 代码
- Apktool:解包 Android 资源和 Smali 代码,改完还能重新打包
- MobSF:Android/iOS 应用自动化静态+动态安全分析
- objection:基于 Frida 的 iOS/Android 运行时探索工具,支持方法挂钩、绕过证书校验
- ipsw:下载和检查 iOS/macOS 固件、dyld 共享缓存与 Mach-O 二进制
🔌 固件与硬件逆向
这个分类是全清单最大的板块(14 项):
- Binwalk / unblob:从固件镜像中识别并提取嵌套的压缩文件、文件系统
- QEMU:模拟运行其他架构的固件,还带 GDB 调试桩
- OpenOCD / flashrom:连接硬件调试接口、读写 Flash 芯片
- FirmAE / EMBA:模拟路由器等 Linux 固件、生成固件安全分析报告
🤖 AI 辅助分析:让 Agent 帮你逆向
这是清单的前瞻板块:通过MCP Server把 IDA、Ghidra、Binary Ninja、radare2、JADX 等成熟工具暴露给 AI 客户端,由 Agent 协调完成反编译、函数重命名、代码解释等任务。官方建议:AI 的结论一定要回到底层代码和运行时证据上验证。
四、新手避坑指南:挑选逆向工具要注意什么
- 认准 "commercial" 标记:清单中商业工具(如 IDA、JEB、Burp Suite)都会明确标注commercial,并注明是否有免费版/社区版
- 看维护状态:清单会注明哪些项目已进入维护模式或归档(如 de4dot 已归档、RetDec 停止更新),并给出替代方案(如 Il2CppDumper → Cpp2IL)
- 不要只看 Star 数:CONTRIBUTING.md 明确"Star 数量不等于质量",每条描述的判据是"它何时对你有用"
- 先跑通再上强度:恶意样本进沙箱,实验环境用虚拟机,别在主力机上直接运行未知二进制
五、动手练习:逆向工程实战资源
学完工具必须刷真题,清单收录了 8 个高质量实战渠道:
- picoCTF:卡内基梅隆大学的免费 CTF 平台,逆向题对新手友好,还有全年开放的练习场
- crackmes.one:按平台、架构、难度分类的练手二进制
- FLARE-On:年度逆向挑战赛,往届题目和官方解答全部公开
- Microcorruption:浏览器里的嵌入式固件逆向 CTF,自带调试器
- Reverse Engineering Stack Exchange:工具、汇编、格式相关的问答社区
六、相关文档与项目资料
| 资料 | 说明 |
|---|---|
| README.md | 工具清单主文件,含 Start here 路线表 |
| CONTRIBUTING.md | 贡献规范:如何建议资源、更新与删除条目 |
| docs/list-review.md | 21 个同类清单的带日期结构对比评测 |
| docs/browser-tools-review.md | 浏览器类逆向工具的专项评测 |
| docs/priority-candidates.md | 候选资源的逐条来源审查记录 |
| examples/resource-intake/README.md | Construct / Scapy / YARA-X / Vineflower 四个可复现示例 |
🚀总结:awesome-reverse-engineering 用"按任务找工具"的组织方式,把 140+ 款逆向工程工具、12 份学习资源和 8 个实战平台整理成一张可执行的学习地图。新手只需三步:从 Learning 分类打基础 → 用 Ghidra + GDB/x64dbg 动手分析第一个二进制 → 去 picoCTF 和 crackmes.one 刷题巩固。打开 README.md 的 Start here 表格,今天就能开始第一次逆向之旅。
【免费下载链接】awesome-reverse-engineering
Curated reverse-engineering tools and learning resources for binaries, apps, firmware, formats, and protocols.
相关推荐
Delphi逆向工程:从入门到精通的完整工具指南
Delphi逆向工程:从入门到精通的完整工具指南 你是否曾遇到过这样的困境:辛苦开发的Delphi程序源码不慎丢失,面对只有可执行文件的尴尬局面?或者作为安全研
逆向工程开发工具静态分析open-reverselab MCP 工具清单:完整指南,100+ 个 AI 可调用的逆向工具如何选、如何用
open reverselab MCP 工具清单:完整指南,100+ 个 AI 可调用的逆向工具如何选、如何用 open reverselab 是一个开源的 A
Python、Go、.NET、Unity逆向一次搞定:awesome-reverse-engineering解包与去混淆工具清单(pycdc、GoReSym、Il2CppDumper)
Python、Go、.NET、Unity逆向一次搞定:awesome reverse engineering解包与去混淆工具清单(pycdc、GoReSym、I
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考