文章目录
CTF基础知识
一、CTF简介
CTF(Capture The Flag)夺旗比赛,在网络安全领域中指的是网络安全技术人员之间进行技术竞技的一种比赛形式。CTF起源于1996年DEFCON全球黑客大会,以代替之前黑客们通过互相发起真实攻击进行技术比拼的方式。发展至今,已经成为全球范围网络安全圈流行的竞赛形式,2013年全球举办了超过五十场国际性CTF赛事。而DEFCON作为CTF赛制的发源地,DEFCON CTF也成为了目前全球最高技术水平和影响力的CTF竞赛,类似于CTF赛场中的“世界杯” 。
二、CTF赛事介绍
CTF是一种流行的信息安全竞赛形式,其英文名可直译为“夺得Flag”,也可意译为“夺旗赛”。其大致流程是,参赛团队之间通过进行攻防对抗、程序分析等形式,率先从主办方给出的比赛环境中得到一串具有一定格式的字符串或其他内容,并将其提交给主办方,从而夺得分数。为了方便称呼,我们把这样的内容称之为“Flag”。
三、CTF竞赛模式
1.解题模式(Jeopardy)
在解题模式CTF赛制中,参赛队伍可以通过互联网或者现场网络参与,这种模式的CTF竞赛与ACM编程竞赛、信息学奥赛比较类似,以解决网络安全技术挑战题目的分值和时间来排名,通常用于在线选拔赛。题目主要包含逆向、漏洞挖掘与利用、Web渗透、密码、取证、隐写、安全编程等类别。
2.攻防模式(Attack-Defense)
在攻防模式CTF赛制中,参赛队伍在网络空间互相进行攻击和防守,挖掘网络服务漏洞并攻击对手服务来得分,修补自身服务漏洞进行防御来避免丢分。攻防模式CTF赛制可以实时通过得分反映出比赛情况,最终也以得分直接分出胜负,是一种竞争激烈,具有很强观赏性和高度透明性的网络安全赛制。在这种赛制中,不仅仅是比参赛队员的智力和技术,也比体力(因为比赛一般都会持续48小时及以上),同时也比团队之间的分工配合与合作。
3.混合模式(Mix)
结合了解题模式与攻防模式的CTF赛制,比如参赛队伍通过解题可以获取一些初始分数,然后通过攻防对抗进行得分增减的零和游戏,最终以得分高低分出胜负。采用混合模式CTF赛制的典型代表如iCTF国际CTF竞赛。
四、CTF竞赛内容
不管是国内外,目前主流的CTF比赛内容主要涉及以下多个方面:
Web 应用漏洞挖掘利用
Crypto 密码学
Pwn 程序的逻辑分析,漏洞利用windows、linux、小型机、固件设备等
Misc 杂项,隐写,数据还原,脑洞、社会工程、与信息安全相关的大数据等
Reverse 二进制程序逆向,逆向windows、linux、移动设备类等
Ppc 编程类
国内外著名赛事
1、国际知名CTF赛事
· DEFCON CTF:CTF赛事中的“世界杯”
· UCSB iCTF:来自UCSB的面向世界高校的CTF
· Plaid CTF:包揽多项赛事冠军的CMU的PPP团队举办的在线解题赛
· Boston Key Party:近年来崛起的在线解题赛
· Codegate CTF:韩国首尔“大奖赛”,冠军奖金3000万韩元
· Secuinside CTF:韩国首尔“大奖赛”,冠军奖金3000万韩元
· XXC3 CTF:欧洲历史最悠久CCC黑客大会举办的CTF
· SIGINT CTF:德国CCCAC协会另一场解题模式竞赛
· Hack.lu CTF:卢森堡黑客会议同期举办的CTF
· EBCTF:荷兰老牌强队Eindbazen组织的在线解题赛
· Ghost in the Shellcode:由Marauders和Men in Black Hats共同组织的在线解题赛
· RwthCTF:由德国0ldEur0pe组织的在线攻防赛
· RuCTF:由俄罗斯Hackerdom组织,解题模式资格赛面向全球参赛,解题攻防混合模式的决赛面向俄罗斯队伍的国家级竞赛
· RuCTFe:由俄罗斯Hackerdom组织面向全球参赛队伍的在线攻防赛
· PHD CTF:俄罗斯Positive Hacking Day会议同期举办的CTF
国际重要CTF赛事分布图:红色为解题模式选拔赛+攻防模式现场决赛,黑色为混合模式在线赛,紫色为解题模式CTF赛,橘色为在攻防模式在线赛。
2、国内知名CTF赛事
· XCTF全国联赛
中国网络空间安全协会竞评演练工作组主办、南京赛宁承办的全国性网络安全赛事平台,2014-2015赛季五站选拔赛分别由清华、上交、浙大、杭电和成信技术团队组织(包括杭电HCTF、成信SCTF、清华BCTF、上交0CTF和浙大ACTF),XCTF联赛总决赛由蓝莲花战队组织。XCTF联赛是国内最权威、最高技术水平与最大影响力的网络安全CTF赛事平台。
· AliCTF
由阿里巴巴公司组织,面向在校学生的CTF竞赛,冠军奖金10万元加BlackHat全程费用。
· KCTF
看雪CTF(简称KCTF)是圈内知名度最高的技术竞技,从原CrackMe攻防大赛中发展而来,采取线上PK的方式,规则设置严格周全,题目涵盖Windows、Android、iOS、Pwn、智能设备、Web等众多领域。
看雪CTF比赛历史悠久、影响广泛。自2007年以来,看雪已经举办十多个比赛,与包括金山、360、腾讯、阿里等在内的各大公司共同合作举办赛事。比赛吸引了国内一大批安全人士的广泛关注,历年来CTF中人才辈出,汇聚了来自国内众多安全人才,高手对决,精彩异常,成为安全圈的一次比赛盛宴,突出了看雪论坛复合型人才多的优势,成为企业挑选人才的重要途径,在社会安全事业发展中产生了巨大的影响力。
· XDCTF
2015年之前由西安电子科技大学信息安全协会与西安电子科技大学组织的CTF竞赛,其特点是偏向于渗透实战经验。2016年之后由西安电子科技大学组织举办。
· HCTF
由杭州电子科技大学信息安全协会承办组织的CTF
杭州电子科技大学信息安全协会由杭州电子科技大学通信工程学院组织建立,协会已有七年历史,曾经出征DEFCON,BCTF等大型比赛并取得优异成绩,同时协会还有大量有影响力的软件作品。协会内部成员由热爱黑客技术和计算机技术的一些在校大学生组成,有多个研究方向,主要有渗透,逆向,内核,web等多个研究方向。至今已经成功举办6次CTF比赛。
· ISCC
由北理工组织的传统网络安全竞赛,最近两年逐渐转向CTF赛制。
· LCTF
由L-Team战队组织的CTF竞赛。
· TCTF
TCTF由中国网络空间安全协会竞评演练工作委员会指导、腾讯安全发起、腾讯安全联合实验室主办,0ops战队和北京邮电大学协办的CTF竞赛。
· Real World CTF
Real World CTF 是由长亭科技主办的国际级 CTF 大赛,全球首创 CTF 夺旗赛和 Pwn 赛结合的全新赛制,赛题全部基于 现实世界软件的修改或二次开发,首届即吸引了 5 大洲,15 个国家地 区顶尖战队参赛。
· 百度杯CTF夺旗大战
由百度安全应急响应中心和i春秋联合举办的CTF比赛,国内现今为止首次历时最长(半年)、频次最高的CTF大赛。赛题丰富且突破了技术和网络的限制。
· 全国大学生信息安全竞赛创新实践能力赛线上赛
由教育部高等学校信息安全专业教学指导委员会主办,西安电子科技大学、永信至诚、国卫信安等承办;百度安全中心、阿里安全应急响应中心、腾讯安全平台方舟计划、360企业安全集团赞助支持的CTF竞赛,覆盖面广,质量级别最高,被参赛选手称作CTF的国赛。
五、如何学习CTF
1、分析赛题情况(属于哪一类涉及哪些知识点等)
2、分析自身能力,自己最适合哪个方向?(方向很重要,建议3、兴趣所致,有时也需为团队牺牲!!!)
4、选择更适合的入手(从低到高、由易入难)
5、研究历年经典的wp(writeup)
1、分析赛题
PWN、Reverse:偏重对汇编、逆向及底层核心的理解
Crypto:偏重对数学、算法的学习,密码学要深入学习
Web:偏重对技巧沉淀、快速搜索能力的挑战、发散性思维,对底层、代码原理只需要了解,相关漏洞知识的积累
Misc:偏重则更复杂,所有与计算机安全挑战有关的都在其中,隐写、图片数据分析还原、流量分析、大数据、游戏逆向分析等等
2、常规操作
A方向:PWN+Reverse+Crypto 随机搭配
B方向:Web+Misc组合
Misc所有人都可以做
3、入门知识
团队要学的内容:linux基础、计算机组成原理、操作系统原理、网络协议分析
A方向:IDA工具使用(fs插件)、逆向工程、密码学、缓冲区溢出等
B方向:Web安全、网络安全、内网渗透、数据库安全、top10的安全漏洞等
推荐书籍
A方向:
RE for Beginners
IDA Pro权威指南
揭秘家庭路由器0day漏洞挖掘技术
自己定操作系统
黑客攻防技术宝典:系统实战篇 有各种系统的逆向讲解
B方向:
Web应用安全权威指南 最推荐小白,宏观web安全
Web前端黑客技术揭秘
黑客秘籍—渗透测试实用指南
黑客攻防技术宝典 web实战篇 web安全的所有核心基础点,有挑战性,最常规,最全,学好会直线上升
代码审计:企业级web代码安全架构
零基础网络安全学习计划
学习路线图大纲总览
我一共划分了六个阶段,但并不是说你得学完全部才能上手工作,对于一些初级岗位,学到第三四个阶段就足矣~
这里我整合并且整理成了一份【282G】的网络安全从零基础入门到进阶资料包,需要的小伙伴文末免费领取哦,无偿分享!!!
【一一帮助网络安全学习,以下所有资源文末免费领取一一】
①网络安全学习路线
②上百份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥HW护网行动经验总结
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析
接下来我将给各位同学划分一张学习计划表!
学习计划
那么问题又来了,作为萌新小白,我应该先学什么,再学什么?
既然你都问的这么直白了,我就告诉你,零基础应该从什么开始学起:
阶段一:初级网络安全工程师
接下来我将给大家安排一个为期1个月的网络安全初级计划,当你学完后,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web渗透、安全服务、安全分析等岗位;其中,如果你等保模块学的好,还可以从事等保工程师。
综合薪资区间6k~15k
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)
2、渗透测试基础(1周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等
3、操作系统基础(1周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)
4、计算机网络基础(1周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现
5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固
6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)
那么,到此为止,已经耗时1个月左右。你已经成功成为了一名“脚本小子”。那么你还想接着往下探索吗?
阶段二:中级or高级网络安全工程师(看自己能力)
综合薪资区间15k~30k
7、脚本编程学习(4周)
在网络安全领域。是否具备编程能力是“脚本小子”和真正网络安全工程师的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力。
零基础入门的同学,我建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习
搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime;
Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,没必要看完
用Python编写漏洞的exp,然后写一个简单的网络爬虫
PHP基本语法学习并书写一个简单的博客系统
熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选)
了解Bootstrap的布局或者CSS。
阶段三:顶级网络安全工程师
这部分内容对于咱们零基础的同学来说还太过遥远了,由于篇幅问题就不展开细说了,我给大家贴一个学习路线。感兴趣的童鞋可以自行研究一下哦,当然你也可以点击这里加我与我一起互相探讨、交流、咨询哦。
资料领取
上述这份完整版的网络安全学习资料已经上传网盘,朋友们如果需要可以微信扫描下方二维码 ↓↓↓ 或者 点击以下链接都可以领取
标签:网络安全,攻防,竞赛,Web,入门教程,就够,安全,CTF From: https://blog.csdn.net/weixin_51725318/article/details/143763372