0x00 什么是CTF?
CTF(Capture The Flag)是一种广泛使用的信息安全竞赛形式。解题赛中选手使用各类渗透、破解、攻击等手段,通过获得文件、网站或靶机中的特定字符串(Flag)并提交来取得成绩。攻防赛(AWD)则是选手运维自己队伍靶机中的程序,并攻击其他靶机所运维的程序,提交被攻破的其他靶机中的Flag从而取得成绩。
一般来说,解题赛主要有Web,Pwn,Crypto,Reverse,MISC,Android等大类。
0x01 第一阶段准备
严格的说这个阶段你并不需要任何准备,或者说并不能做出有效的准备,因为任何工具都是在长期实践中被证明有效的软件和代码。所以这里的准备更多的是在思想上的。
1.目标
首先要回答自己为什么学习CTF,这并不需要多么华丽和宏伟的理由,只要理由充分就可以了,在这条极客攀登之路上,你的目标将会不断鼓励你,为你指引方向。
2.坚持
如果你觉得你可以用几天(注意这个量词)就能学会CTF,那么你可以放弃了,因为真正的大佬学了很多年依然认为自己是个萌新。换句话说,技术的路上永远人外有人。
3.百度
众所周知CTF永远只有开卷比赛,即使是线下赛也不禁止你访问外网。也就是说你不仅可以查找问题相关的漏洞的相关信息,还可以下载一些工具和软件。另外,对于初学者而言,使用搜索引擎是一项必须掌握的技能,搜索引擎上有99%的问题的解决方案。
笔者:其实我真的很想写谷歌,但那样就发不出去了:)
0x02 参考一些writeup完成简单的题目
可以选用的靶场有ichunqiu,Bugku,实验吧等多种,这些是免费使用的。它们比较热门,所以上面的题绝大多数都有大佬在博客中写writeup提供解决方案(请自行查百度)。
在使用这些靶场的时候,初学者可以每个分类都尝试一番(Pwn除外,门槛较高)。对每个类别都有基础的了解后,就可以开始看一些面向知识点的博客了。这里比较推荐的是ctf wiki.
0x03 第二阶段准备
1.工具
当你拥有上述经验之后,你大致应该配备如下工具:
1.linux虚拟机或子系统一个(推荐kali,再加一个ubuntu也可)
2.JDK和JRE,版本尽量用最新的。不过也有认为为了配合很多工具,用1.8版的JDK也可以
3.Notepad++和UltraEdit各一个,这是为了能打开任意文件,其中Notepad++是集成了很多功能的记事本,UltraEdit是比较好用的十六进制编辑器。
4.python. 一般在kali和ubuntu里会有python2.x和3.x两个版本,物理机也需要这样的配置。一般将python作为写脚本的主要手段
5.其他你在做题过程中用到的工具
其他工具由于涉及方向的不同,这里暂不列举,考虑到系统的整洁性,建议把工具放在一个统一的路径下。
2.笔记
你在此时可以提几个问题给自己,包括但不限于如下几种:
我遇到了什么样的漏洞?我遇到了什么样的隐写技术?我遇到了哪些加密和编码方式?
我使用了什么样的工具?大致是什么原理?
这些有助于构造一个相对成体系的认知。
0x04 独立完成题目
这时你已经掌握了一些基本技术,你可以基于这些技术独立上手做一些题了,选择一个你没用过的靶场,选择较简单的一些题开始实战吧。和之前不同的是,你要首先在无writeup的情况下分析题目,你只有完全无法解决一道题时,才应当去看writeup。
你可以在此时根据刷题的偏好,决定一个方向去专精的学习了。这里就可以恭喜你,你已经完成了CTF的入门阶段学习~
网络安全学习资源分享:
给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
因篇幅有限,仅展示部分资料,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,需要点击下方链接即可前往获取
读者福利 |
CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享 (安全链接,放心点击)
同时每个成长路线对应的板块都有配套的视频提供:
实战训练营
面试刷题
视频配套资料&国内外网安书籍、文档
当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料
所有资料共282G,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,可以扫描下方二维码或链接免费领取~
读者福利 |
CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享 (安全链接,放心点击)