手记

WEB练习1

从今天开始Evan将会每天准时和大家分享一些CTF赛事中的web题目,通过题目学习一些知识点,从而提高我们的技能。今天要为大家带来的是2017年广东强网杯中两道基础的web题目。

Who Are You?

题目描述:我是谁,我在哪,我要做什么?题目链接:http://106.75.72.168:2222/
​打开题目显示:Sorry. You have no permissions.
在遇到这种情况时我们需要考虑三个方面:
1.是否存在敏感文件泄露?
2.是否存在跳转?
3.cookie/session
我们逐项来看,首先是文件泄露
通过御剑扫描,我们似乎并没有发现什么有用的信息,接下来是跳转,使用bp抓包,同样也没有发现有跳转的有用信息,那么只剩下了cookie,我们查看cookie。
很明显这是一个base64加密过的字符串,我们对其进行解密,得到f:5:“thrfg”; 根据经验我们会发现这是一个rot13加密,我们对其进行解密得到s:5:“guest”; 到这里我们就明白了,我们需要admin权限,那么反过来我们队admin进行rot13以及base64加密得到一个新的字符串,将原来的cookie进行替换来试一下
我们成功的进入到了下一个页面,查看源代码
通过源代码我们很容易发现这是一个文件上传漏洞,尝试上传一个文件
但是好像并不成功,页面返回了No No No!,我们猜测这其中有正则过滤,但是我们又知道preg_match函数的$subject参数要求是字符串,如果是数组类型的话,函数会返回false,尝试修改data为数组进行POST,我们得到了返回值,访问这个路径便会得到flag。

Broken

题目描述:you got a file, but … 题目链接:http://106.75.72.168:1111/
打开题目后会显示Hi, a CTFer. You got a file, but it looks like being broken.
我们查看file,可以发现这是一段jsfuck编码老司机们一定会想到控制台跑一下,但是会发现并没有运行结果,我们再来仔细的看一下这段编码,似乎发现和我们平常的jsfuck是有区别的,正常的jsfuck开头为[] (![]+[]),而我们的开头似乎少了一个],我们补全后再次运行,会看到
flag is not here,很明显这是调用了函数显示出的弹窗,于是我们删掉最后的()调用便可以得到flag。

3人推荐
随时随地看视频
慕课网APP