【2025版】最新大学生如何参加CTF?零基础如何入门?收藏这篇就够了

大学生CTF入门指南:从零基础到实战

前言


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

废话结束,对于CTF入门现在坏境比15 16年我刚接触时好太多了,当年各类资源少的可怜,SQL注入绕WAF已经算是难题了。而目前国内的氛国明显好太多了,涌现出了大量优秀的平台。作为初学者往往会遇到-一个很头键的问题:该学哪个方向。个人感觉,在不知道学啥的事情可以先学学Misc培养兴趣,然后在不断的做题中思考白己感兴趣的方向。其次日后发展也是个很关键的事情,如果准备毕业后重试网络安全,那么就需要想好Web、Pwn这些方向的日后发展。可以干哪些岗位,而这些岗位需要的对应能力、发展空间、薪资等等。

一、CTF简介


01」简介

中文一般译作夺旗赛(对大部分新手也可以叫签到赛),在网络安全领域中指的是网络安全技术人员之间进行技术竞技的一种比赛形式。

CTF起源于1996年DEFCON全球黑客大会,以代替之前黑客们通过互相发起真实攻击进行技术比拼的方式。

02」竞赛模式

解题模式:

在解题模式CTF赛制中,参赛队伍可以通过互联网或者现场网络参与,这种模式的CTF竞赛与ACM编程竞赛、信息学奥赛比较类似,以解决网络安全技术挑战题目的分值和时间来排名,通常用于在线选拔赛。

题目主要包含逆向、漏洞挖掘与利用、Web渗透、密码、取证、隐写、安全编程等类别。

攻防模式:

在攻防模式CTF赛制中,参赛队伍在网络空间互相进行攻击和防守,挖掘网络服务漏洞并攻击对手服务来得分,修补自身服务漏洞进行防御来避免丢分。

攻防模式CTF赛制可以实时通过得分反映出比赛情况,最终也以得分直接分出胜负,是一种竞争激烈,具有很强观赏性和高度透明性的网络安全赛制。

在这种赛制中,不仅仅是比参赛队员的智力和技术,也比体力(因为比赛一般都会持续48小时及以上),同时也比团队之间的分工配合与合作。

混合模式:

结合了解题模式与攻防模式的CTF赛制,比如参赛队伍通过解题可以获取一些初始分数,然后通过攻防对抗进行得分增减的零和游戏,最终以得分高低分出胜负。采用混合模式CTF赛制的典型代表如iCTF国际CTF竞赛。

03」总结

一般大型比赛大都是i春秋承办的,以小组的形式比赛,分预选赛和总决赛。

预选赛

都是线上比赛,比赛形式几乎都是解题模式。进入官方提供的网站,登录账号密码后会到一个页面,题目按类别分类(后续会讲有什么类别),点击后提供题目链接、题目信息、题目提示和flag(答案)提交,提交后会得到分数。

其中,一血、二血、三血拿的分数比较高,后面答该题的队伍拿的分数就一样了,答题的队伍越少,分数就越多,然后按分数排名,确定进入决赛的队伍。

如:一道签到题,开始定的分为500,当有队伍提交正确的flag,那么分数就会下降,下降到470/450这样的,人数越多,分数下降幅度越大。

而一血二血三血获得分数会高于后续答题正确的。

总决赛

几乎都是线下赛,进行混合模式,因为攻防模式的题目容易出现易守难攻、比速度节题这种学习不到知识的问题,也因为这样,大部分的总决赛都是以逆向为主,很容易变成逆行大赛。

二、题目分类


题目一般为6大类:

Web(网络安全)

Web是CTF竞赛中主要的题型之一,题目涉及到许多常见的WEB漏洞,诸如XSS、文件包含、代码执行、上传漏洞、SQL注入。也有一些简单的关于网络基础知识的考察,例如返回包、TCP-IP、数据包内容和构造。可以说题目环境比较接近真实环境。

所需知识点:PHP、Python、SQL(以mysql为主)、TCP-IP、linux命令、html、javascript等。

MISC(安全杂项)

MISC是大型CTF竞赛的题目难度很大,是一个可以拉开分数的类型,而在小型竞赛和题库中却难度不大。题目涉及隐写术、流量分析、电子取证、人肉搜索、数据分析、大数据统计等等,覆盖面比较广,主要考查参赛选手的各种基础综合知识。

所需知识点:熟悉使用众多隐写工具、流量审查工具、了解编码等。

Crypto(密码学)

主要包括古典密码学和现代密码学两部分内容,古典密码学趣味性强,种类繁多,现代密码学安全性高,对算法理解的要求较高。

所需知识点:矩阵、数论、古典密码学、算法等。

Reverse(逆向)

题目涉及到软件逆向、破解技术等,要求有较强的反汇编、反编译扎实功底。主要考查参赛选手的逆向分析能力。

所需知识点:汇编语言、加密与解密、常见反编译工具。

PWN(二进制安全)

PWN在黑客俚语中代表着攻破,取得权限,在CTF比赛中它代表着溢出类的题目,其中常见类型溢出漏洞有栈溢出、堆溢出。主要考察参数选手对漏洞的利用能力。

所需知识点:C,OD+IDA,数据结构,操作系统。

Mobile(移动安全)

主要介绍了安卓逆向中的常用工具和主要题型,安卓逆向常常需要一定的安卓开发知识,iOS 逆向题目在 CTF 竞赛中较少出现,因此不作过多介绍。

区块链

近来多个CTF比赛均出现区块链题目,区块链应用越来越成为热门应用,在未来区块链会成为一个重点。因为没有接触过,这里不详细讲。

五、CTF学习路线

对于从来没有接触过CTF的同学,大白帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

CTF入门学习手册》,可以扫描下方二维码免费领取

[2024最新优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享]

CTF 工具集合





VSCode最好用 最轻量的 文本编辑器 依靠扩展可实现包括但不限于 IDE 各种功能  官网/
VMware Workstation虚拟机软件  官网/
PyCharmPython 集成开发环境 (IDE)  官网/
IDEAJava 集成开发环境 (IDE)  官网/
PHPStormPHP 集成开发环境 (IDE)  官网/
PHPStudyWeb 环境 (Apache / Nginx + FTP + MySQL) 快速部署   
常用于 Web 初学阶段的一些本地 web 页面的搭建
官网/
Docker容器服务   
常用于 题目本地搭建测试 靶场环境,漏洞复现环境搭建等
除了静态附件题目,几乎所有的 CTF 题目都依赖 Docker
官网/
Navicat优秀的数据库 管理 操作 调试 以及 可视化软件 官网/
Watt ToolkitGitHub Discord 部分谷歌服务 页面元素 CDN 访问加速 |
不是用来让你打游戏的啊喂 (#`O′)!  
GitHub/
Clash




| UsagePage | / |
| Binaryai | 基于开源项目代码匹配度在线反编译工具外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传 | UsagePage | / |
| IDA | 最常用的静态逆向工具 | 官网 | ida pro 权威指南 |
| Ghidra | 开源的静态逆向工具,和 IDA 作用相同 | 官网 | / |
| Ollydbg | 同为反汇编调试器 (官方已经停止维护) | 官网 | / |
| x64dbg / x32dbg | 在 windows 上使用的开源 x64 / x32 调试器 | 官网 | / |
| DIE | 查壳工具,拿到程序第一件事就是分析文件类型,是否有壳 | GitHub | GitHub |
| Exeinfope | 同为查壳工具 | 官网 | / |
| Cheat Engine | 对程序的内存数据进行扫描和调试。 | 官网 | / |
| GDB | 一般用于 ELF 的动态调试,配合插件 (如 pwngdb,gdb-peda) 使用更佳 | 使用包管理工具安装 | Sourceware |
| z3 | 开源的约束求解器,针对约束求解题型 | GitHub | / |
| dnSpy | 强大的 .NET 调试、修改和反编译的工具 (已停止维护) | GitHub | / |
| ----Java 反编译 |
|
|
|
| JADX | 开源 更好的代码可读性 自动恢复丢失的类和方法、变量和方法名称、可以将反编译结果导出为 Eclipse 或 IDEA 项目 | GitHub | / |
| JD-GUI | 更好的代码可读性 可导出为 Java 文件或 Jar 包 | GitHub | / |
| JEB | 支持 wasm 可交叉引用、可看字节码、反编译结果纯粹 | 官网 | / |
| GDA | 支持 apk, dex, odex, oat, jar, class, aar 文件的反编译, 支持 python 及 java 脚本自动化分析 | 官网 | / |
| Fernflower | IDEA 采用的反编译工具 , 支持 Jar 包反编译。 | GitHub | / |
| ----Python 反编译 |
|
|
|
| pycdc | pyc 反编译 , 对高版本有不错兼容性。 | GitHub | / |
| Unpy2exe | 对 py2exe 打包的 python 程序提取字节码文件 (.pyc)。 | GitHub | / |
| Pyinstxtractor | 对 pyInstaller 打包的 python 程序提取字节码文件 (.pyc)。 | GitHub | / |
| [Python]uncompyle | 用于对 Python 字节码文件 (.pyc) 的反汇编,将其变成 python 源代码。 | 官网 | / |


💥 PWN | 二进制¶

项目名称Usage项目地址其他
GDB一般用于 ELF 的动态调试,配合插件 (如 pwngdb,gdb-peda) 使用更佳。Sourceware/
Pwntools用于编写 EXP。GitHub/
Pwncli一款简单、易用的 pwn 题调试与攻击工具,帮助你快速编写 pwn 题攻击脚本,并实现本地调试和远程攻击的便捷切换,提高你在 CTF 比赛中调试 pwn 题脚本的速度与效率。GitHub/
Checksec查看二进制文件开启了哪些保护机制。GitHub/
ROPgadget编写 ROP 的 EXP 时需要用到,可以帮助你寻找合适的 gadgets。GitHub/
objdump反汇编工具,查看文件的一些表信息,如 got 表。//
radare2UNIX-like reverse engineering framework and command-line toolset.GitHub/
windbgWindow 内核模式和用户模式代码调试。Microsoft Learn/

🛡 AWD / AWDP¶

项目名称Usage项目地址其他

MISC | 杂项

信息收集

编码扩展

文件基础

压缩包

隐写技术

流量分析

内存取证

附 : 文件签名表

Web | 网络攻防

  • Web 入门题单

  • PHP 基础

  • PHP 反序列化基础

  • SQL 注入

  • XSS 攻击

  • 文件包含

  • SSTI 注入

Crypto | 密码学

  • 1. 前情提要

  • 2. 编码基础

  • 3. 古典密码

Reverse | 逆向工程

  • 1. 引导篇:灵魂 F&Q

  • 2. Quick Start:可执行文件

  • 3. Quick Start:ASM 汇编

  • 4. Quick Start:Example problems

  • 5. 从零开始的 IDA

  • 6. 从零开始的壳

Pwn | 二进制安全

  1. 汇编语言 (x86)

  2. 栈上数组越界 & 栈溢出

1.1. ROP 入门

1.2. 常见的 ROP 技巧

  1. 常见保护

x. 杂七杂八的解题技巧

AWD | 攻防模式

  1. AWD 介绍

  2. AWD 平台

  3. 【WEB】AWD 技巧

  4. 【PWN】AWD 技巧

AI | 人工智能安全

初识 AI

你的第一个神经网络

blockchain | 区块链安全

为了帮助大家更好的学习网络安全,我给大家准备了一份网络安全入门/进阶学习资料,里面的内容都是适合零基础小白的笔记和资料,不懂编程也能听懂、看懂这些资料!

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

[2024最新优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享]


在这里插入图片描述

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

[2024最新优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享]
在这里插入图片描述

在这里插入图片描述

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

[2024最新优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享]

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值