📌写在前面
“CTF是什么?难不难?”“零基础能参加CTF吗?”“CTF五大方向该选哪个?”
这些问题最近被问得越来越多。随着网络安全越来越火,CTF比赛也成了安全学习者的热门选择。
我自己从零开始打CTF,第一次比赛被血虐,后来慢慢摸索出门道,到拿到全国赛三等奖。这个过程让我深刻体会到:CTF是最接近实战的安全学习方式之一,但入门确实有门槛。
今天我把CTF入门需要的所有东西整理成一篇:五大方向介绍、学习路线、刷题平台、工具清单、比赛技巧,全部讲清楚。看完这篇,你对CTF会有一个完整的认知。
⚠️ 注意:CTF比赛不是一朝一夕能速成的。但按照正确路线走,3个月就能独立做出基础题目,6个月可以组队参加比赛。
一、CTF五大方向总览
| 方向 | 全称 | 核心内容 | 入门难度 | 上手指数 |
|---|---|---|---|---|
| Web | Web安全 | SQL注入、XSS、SSRF、SSTI等 | ★★★ | ★★★★★ |
| Misc | 杂项 | 隐写、流量分析、编码解码、取证 | ★★ | ★★★★★ |
| Crypto | 密码学 | RSA、AES、哈希、数论 | ★★★★ | ★★★ |
| Pwn | 二进制利用 | 栈溢出、格式化字符串、堆利用 | ★★★★★ | ★★ |
| Reverse | 逆向工程 | 反汇编、反编译、脱壳、算法还原 | ★★★★ | ★★★ |
💡 提示:新手推荐从Web和Misc入手,门槛低且刷题资源多。有一定编程基础后可以学Crypto。Pwn和Reverse需要底层功底,建议最后挑战。
各方向就业关联
| 方向 | 对应岗位 | 职业发展 |
|---|---|---|
| Web | 渗透测试工程师 | 安全公司、甲方安全 |
| Misc | 应急响应、安全运营 | SOC分析师 |
| Crypto | 密码学研究员 | 安全实验室 |
| Pwn | 漏洞研究员、安全开发 | 大厂安全实验室 |
| Reverse | 恶意代码分析师、逆向工程师 | 安全厂商、军工厂 |
二、Web方向:CTF最主流的方向
核心知识体系
| 模块 | 知识点 | 常见题型 |
|---|---|---|
| SQL注入 | 联合查询、盲注、堆叠、WAF绕过 | 注入出flag |
| XSS | 反射/存储/DOM、CSP绕过 | Cookie劫持 |
| SSRF | 内网探测、协议利用、gopher打Redis | 读内网flag |
| SSTI | 模板注入(Jinja2、Twig、Smarty) | RCE拿flag |
| 文件操作 | 上传、读取、包含、条件竞争 | 传WebShell |
| 反序列化 | PHP/Java/Python反序列化 | 链子利用 |
| 命令注入 | 命令拼接、绕过过滤 | 执行命令 |
| 逻辑漏洞 | 越权、条件竞争、支付逻辑 | 突破权限 |
| 代码审计 | PHP/Java/Python源码审计 | 找到漏洞点 |
Web学习路线
基础阶段: 1. 掌握HTTP协议(请求方法、状态码、头部字段) 2. 学习PHP基础语法(变量、函数、文件操作) 3. 搭建DVWA/Pikachu,实战OWASP Top10 4. 学习Burp Suite基本操作 进阶阶段: 5. 学习Python/Java基础语法(理解后端逻辑) 6. 做SQLi-Labs和Upload-Labs 7. 学习常见框架漏洞(Django、Flask、Spring) 8. 学习SSTI和反序列化 实战阶段: 9. 开始刷CTFHub技能树 10. 做攻防世界Web题 11. 参加线上CTF比赛 12. 总结解题套路和WriteUpWeb常见套路总结
| 题目特征 | 大概率考点 | 解题思路 |
|---|---|---|
| 有输入框 | SQL注入/XSS | 先测注入,再看过滤 |
| 有文件上传 | 文件上传绕过 | 逐步尝试各种绕过 |
| 有URL参数 | SSRF/文件包含 | 试file://、gopher:// |
| 有模板渲染 | SSTI | 输入{{7*7}}测试 |
| 有源码 | 代码审计 | 找危险函数 |
| 有登录框 | 逻辑/SQL注入 | 试SQL注入和越权 |
| 有robots.txt | 信息泄露 | 查看隐藏路径 |
💡 提示:Web题最关键的是信息收集。看到页面先看源码、看robots.txt、看HTTP响应头、扫目录,再做下一步。
三、Misc方向:CTF的最佳入门方向
核心知识体系
| 模块 | 知识点 | 常见题型 |
|---|---|---|
| 隐写术 | 图片隐写、音频隐写、文档隐写 | 提取隐藏flag |
| 流量分析 | PCAP分析、协议解析 | 从流量中提取flag |
| 编码解码 | Base系列、Hex、URL编码 | 多层编码还原 |
| 取证分析 | 内存取证、磁盘取证 | 从镜像中提取证据 |
| OSINT | 开源情报收集 | 从公开信息找flag |
| 压缩包分析 | 伪加密、密码爆破、RAR修复 | 解压获取flag |
| 社会工程学 | 钓鱼、伪装、信息收集 | 社工推理 |
Misc必备工具清单
| 工具 | 用途 | 平台 |
|---|---|---|
| 010 Editor | 十六进制查看编辑 | 全平台 |
| Stegsolve | 图片隐写分析 | Java跨平台 |
| Audacity | 音频分析 | 全平台 |
| Wireshark | 流量包分析 | 全平台 |
| Foremost | 文件分离恢复 | Linux |
| Binwalk | 固件分析、文件提取 | Linux |
| Volatility | 内存取证分析 | Python |
| Hashcat/john | 密码爆破 | 全平台 |
| Zsteg | PNG/BMP隐写分析 | Ruby |
| Exiftool | 图片元数据查看 | 全平台 |
Misc常见题型解题流程
图片题: 1. file命令查看类型 2. exiftool看元数据 3. binwalk检查是否有隐藏文件 4. foremost或binwalk提取 5. stegsolve逐层查看 6. zsteg检查LSB隐写 7. 尝试密码爆破(如果有加密) 流量题: 1. wireshark打开pcap文件 2. 查看协议分布(统计→分级) 3. 过滤HTTP请求看敏感数据 4. 导出HTTP对象(文件→导出对象→HTTP) 5. 查看DNS查询记录 6. 检查是否有数据外传 7. 如有加密文件,找密码线索 压缩包题: 1. 检查是否伪加密(修改标志位) 2. 检查是否有注释信息 3. 尝试密码爆破(ARCHPR/john) 4. 检查是否是RAR修复 5. 检查是否是已知明文攻击 6. 检查文件大小是否异常💡 提示:Misc题目变化多端,最考验信息收集和耐心。遇到不会的题不要死磕,先做其他题,回头可能有灵感。
四、Crypto方向:数学与编程的较量
核心知识体系
| 模块 | 知识点 | 难度 |
|---|---|---|
| 古典密码 | 凯撒、维吉尼亚、栅栏、培根 | ★ |
| 编码 | Base64/32/58、Morse、brainfuck | ★ |
| 哈希 | MD5、SHA系列、碰撞 | ★★ |
| 对称加密 | AES、DES、RC4 | ★★★ |
| RSA | RSA加密/签名、共模、低解密指数 | ★★★★ |
| 椭圆曲线 | ECC、离散对数 | ★★★★★ |
| 格密码 | LLL算法、CVP/SVP | ★★★★★ |
| 哈希长度扩展 | MD5/SHA1长度扩展攻击 | ★★★ |
Crypto必备工具
| 工具/库 | 用途 |
|---|---|
| Python + pycryptodome | 加解密实现 |
| SageMath | 数论运算、格运算 |
| RsaCtfTool | RSA自动攻击 |
| CyberChef | 编码解码一体化工具 |
| yafu | 大数分解 |
| factordb | 在线分解数据库 |
RSA常见题型
| 题型 | 特征 | 解法 |
|---|---|---|
| 低解密指数 | e很大 | Wiener攻击 |
| 小明文 | n很大,m很小 | 直接开三次方 |
| 共模攻击 | 同一n,不同e | 扩展欧几里得 |
| 共享因子 | 不同n有公共因子 | GCD分解 |
| Fermat分解 | p、q接近 | Fermat分解 |
| 低加密指数 | e=3 | 中国剩余定理 |
| 广播攻击 | 多个n、同一m | 中国剩余定理 |
# RSA共模攻击模板fromCrypto.Util.numberimportlong_to_bytesfromgmpy2importgcdext n=...e1,c1=...,...e2,c2=...,...g,s1,s2=gcdext(e1,e2)m=(pow(c1,s1,n)*pow(c2,s2,n))%nprint(long_to_bytes(m))⚠️ 注意:Crypto方向需要较强的数学功底。如果数学不太好,建议先掌握RSA基础题型,其他方向后补。
五、Pwn方向:二进制利用的艺术
核心知识体系
| 模块 | 知识点 | 难度 |
|---|---|---|
| 基础 | 栈/堆/数据段、ELF文件格式 | ★★ |
| 栈溢出 | ret2text、ret2shellcode、ret2syscall | ★★★ |
| 格式化字符串 | 任意读写、泄漏地址 | ★★★★ |
| ROP | ret2libc、ROP链构造 | ★★★★ |
| 堆利用 | fastbin attack、unsorted bin | ★★★★★ |
| 保护绕过 | NX、ASLR、Canary、PIE | ★★★★ |
| 内核Pwn | Kernel ROP、提权 | ★★★★★ |
Pwn学习路线
阶段一(基础): 1. 学习C语言和汇编基础 2. 理解栈帧结构(push rbp; mov rbp,rsp) 3. 学习GDB调试和pwntools使用 4. 做基础栈溢出题(ret2text) 阶段二(进阶): 5. 学习ret2shellcode(需要NX关闭) 6. 学习ret2syscall(用int 0x80) 7. 学习ret2libc(泄漏libc地址) 8. 做格式化字符串题 阶段三(高级): 9. 学习ROP链构造 10. 学习各种保护机制及绕过 11. 开始学习堆利用 12. 做Unsorted Bin Attack、Fastbin Attack 阶段四(专家): 13. 学习Tcache利用(glibc 2.27+) 14. 学习Large Bin Attack 15. 学习内核PwnPwn必备工具
| 工具 | 用途 |
|---|---|
| pwntools | Python利用框架 |
| GDB + pwndbg/gef | 动态调试 |
| checksec | 检查保护机制 |
| ROPgadget | 搜索ROP gadget |
| one_gadget | 搜索one gadget RCE |
| libc-database | libc版本查询 |
# pwntools基础模板frompwnimport*context.log_level='debug'context.arch='amd64'p=remote('ctf.example.com',9999)# p = process('./pwn_file')# 检查保护elf=ELF('./pwn_file')libc=ELF('./libc.so.6')# 栈溢出基本利用payload=b'A'*offset+p64(ret_address)p.sendline(payload)p.interactive()⚠️ 注意:Pwn方向入门门槛最高,需要C语言、汇编、操作系统基础。但Pwn选手在行业里非常稀缺,含金量极高。
六、Reverse方向:逆向工程挑战
核心知识体系
| 模块 | 知识点 | 难度 |
|---|---|---|
| 静态分析 | 反汇编、反编译、代码审计 | ★★ |
| 动态调试 | GDB/x64dbg/OllyDbg | ★★★ |
| 脱壳 | UPX、ASPack、自定义壳 | ★★★★ |
| 算法还原 | 加密算法识别与还原 | ★★★ |
| 反调试绕过 | IsDebuggerPresent等 | ★★★ |
| Android逆向 | APK反编译、Frida Hook | ★★★ |
| Python逆向 | pyc反编译、Cython还原 | ★★ |
Reverse必备工具
| 工具 | 用途 | 平台 |
|---|---|---|
| IDA Pro / Ghidra | 反汇编+反编译 | 全平台 |
| x64dbg | Windows动态调试 | Windows |
| GDB | Linux动态调试 | Linux |
| apktool | APK反编译 | Java |
| jadx | APK反编译为Java | Java |
| uncompyle6 | Python pyc反编译 | Python |
| UPX | UPX脱壳 | 全平台 |
| Frida | 动态Hook | 全平台 |
| Cheat Engine | 内存搜索修改 | Windows |
七、刷题平台推荐
| 平台 | 方向 | 特点 | 推荐度 |
|---|---|---|---|
| CTFHub | 全方向 | 技能树引导,适合入门 | ★★★★★ |
| 攻防世界 | 全方向 | 国内最大的CTF平台 | ★★★★★ |
| BUUCTF | 全方向 | 题量大,真题多 | ★★★★★ |
| NSSCTF | 全方向 | 新平台,题多 | ★★★★ |
| picoCTF | 全方向 | CMU出品,适合入门 | ★★★★ |
| CryptoHack | Crypto | 密码学专项 | ★★★★★ |
| pwnable.kr | Pwn | Pwn专项经典 | ★★★★★ |
| Reversing.kr | Reverse | 逆向专项 | ★★★★ |
| Hack The Box | 综合 | 真实靶机 | ★★★★★ |
新手刷题路线
第1~2周:CTFHub技能树 → Web和Misc基础题 第3~4周:攻防世界 → Web进阶 + Misc进阶 第5~6周:BUUCTF → 开始刷Pwn/Crypto基础 第7~8周:picoCTF → 综合练习 第9~12周:参加线上CTF比赛 → 实战积累💡 提示:刷题不在于数量,在于每道题都写WriteUp。做错的题反复做,做对的题看看别人的解法是否有更优解。
八、CTF比赛实战技巧
比赛类型
| 类型 | 形式 | 特点 | 推荐度 |
|---|---|---|---|
| 解题模式 | 线上,按题积分 | 最常见 | ★★★★★ |
| 攻防模式 | 线上/线下,攻击+防守 | 需要运维能力 | ★★★★ |
| 渗透模式 | 模拟真实渗透 | 接近实战 | ★★★★ |
| King of the Hill | 占靶机最久 | 综合能力 | ★★★ |
比赛策略
| 阶段 | 策略 | 注意事项 |
|---|---|---|
| 比赛开始 | 快速浏览所有题目,按难度排序 | 先做简单题拿分 |
| 中期 | 各方向成员各自解题 | 互相讨论思路 |
| 卡题 | 超过30分钟无进展换题 | 不要死磕一道题 |
| 收尾 | 检查分数和排名 | 最后冲刺一血题 |
| 赛后 | 写复盘和WriteUp | 总结学到的新知识 |
组队建议
| 角色 | 人数 | 核心能力 |
|---|---|---|
| Web选手 | 1~2人 | Web漏洞利用、代码审计 |
| Misc选手 | 1人 | 隐写、流量、取证 |
| Crypto选手 | 1人 | 密码学、数学 |
| Pwn选手 | 1人 | 二进制利用 |
| Reverse选手 | 1人 | 逆向分析 |
⚠️ 注意:3~5人的队伍最理想。每个人都有一个主攻方向,比赛时并行解题效率最高。
常见CTF平台和赛事
| 赛事 | 级别 | 适合阶段 |
|---|---|---|
| CTFHub月赛 | 入门 | 新手 |
| BUUCTF公开赛 | 入门~中级 | 有一定刷题基础 |
| 强网杯 | 高级 | 中高级选手 |
| 网鼎杯 | 高级 | 中高级选手 |
| XCTF分站赛 | 国际级 | 高级选手 |
| DEF CON CTF | 世界级 | 顶级选手 |
九、给新手的最后建议
💡 提示:CTF是一场马拉松,不是百米冲刺。
先广后深:先了解五大方向,选一个主攻方向深入。不要一开始就死磕Pwn,可能3个月都做不出一道题。
WriteUp是金矿:每道题做完一定要写WriteUp。别人的WriteUp也是最好的学习资源,特别是你做不出来的题。
组队比单刷强:找几个志同道合的小伙伴一起刷题、一起参加比赛。互相学习效率翻倍。
比赛是最好的老师:线上CTF比赛每周都有,不用等"准备好了"再参加。边打边学才是最快的成长方式。
CTF是手段不是目的:CTF拿奖固然好,但更重要的是通过CTF学到的技术和思维,这些才是你在安全行业安身立命的根本。
学习资源
2026年最新版本,全网最全的网安视频教程。耗时半年打造,之前都是内部资源,专业方面绝对可以秒杀国内99%的机构和个人教学!全网独一份,你不可能在网上找到这么专业的教程。
内容涵盖了入门必备的操作系统、计算机网络和编程语言等初级知识,而且包含了中级的各种渗透技术,并且还有后期的CTF对抗、区块链安全等高阶技术。
总共200多节视频,200多G的资源,不用担心学不全。(包含攻击与防守、漏洞挖掘、CTF比赛等技术点)
1、知识库价值
深度:本知识库超越常规工具手册,深入剖析攻击技术的底层原理与高级防御策略,并对业内挑战巨大的APT攻击链分析、隐蔽信道建立等,提供了独到的技术视角和实战验证过的对抗方案。
广度:面向企业安全建设的核心场景(渗透测试、红蓝对抗、威胁狩猎、应急响应、安全运营),本知识库覆盖了从攻击发起、路径突破、权限维持、横向移动到防御检测、响应处置、溯源反制的全生命周期关键节点,是应对复杂攻防挑战的实用指南。
实战性:知识库内容源于真实攻防对抗和大型演练实践,通过详尽的攻击复现案例、防御配置实例、自动化脚本代码来传递核心思路与落地方法。
2、部分核心内容展示
独家《网络攻防知识库》采用由浅入深、攻防结合的讲述方式,既夯实基础技能,更深入高阶对抗技术。
内容组织紧密结合攻防场景,辅以大量真实环境复现案例、自动化工具脚本及配置解析。通过策略讲解、原理剖析、实战演示相结合,是你学习过程中好帮手。
网络安全意识
Linux操作系统
WEB架构基础与HTTP协议
Web渗透测试
渗透测试案例分享
渗透测试实战技巧
攻防对战实战
CTF之MISC实战讲解
3、适合学习的人群
一、基础适配人群
零基础转型者:适合计算机零基础但愿意系统学习的人群,资料覆盖从网络协议、操作系统到渗透测试的完整知识链;
开发/运维人员:具备编程或运维基础者可通过资料快速掌握安全防护与漏洞修复技能,实现职业方向拓展或者转行就业;
应届毕业生:计算机相关专业学生可通过资料构建完整的网络安全知识体系,缩短企业用人适应期;
二、能力提升适配
1、技术爱好者:适合对攻防技术有强烈兴趣,希望掌握漏洞挖掘、渗透测试等实战技能的学习者;
2、安全从业者:帮助初级安全工程师系统化提升Web安全、逆向工程等专项能力;
3、合规需求者:包含等保规范、安全策略制定等内容,适合需要应对合规审计的企业人员;
因篇幅有限,仅展示部分资料,完整版的网络安全学习资料已经上传,戳下面拿:
🐵这些东西我都可以免费分享给大家,需要的可以点这里自取👉:
————————————————