赞
踩
CTF(Capture The Flag)是一种网络安全技能竞赛,它涉及到多个领域,如密码学、逆向工程、漏洞利用、Web安全等。 每个比赛都会有多个题目,每个题目都有一个旗帜,玩家需要通过解决问题、攻击漏洞或破解密码等手段,获取旗帜并提交给比赛平台。 旗帜是一个特定的字符串或码,通常是一个MD5或SHA1散列值。
了解不同类型的CTF挑战,例如逆向工程、密码学、Web安全等。 理解它们的特点以及要求的技能和知识。
在本篇文章里,我会简单讲一下ctf bugku的一些简单的题。
第一题 simple sst1
第一步f12打开开发者工具,可以看到需要利用flask的secret key(涉及安全的东西需要用secret)第二步 测试回显,查看全局变量 flag={{config.secret.key}}可看到答案。php的查看全局变量是arcs=GLOBALS,显示全部的变量。
第二题simple sst2
利用kali下载tplmap,的yourip,输入自己的网址,答案就出现了。
第三题 计算器
验证码,当我们看到这个题时,输入计算出结果,发现只能输入1位,但是答案是俩位,此时我们应该在前端修改输入长度,然后就可以输入答案了。
第四题web基础get
通过分析代码可知,当我们输入?what=flag时,答案就出现了。
第五题 你必须让他停下来
打开这个题,我们发现这个图片一直在变,打开开发者模式,发现Flag显示不出来,我们刷新,书信到一定程度时,答案就出现了。
第六题 变量1
通过代码我们可以发现,题目分析:flag在变量中,GET方式从地址栏传参,Isset()检测变量是否已设置并非NULL,preg_match()用于执行一个正则表达式匹配,/^ 开始, \w表示任意一个单词字符,即[a-zA-Z0-9_] ,+将前面的字符匹配一次或多次,$/ 结尾。var_dump()判断一个变量的类型与长度,并输出变量的数值.“$$”是可变变量的标志,可视为$($args)。
解决方法:因为flag在变量中,所以我们可以利用GLOBALS输出全部的变量,即将args=GLOBALS,var_dump()会将$GLOBALS数组中存放的所有变量以数组的方式输出 得到flag。
第七题 头等舱
当我们打开文件时,发现f12下什么也没有,我们联系周围,思考题目为什么叫头等舱呢,或许跟header有关,抓包重放,答案就在header里面
第八题 本地管理员
这个题我有必要细说一下,打开文件,随便输入账号跟密码,发现提示ip已被记录,需要本地管理员登陆,此时我们应该知道本地的地址是127.0.0.1。然后发现最下面有一行n而且还很多,我们可以研究研究,发现在这行最后有一堆乱码,我们复制下来,放到解码器里面解码,得到test123,或许是账号也或许是密码,先记住就行。接下来抓包,编辑模拟一下本地的地址IPxxf X-Forwarded-For: 127.0.0.1,将这个写到重发器里面重发,发现并没有显示ip地址错误,所以说明我们模拟对了,显示的是密码错误,此时我们暴力破解。
第九题 文件包含(涉及内容:php伪代码)
相关内容:
URL栏里显示:http://114.67.246.176:15077/index.php?file=show.php,可能存在文件包含漏洞
之后就想到文件包含可以使用PHP伪协议,php://filter可以获取指定文件源码。当它与包含函数结合时,php://filter流会被当作php文件执行。所以我们一般对其进行编码,让其不执行。从而导致 任意文件读取。
http://114.67.246.176:15077/index.php?file=php://filter/read=convert.base64-encode/resource=index.php输入后显示答案。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。