一、什么是CTF
CTF的全名是Capture The Flag 夺旗锦标赛,一般来说分为解题模式,攻防模式和混合模式 .
(1)解题模式( Jeopardy ):该模式通常是线上赛,即比赛举办方提供线上的比赛平台,选手登陆平台后,可看见赛题,每道赛题都有分数。根据题目,选手在解题后,会获得一个FLAG,通常是一串字符串,提交这个字符串后,若答对,即认为是解题成功,获得相应分数。国内常见的线上平台供应商有:i春秋( https://www.ichunqiu.com/ )、绿盟( https://www.nsfocus.com.cn/ )等。
解题模式通常是出现在初赛选拔中。
(2)攻防模式( Attack-Defense ):该模式通常是线下赛,即选手需要去到比赛举办方指定的场所参加比赛,这时候就不能连接外网了,都是在内网环境下完成比赛。模式跟解题模式差不多,区别主要在于比赛场所和是否可连接外网。另外在攻防模式下,由于是内网环境,各个比赛队伍之间可以相互攻击,这就要求选手在解题的同时,也要做好防御和修复好漏洞,因为其他队伍会攻击漏洞来获得分数。
(3)混合模式( Mix ):该模式是国际比赛中比较常见的一种模式,类似于攻防模式, 各参赛队伍通过攻防对抗进行得分增减的零和游戏,最终以得分高低分出胜负 。
二、赛题内容
无论是解题模式、攻防模式还是混合模式,主要都是包括:
(1)Web: 涉及到常见的Web漏洞,诸如注入、XSS、文件包含、代码执行、上传等漏洞
(2) Crypto:题目考察各种加解密技术,包括古典加密技术、现代加解密技术甚至出题者自创加密技术。
(3) Reverse: 即逆向工程,涉及到软件逆向、破解技术等,要求有较强的反汇编、反编译扎实功底。
(4) PWN:PWN在黑客中代表攻破,取得权限,CTF比赛中代表着溢出类题目,其中常见类型溢出漏洞有栈溢出,堆溢出 ,通常是二进制类题目。
(5)MISC:杂项,包括隐写(Steg)、取证、流量分析、压缩包修复等
由于比赛赛题涉及的内容广泛,熟悉5个方向内容的人很少,比赛的时间也不允许一两个人完成解题(超神的人除外),所以打CTF都是一个队伍来参加,每个人负责1到2个方向。在混合模式中,还要专人来负责防御。
三、学习平台
(1) https://www.ctftools.com/down/ (工具类)
(2) https://buuoj.cn/ (靶场类,适合新手练习,题目大部分在网上可以找到WriteUp)
(3) https://www.ichunqiu.com/ (学习类)
(4) https://bbs.pediy.com/ (看雪论坛,学习类)
(5) https://www.freebuf.com/ (学习和资讯类)
(6) http://www.hetianlab.com/ (实验类,提供教程和实验环境)
(7) https://ctf.bugku.com/ (靶场类)
(8) https://adworld.xctf.org.cn (靶场类)
(9) http://www.shiyanbar.com/ (靶场类,目前在维护中)
四、总结
作为新手而言,可以先选择一个方向,学习其基本知识后,上靶场做题,不懂的可以查找WriteUp,也就是多刷题,就跟高考解数学题一样,通过多做题来训练自己的思维。实际比赛的题目,是不可能遇到原题的