逆向工程实战手册 第 21 章

第 21 章 实战练习平台指南

书读百遍不如动手一遍。本章收录逆向学习最值得投入的练习平台,按"从入门到进阶"和"专项方向"两条线组织。

📍 知识点地图 | 主题:实战练习平台 | 前置:第2章 | 后续:全书实践 | 核心概念:crackmes、pwn.college、CTFtime、Root-me

21.1 怎么选平台(决策指南)

零基础 → 先 crackmes.one 简单题 + pwn.college(免费体系化)
有基础想系统学 → pwn.college / beginner.re / OpenSecurityTraining2
想打比赛 → CTFtime 找比赛 + picoCTF 练手
想刷题 → Reversing.kr / Root-me / buuoj / 攻防世界
想搞 pwn → pwnable.kr → pwnable.tw
想搞密码学 → cryptopals
想搞恶意软件 → MalwareBazaar + 沙箱 + FLARE VM

21.2 入门练手(0 基础友好)

crackmes.one —— 最经典的 crackme 平台

  • 网址:https://crackmes.one
  • 内容:数千个逆向小练习,按难度评级(1-8 分)
  • 特点:人人可上传、社区评级、每个题附解题过程(需登录查看)
  • 用法:
  • 按难度排序,从 1-2 分的题开始
  • 目标通常是"找到正确序列号/key"或"绕过验证"
  • 解完对照别人的 writeup,学习不同思路
  • 推荐理由:完全免费、无平台门槛、Windows/Linux 题都有,是第 4-5 章静态/动态分析的完美练习场

pwn.college —— 最体系化的免费课程(强烈推荐)

  • 网址:https://pwn.college
  • 内容:亚利桑那大学开源课程,从汇编基础到内核 pwn 全覆盖
  • 特点:
  • 每个模块有视频 + 互动练习(在浏览器里直接做题)
  • 模块化:Program Interaction / Assembly Crash Course / Reverse Engineering / Binary Exploitation 等
  • 全免费,自动评分
  • 学习路径建议:
  • Module 1-2(Linux 交互、汇编速成)
  • Module 7-8(逆向工程、GDB 调试)
  • 后续按兴趣选 pwn 方向
  • 推荐理由:比任何书都系统,环境现成,从零到高手的完整阶梯

OverTheWire: Bandit —— Linux 基础热身

  • 网址:https://overthewire.org/wargames/bandit/
  • 内容:SSH 连接打怪升级,学习 Linux 命令/权限/文件系统
  • 用途:逆向分析离不开 Linux 命令行,这是最好的前置练习

21.3 在线 CTF 刷题平台

picoCTF —— 学生友好的入门 CTF

  • 网址:https://picoctf.org
  • 内容:CMU 主办,历年题目全开放,含完整的逆向分类
  • 特点:入门难度梯度好、有教程、适合新手第一场"比赛"
  • 建议:从历年真题的 Reverse Engineering 分类开始,按年份从早到晚

Root-me —— 题库最全的刷题站

  • 网址:https://www.root-me.org
  • 内容:4000+ 道题,覆盖逆向(App - System)/Web/加密/取证等
  • 特点:
  • 免费注册,在线环境直接做题
  • Reverse Engineering 分类下从 ELF/PE/Android 到壳和混淆应有尽有
  • 有排行榜和积分体系,适合长期刷
  • 推荐理由:逆向题库的"健身房",难度分级科学

Reversing.kr —— 韩国经典逆向题库

  • 网址:http://reversing.kr
  • 内容:几十道经典逆向题(Easy Crack 到高级)
  • 特点:老牌、题目经典、Windows 题居多、难度递增明显
  • 用法:Easy Crack 作为"人生第一道逆向题"很有仪式感

buuoj / 攻防世界 / NSSCTF —— 国内平台

  • buuoj:https://buuoj.cn —— 国内最大 CTF 刷题站,历年国赛/强网杯/网鼎杯真题全收录
  • 攻防世界:https://adworld.xctf.org.cn —— XCTF 官方题库
  • NSSCTF:https://www.nssctf.cn —— 新题多、环境稳定
  • 特点:中文界面、历年大赛真题、免费在线环境
  • 推荐理由:想打国内比赛(国赛、强网杯)直接在这刷真题

CTFtime —— 比赛日历 + 题目存档

  • 网址:https://ctftime.org
  • 内容:全球 CTF 比赛日历 + 各赛题 writeup 汇总
  • 用法:
  • 查即将开始的比赛(周末赛事最多)
  • 比赛结束看 writeup 复盘
  • 进阶建议:组队或单人打每周的"小而美"赛事,比只刷题成长快

21.4 pwn / 二进制利用专项

pwnable.kr —— pwn 入门圣地

  • 网址:https://pwnable.kr
  • 内容:经典 pwn 入门题(fd/collision/bof 等)
  • 特点:SSH 连接直接做题,题目短小精悍,每题一个知识点
  • 难度:★★(入门到中级)

pwnable.tw —— pwn 进阶经典

  • 网址:https://pwnable.tw
  • 内容:从入门到大师级 pwn 题(stack/heap/kernel 全覆盖)
  • 特点:题质量极高,heap 和 kernel 题尤其经典
  • 难度:★★★-★★★★★(刷完基本 pwn 毕业)

how2heap —— 堆利用图解

  • 网址:https://github.com/shellphish/how2heap
  • 内容:每种堆利用技术一个可运行示例 + 注释
  • 用途:学堆利用(第 18 章)时对照着跑,比看文档强十倍

Shellphish / ROP Emporium —— ROP 练习

  • ROP Emporium:https://ropemporium.com —— ROP 专项练习,每关一个技巧,带文档
  • 用途:练 ret2libc/ret2csu/栈对齐(第 18 章内容)

21.5 密码学专项

Cryptopals(Matasano)—— 密码学实操圣经

  • 网址:https://cryptopals.com
  • 内容:8 组由易到难的密码学编程挑战
  • 特点:不靠背公式,全靠亲手实现攻击(XOR 统计、字节-at-a-time 解密等)
  • 难度:★★-★★★★
  • 推荐理由:完成前 3 组,逆向里遇到的 80% 密码问题都能手解

21.6 恶意软件分析专项

MalwareBazaar —— 真实恶意样本库

  • 网址:https://bazaar.abuse.ch
  • 内容:每天收录大量真实恶意样本(免注册下载)
  • 用法:下载标注好的样本 → 完成第 17 章的分析流程 → 对照家族报告
  • 安全提醒:永远在隔离 VM/Docker 中分析

Malware-Traffic-Analysis.net —— 恶意流量包

  • 网址:https://www.malware-traffic-analysis.net
  • 内容:真实恶意软件流量包(PCAP)+ 分析报告
  • 用途:练习第 9/17 章的协议逆向与 IOC 提取

FLARE VM —— 恶意软件分析专机

  • 网址:https://github.com/mandiant/flare-vm
  • 内容:一键安装的恶意软件分析 Windows 虚拟机(自带全部工具)
  • 用途:搭建第 17 章的分析环境,一步到位

其他样本/沙箱

VirusTotal: https://www.virustotal.com —— 哈希/沙箱/关联查询
Hybrid Analysis: https://www.hybrid-analysis.com —— 在线沙箱报告
ANY.RUN: https://app.any.run —— 交互式在线沙箱(可视化行为)

21.7 逆向理论/课程资源

资源 内容 网址
beginner.re 免费逆向入门书(Andriesse) https://beginners.re
OpenSecurityTraining2 深度逆向课程(视频+讲义) https://opensecuritytraining.info
LiveOverflow YouTube 逆向/pwn 视频(顶级) https://www.youtube.com/@LiveOverflow
OALabs 恶意软件逆向直播+教程 YouTube 搜索 OALabs
Azeria Labs ARM 逆向与利用专项 https://azeria-labs.com
XCTF / 先知社区 中文 writeup 聚集地 搜索引擎直达

21.8 每周练习计划(模板)

周一: crackmes.one 1 道(固定难度 +1)
周二: pwn.college 1 个模块练习
周三: Root-me 逆向 1-2 题
周四: 复盘一篇本周做不出来的题的 writeup
周五: how2heap 跑 1 个示例 / ROP Emporium 1 关
周末: CTFtime 找一场比赛打(或 buuoj 刷一道大赛真题)

动手练习(本周就做)

  1. 注册 crackmes.one,下载一道 1 分题,用第 4 章流程完整解掉。
  2. 打开 pwn.college,注册并完成第一个模块(Program Interaction)。
  3. 在 Root-me 的 App - System 分类下选一道 ELF 题,用 radare2 解。
  4. 从 MalwareBazaar 下载一个已标注样本,在隔离环境完成 Phase 1-2 分析。
  5. 建立你的"刷题进度表",记录每题:题号/难度/用时/用到的方法。

深入阅读

  • 仓库:skills/reverse-engineering/awesome-re-resources.md(更多工具/教程/资源)
  • 仓库:CTF-Sandbox-Orchestrator/ctf-sandbox-orchestrator/references/ctf-resources-digest.md(CTF 资源摘要)
  • 仓库:skills/reverse-engineering/SKILL.md(快速捡漏与解题工作流)