跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Python算法

CTF 入门教程:从零基础到进阶详解

CTF(Capture The Flag)即夺旗赛,是网络安全技术人员之间的技术竞技比赛。 CTF 的起源、竞赛模式(解题、攻防、混合)、主要题型(MISC、PPC、CRYPTO、REVERSE、STEGA、PWN、WEB)及其特点。同时列举了常用的漏洞靶场如 DVWA、Sqli-Labs 等,以及 BUUCTF、CTFHub 等赛题复现平台和 DEF CON、CTFTime 等国际赛事资源。文章旨在帮助初学者了解 CTF 基础知识,明确学习方向,并提供实用的学习路径和资源推荐。

清心发布于 2025/2/7更新于 2026/10/2584 浏览
CTF 入门教程:从零基础到进阶详解

一、CTF 简介

CTF(Capture The Flag)中文一般译作夺旗赛,在网络安全领域中指的是网络安全技术人员之间进行技术竞技的一种比赛形式。CTF 起源于 1996 年 DEFCON 全球黑客大会,以代替之前黑客们通过互相发起真实攻击进行技术比拼的方式。发展至今,已经成为全球范围网络安全圈流行的竞赛形式。

CTF 入门

个人认为入门 CTF 之前大家应该先了解到底什么是 CTF,而你学 CTF 的目的又到底是什么;其次便是最好具备相应的编程能力,若是完全不具备这些能力极有可能直接被劝退。毕竟比赛的时候动不动写个脚本,搞个审计的。

对于 CTF 入门现在环境比 1516 年我刚接触时好太多了,当年各类资源少的可怜,SQL 注入绕 WAF 已经算是难题了。而目前国内的氛围明显好太多了,涌现出了大量优秀的平台。作为初学者往往会遇到一个很关键的问题:该学哪个方向。

个人感觉,在不知道学啥的事情可以先学学 Misc 培养兴趣,然后在不断的做题中思考自己感兴趣的方向。其次日后发展也是个很关键的事情,如果准备毕业后重试网络安全,那么就需要想好 Web、Pwn 这些方向的日后发展。可以干哪些岗位,而这些岗位需要的对应能力、发展空间、薪资等等。

二、CTF 竞赛模式

  • 解题模式(Jeopardy)
  • 攻防模式(Attack-Defense)
  • 混合模式(Mix)

三、CTF 各大题型简介

MISC(安全杂项):全称 Miscellaneous。题目涉及流量分析、电子取证、人肉搜索、数据分析、大数据统计等等,覆盖面比较广。我们平时看到的社工类题目;给你一个流量包让你分析的题目;取证分析题目,都属于这类题目。主要考查参赛选手的各种基础综合知识,考察范围比较广。

PPC(编程类):全称 Professionally Program Coder。题目涉及到程序编写、编程算法实现。算法的逆向编写,批量处理等,有时候用编程去处理问题,会方便的多。当然 PPC 相比 ACM 来说,还是较为容易的。至于编程语言嘛,推荐使用 Python 来尝试。这部分主要考察选手的快速编程能力。

CRYPTO(密码学):全称 Cryptography。题目考察各种加解密技术,包括古典加密技术、现代加密技术甚至出题者自创加密技术。实验吧'角斗场'中,这样的题目汇集的最多。这部分主要考查参赛选手密码学相关知识点。

REVERSE(逆向):全称 reverse。题目涉及到软件逆向、破解技术等,要求有较强的反汇编、反编译扎实功底。需要掌握汇编,堆栈、寄存器方面的知识。有好的逻辑思维能力。主要考查参赛选手的逆向分析能力。此类题目也是线下比赛的考察重点。

STEGA(隐写):全称 Steganography。隐写术是我开始接触 CTF 觉得比较神奇的一类,知道这个东西的时候感觉好神奇啊,黑客们真是聪明。题目的 Flag 会隐藏到图片、音频、视频等各类数据载体中供参赛选手获取。载体就是图片、音频、视频等,可能是修改了这些载体来隐藏 flag,也可能将 flag 隐藏在这些载体的二进制空白位置。有时候需要你侦探精神足够的强,才能发现。此类题目主要考查参赛选手的对各种隐写工具、隐写算法的熟悉程度。实验吧'角斗场'的隐写题目在我看来是比较全的,以上说到的都有涵盖。新手盆友们可以去了解下。

PWN(溢出):PWN 在黑客俚语中代表着攻破,取得权限,在 CTF 比赛中它代表着溢出类的题目,其中常见类型溢出漏洞有栈溢出、堆溢出。在 CTF 比赛中,线上比赛会有,但是比例不会太重,进入线下比赛,逆向和溢出则是战队实力的关键。主要考察参数选手漏洞挖掘和利用能力。

WEB(web 类):WEB 应用在今天越来越广泛,也是 CTF 夺旗竞赛中的主要题型,题目涉及到常见的 Web 漏洞,诸如注入、XSS、文件包含、代码审计、上传等漏洞。这些题目都不是简单的注入、上传题目,至少会有一层的安全过滤,需要选手想办法绕过。且 Web 题目是国内比较多也是大家比较喜欢的题目。因为大多数人开始安全都是从 web 日站开始的。

四、漏洞靶场

  1. DVWA(必练):Web 安全入门必刷的靶场,包含了最常见的 web 漏洞,界面简单易用,通过设置不同的难度,可更好地理解漏洞的原理及对应的代码防护 http://www.dvwa.co.uk

  2. Sqli-Labs(必练):一个印度大神程序员写的,用来学习 sql 注入的一个游戏教程,目前 65 关,冲关过程中学注入。 https://github.com/Audi-1/sqli-labs

  • Upload-labs(必练):一个和 sqli-labs 类似的靶场平台,专门学习文件上传的,目前 21 关。 https://github.com/c0ny1/upload-labs

  • BWVS(老版本 bugku 的离线版) https://github.com/bugku/BWVS

  • BWAPP https://sourceforge.net/projects/bwapp

  • WAVSEP https://github.com/sectooladdict/wavsep

  • VulnStack http://vulnstack.qiyuanxuetang.net/vuln

  • Metasploitable https://github.com/rapid7/metasploitable3

  • DVWA-WooYun https://sourceforge.net/projects/dvwa-wooyun

  • OWASP Mutillidae https://sourceforge.net/projects/mutillidae

  • Web for Pentester https://www.pentesterlab.com/exercises/web_for_pentester

  • 五、CTF 学习资源

    5.1、CTF 赛题复现平台
    • BUUCTF 拥有大量比赛的复现环境,国内较早使用动态靶机的 CTF 复现平台,定期举办各类公开赛,提供平台开源环境,较全的比赛 Writeup。

    • CTFHub 各类比赛历年真题,较为体系化的技能树,较全的 CTF 工具集,较全的赛事日历,较全的比赛 WriteUp。

    • BugKu 国内较早的 CTF 复现平台 (在 buu 和 ctfhub 还没火的时候 bugku 很有名),较为基础的题目,较全的 WriteUp。

    • Pwnable 适合 Pwn 新手入门,题目较为友好。

    5.2、赛事与资讯
    • DEF CON CTF 国际最顶尖的 CTF 赛事,主赛事 + 外卡赛,决赛与 DEF CON 同期举办。

    • CTFTime 较全的国际 CTF 赛事信息,较全的 CTF 战队信息,较为权威的 CTF 战队排名,各大赛事 WriteUp,各大赛事日历。

    • XCTF 国际联赛 国内较早的 CTF 联赛,国内第一个出海办比赛的 CTF 赛事,在国际上具有一定知名度,部分学校可以加分甚至保研。

    各类赛事太多了,这里没法一一罗列,大家前期可以刷一些校赛和小比赛,进阶刷 i 春秋、XCTF,后期直接刷 CTFTime 各类国际赛。

    5.3、博客与论坛
    • 先知社区:https://xz.aliyun.com
    • 看雪论坛:bbs.pediy.com/
    • 安全客:anquanke.com/
    • FreeBuf:freebuf.com/

    目录

    1. 一、CTF 简介
    2. CTF 入门
    3. 二、CTF 竞赛模式
    4. 三、CTF 各大题型简介
    5. 四、漏洞靶场
    6. 五、CTF 学习资源
    7. 5.1、CTF 赛题复现平台
    8. 5.2、赛事与资讯
    9. 5.3、博客与论坛

    更多推荐文章

    查看全部
    • JavaSE 核心知识点总结
    • Git 如何安全临时回退查看历史版本
    • Git 克隆指定分支的几种常用方式
    • CLAUDE.md 与 AGENTS.md 配置指南:让 AI 编程助手更懂你的项目
    • Google Cloud 峰会观察:B 站如何转型为 AI 创新孵化器
    • 基于 Python+Django 的智慧农业管理系统设计与实现
    • 如何用AI生成带文字的海报?Ideogram v3 2026最强文字渲染教程
    • LangChain 输出解析器使用详解
    • 微信群机器人配置与使用指南
    • Stable Diffusion 2.0 技术革新:基础模型架构的混合进化与行业变革
    • AI 进化四部曲:Agent、MCP、Skill 与 CLI 代表作品及里程碑
    • PyCharm 集成 Anaconda 虚拟环境配置教程
    • ROS2 机械臂控制:MoveIt2 从环境搭建到实战
    • Openclaw 开源仿生机械爪:原理、应用与生态解析
    • AI 生成代码太冗余?4 个优化技巧助产工业级代码
    • Python 开发者如何利用心理洞察突破 AI 需求预测局限
    • AI 智能编码工具深度解析:GitHub Copilot 与国产工具对比
    • Face Fusion WebUI 部署与使用指南
    • Google 发布 AI 代码编辑器 Antigravity:支持 Gemini 3 Pro 与 Claude 4.5 体验
    • LLaMA Factory 核心原理讲解

    相关免费在线工具

    • 加密/解密文本

      使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

    • Gemini 图片去水印

      基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

    • curl 转代码

      解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online

    • Base64 字符串编码/解码

      将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

    • Base64 文件转换器

      将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

    • Markdown转HTML

      将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online