本文目录一览:
CTF各个方向的具体内容是什么?
如下:
Reverse
题目涉及到软件逆向、破解技术等,要求有较强的反汇编、反编译功底。主要考查参赛选手的逆向分析能力。
所需知识:汇编语言、加密与解密、常见反编译工具
Pwn
Pwn 在黑客俚语中代表着攻破,获取权限,在 CTF 比赛中它代表着溢出类的题目,其中常见类型溢出漏洞有整数溢出、栈溢出、堆溢出等。主要考查参赛选手对漏洞的利用能力。
所需知识:C,OD+IDA,数据结构,操作系统
Web
Web 是 CTF 的主要题型,题目涉及到许多常见的 Web 漏洞,如 XSS、文件包含、代码执行、上传漏洞、SQL 注入等。也有一些简单的关于 *** 基础知识的考察,如返回包、TCP/IP、数据包内容和构造。可以说题目环境比较接近真实环境。
所需知识:PHP、Python、TCP/IP、SQL
Crypto
题目考察各种加解密技术,包括古典加密技术、现代加密技术甚至出题者自创加密技术,以及一些常见编码解码,主要考查参赛选手密码学相关知识点。通常也会和其他题目相结合。
所需知识:矩阵、数论、密码学
Misc
Misc 即安全杂项,题目涉及隐写术、流量分析、电子取证、人肉搜索、数据分析、大数据统计等,覆盖面比较广,主要考查参赛选手的各种基础综合知识。
所需知识:常见隐写术工具、Wireshark 等流量审查工具、编码知识
Mobile
主要分为 Android 和 iOS 两个平台,以 Android 逆向为主,破解 APK 并提交正确答案。
所需知识:Java,Android 开发,常见工具
CTF(Capture The Flag)中文一般译作夺旗赛,在 *** 安全领域中指的是 *** 安全技术人员之间进行技术竞技的一种比赛形式。CTF起源于1996年DEFCON全球黑客大会,以代替之前黑客们通过互相发起真实攻击进行技术比拼的方式。
发展至今,已经成为全球范围 *** 安全圈流行的竞赛形式,2013年全球举办了超过五十场国际性CTF赛事。而DEFCON作为CTF赛制的发源地,DEFCON CTF也成为了目前全球更高技术水平和影响力的CTF竞赛,类似于CTF赛场中的“世界杯”。
CTF 为团队赛,通常以三人为限,要想在比赛中取得胜利,就要求团队中每个人在各种类别的题目中至少精通一类,三人优势互补,取得团队的胜利。同时,准备和参与 CTF 比赛是一种有效将计算机科学的离散面、聚焦于计算机安全领域的 *** 。
赛事介绍
CTF是一种流行的信息安全竞赛形式,其英文名可直译为“夺得Flag”,也可意译为“夺旗赛”。
其大致流程是,参赛团队之间通过进行攻防对抗、程序分析等形式,率先从主办方给出的比赛环境中得到一串具有一定格式的字符串或其他内容,并将其提交给主办方,从而夺得分数。为了方便称呼,我们把这样的内容称之为“Flag”。
CTF竞赛模式具体分为以下三类:
解题模式(Jeopardy)
在解题模式CTF赛制中,参赛队伍可以通过互联网或者现场 *** 参与,这种模式的CTF竞赛与ACM编程竞赛、信息学奥赛比较类似,以解决 *** 安全技术挑战题目的分值和时间来排名,通常用于在线选拔赛。题目主要包含逆向、漏洞挖掘与利用、Web渗透、密码、取证、隐写、安全编程等类别。
攻防模式(Attack-Defense)
在攻防模式CTF赛制中,参赛队伍在 *** 空间互相进行攻击和防守,挖掘 *** 服务漏洞并攻击对手服务来得分,修补自身服务漏洞进行防御来避免丢分。
攻防模式CTF赛制可以实时通过得分反映出比赛情况,最终也以得分直接分出胜负,是一种竞争激烈,具有很强观赏性和高度透明性的 *** 安全赛制。在这种赛制中,不仅仅是比参赛队员的智力和技术,也比体力(因为比赛一般都会持续48小时及以上),同时也比团队之间的分工配合与合作。
混合模式(Mix)
结合了解题模式与攻防模式的CTF赛制,比如参赛队伍通过解题可以获取一些初始分数,然后通过攻防对抗进行得分增减的零和游戏,最终以得分高低分出胜负。采用混合模式CTF赛制的典型代表如iCTF国际CTF竞赛。
文件包含CTF题目
1、链接: 南京邮电大学 *** 攻防平台文件包含150
2、解题 *** :
使用 php://filter 协议读取index文件。
3、源码分析
对data、input协议及../进行了过滤,但能通过filter协议进行读取。
1、链接: BugkuCTF本地包含60
2、解题 ***
拼接eval构造payload。
3、源码分析
这里注意php语言的一些变量定义及函数。
4、进阶
该题和php变量定义的理解联系紧密,可参考 博客 ,进一步学习。
1、链接: BugkuCTF本地包含2 150
2、解题 ***
查看源码,发现upload.php,结合题目提示想到本地包含配合文件上传。
然鹅上传后感觉文件被秒删了,菜刀也没连接上。另找 *** 。
在图片马中修改payload为script language=phpsystem("ls")/script,利用文件包含列出当前目录,发现flag文件,再查看文件获得flag。
1、链接: I春秋“百度杯”CTF比赛 2017 二月场 50
2、解题 ***
根据提示很容易测出文件包含漏洞。
发现无法写入php文件,利用system函数执行命令,获取当前目录文件。
利用 php://input 协议读取文件。
大一 *** 工程专业想学习 *** 安全,如何学习?
之一,可以买一本《白帽子讲web安全》来看着先,作者是吴翰清。先了解常见漏洞的原理,没必要研究的太深,因为光看很难理解,后面结合实践来理解事半功倍。
第二,多看一些安全公众号的文章,和一些博客文章,然后可以试着去做一些ctf的题目,可以拓展你的知识面和帮助你理解,几个较好的ctf平台有bugku、xctf,国外的有hackthebox,不过hackthebox难度较大,不建议一上来就去那里。ctf的题目不应该局限于web题目,其他的都可以做一下,毕竟一些安全比赛题目类型很多。
第三,可以去挖一些公益漏洞,挖之前先看别人怎么挖,挖漏洞是有技巧的,多看文章,可以去了解一下src。
第四,学好python,它是最契合 *** 安全的语言,可以用他来写脚本进行攻击非常nice。当然了如果可以的话,也要学好java,很多漏洞扫描器都是java写的,逆向方向需要java代码审计能力。也要学好网页设计这门课程,都是基础来的。
第五,web安全的最后都是内网渗透,拿下了一个网站,紧接着要拿下的就是他的主机,Linux基础要学好,这个你前面的积累,也是放到最后的一个。
bugku_ctf,web第四题_post
这题跟第三题几乎一样,只不过是将get *** 换为了post *** 。
使用插件如postman, hackbar, http request maker等等,很多插件。选择post模式,然后在 Body Data (也就是请求主体,请求内容)部分输入 what=flag ,提交即可。
ctfbugku150分
ctfbugku150分具体情况介绍如下:
题目给出一个baby.zip文件,下载后解压得到baby.exe文件,发现文件无法打开。
于是先把文件拖入PEID:
可以看到显示未知且为win32程序,于是用IDA打开程序:
发现代码将一段可疑的十六进制字符串放入了寄存器中,其中66 6C 61 67就是十六进制转义后的字符串flag,所以猜测这一段字符就是答案。
于是用python将这一段字符转义输出:
得到答案
2、Easy_vb
由题目可知,是简单的Visual Basic逆向问题。
下载文件解压后先用PEID分析,得到程序是32位,于是用ida打开。
快捷键Shift+F12打开字符串列表,随便点开一个,结果就看到了: