☰
如何入门逆向工程:awesome-reverse-engineering 140+精选工具清单完整指南
2026/10/23 4:14:12 网站建设 项目流程

【免费下载链接】awesome-reverse-engineering

Curated reverse-engineering tools and learning resources for binaries, apps, firmware, formats, and protocols.

项目地址:https://gitcode.com/gh_mirrors/awe/awesome-reverse-engineering
点击查看免费下载

🔍 逆向工程(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、Java11
🍎 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 的结论一定要回到底层代码和运行时证据上验证。

四、新手避坑指南:挑选逆向工具要注意什么

  1. 认准 "commercial" 标记:清单中商业工具(如 IDA、JEB、Burp Suite)都会明确标注commercial,并注明是否有免费版/社区版
  2. 看维护状态:清单会注明哪些项目已进入维护模式或归档(如 de4dot 已归档、RetDec 停止更新),并给出替代方案(如 Il2CppDumper → Cpp2IL)
  3. 不要只看 Star 数:CONTRIBUTING.md 明确"Star 数量不等于质量",每条描述的判据是"它何时对你有用"
  4. 先跑通再上强度:恶意样本进沙箱,实验环境用虚拟机,别在主力机上直接运行未知二进制

五、动手练习:逆向工程实战资源

学完工具必须刷真题,清单收录了 8 个高质量实战渠道:

  • picoCTF:卡内基梅隆大学的免费 CTF 平台,逆向题对新手友好,还有全年开放的练习场
  • crackmes.one:按平台、架构、难度分类的练手二进制
  • FLARE-On:年度逆向挑战赛,往届题目和官方解答全部公开
  • Microcorruption:浏览器里的嵌入式固件逆向 CTF,自带调试器
  • Reverse Engineering Stack Exchange:工具、汇编、格式相关的问答社区

六、相关文档与项目资料

资料说明
README.md工具清单主文件,含 Start here 路线表
CONTRIBUTING.md贡献规范:如何建议资源、更新与删除条目
docs/list-review.md21 个同类清单的带日期结构对比评测
docs/browser-tools-review.md浏览器类逆向工具的专项评测
docs/priority-candidates.md候选资源的逐条来源审查记录
examples/resource-intake/README.mdConstruct / 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.

项目地址:https://gitcode.com/gh_mirrors/awe/awesome-reverse-engineering
点击查看免费下载

相关推荐

上一篇:Payload 报 "TypeError: Cannot destructure property 'config'" 依赖版本不一致怎么排查
下一篇:Apache MXNet社区贡献者访谈:经验分享与职业发展建议

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询