本文已参与「新人创作礼」活动,一起开启掘金创作之路。 声明
ctf是什么?
在百度百科的解释下,CTF(Capture The Flag)中文一般译作夺旗赛,在网络安全领域中指的是网络安全技术人员之间进行技术竞技的一种比赛形式。CTF起源于1996年DEFCON全球黑客大会,以代替之前黑客们通过互相发起真实攻击进行技术比拼的方式。发展至今,已经成为全球范围网络安全圈流行的竞赛形式,2013年全球举办了超过五十场国际性CTF赛事。而DEFCON作为CTF赛制的发源地,DEFCON CTF也成为了目前全球最高技术水平和影响力的CTF竞赛,类似于CTF赛场中的“世界杯” 。
用某小白的自己话来说,那就是属于计算机相关专业人员、计算机大佬、计算机爱好者的“数学竞赛”或者说是一个“游戏”,听着十分高大上,确实有点东西的那种比赛。如果在用通俗一点的话来说,那就是类似于高中的数学竞赛,用一些特殊的方法(工具)来求得这道题的解(flag),还有攻防赛,也就是LOL里面的对线,十分考验对线基本功,起码补刀(相关知识)要好,其他的一些进攻、防御要看对线的双方,说起对线了,那么就有位置的说法,也就是你擅长打野或者上单,对应到ctf中就是你擅长的题目类型,由于ctf涉及的知识比较多,所以建议找一个位置(发展方向),喜欢上单就走上,当然,如果你是一个王者,全面发展也可以;
CTF竞赛模式具体分为以下三类:
一、解题模式(Jeopardy)
在解题模式CTF赛制中,参赛队伍可以通过互联网或者现场网络参与,这种模式的CTF竞赛与ACM编程竞赛、信息学奥赛比较类似,以解决网络安全技术挑战题目的分值和时间来排名,通常用于在线选拔赛。题目主要包含逆向、漏洞挖掘与利用、Web渗透、密码、取证、隐写、安全编程等类别。
二、攻防模式(Attack-Defense)
在攻防模式CTF赛制中,参赛队伍在网络空间互相进行攻击和防守,挖掘网络服务漏洞并攻击对手服务来得分,修补自身服务漏洞进行防御来避免丢分。攻防模式CTF赛制可以实时通过得分反映出比赛情况,最终也以得分直接分出胜负,是一种竞争激烈,具有很强观赏性和高度透明性的网络安全赛制。在这种赛制中,不仅仅是比参赛队员的智力和技术,也比体力(因为比赛一般都会持续48小时及以上),同时也比团队之间的分工配合与合作。
三、混合模式(Mix)
结合了解题模式与攻防模式的CTF赛制,比如参赛队伍通过解题可以获取一些初始分数,然后通过攻防对抗进行得分增减的零和游戏,最终以得分高低分出胜负。采用混合模式CTF赛制的典型代表如iCTF国际CTF竞赛。
CTF的题型(对线位置)
一、Web
二、二进制(总称)
三、杂项
PS:国外的CTF比赛的题目类型通常以二进制程序分析和漏洞利用为主,辅以Web、密码学以及其他一些杂题。而国内的CTF比赛题目通常以Web渗透为主,配上一些逆向分析,再辅以一些漏洞利用、密码学等方面的题目。
CTF的常见题型(对线常见英雄)
一、Web
- sql注入
- xss
- 文件上传
- 包含漏洞
- xxe
- ssrf
- 命令执行
- 代码审计
二、PWN
- 攻击远程服务器的服务
- 会提供服务程序的二进制文件
- 分析漏洞并写出exp
- 栈溢出、堆溢出
- 绕过保护机制(ASLR,NX等)
三、REVERSE
- 逆向
- 破解
四、CRYPTO
- 古典密码
- 现代密码
- 自创密码
五、MISC
- 隐写
- 编程算法
- 分析
- 取证
- 解码
- 等...
参加ctf比赛需要具备什么?
一、具备一定的语言基础以及ctf中的一些基础知识(擅长某一方面,如二进制)
因为比赛中涉及的题型太多,术业有专攻,所以让有一个发展方向,擅长某一个方面,然后对于一些其他的方向了解一些;比如我擅长中单,ad,但是我也会一点打野,上单,辅助;语言基础是一定一定的,看所选方面了,这里不再多说;
二、一个“对线5v5”团队
能够分工协作,一起打团;当局者迷,盘观者清,可能你正在对线,没注意到打野的到来,这时候队友就可以提醒你打野来了(也就是对于某道题,你可能陷入了某个坑,队友可以助你脱坑,盘观者清!)
三、能熬夜的身体
王者一局是15-20分钟左右,LOL是30-40分钟左右,CTF一般是48小时,所以有一个能肝的身体是多么重要;