theKingOfNight's Blog

CTF-Web-百度杯-CTF比赛十二月场Blog

Word count: 518Reading time: 1 min
2019/01/19 Share

这个题好难了,然后看着dalao的方式做了一遍,收货甚多….

正常套路,先注册
然后登陆进去后有一个post编辑版,上传一个一句话木马图片,然后显示这样image.png
可以看到路径为/kindeditor/php/upload_json.php
应该说这个编辑版就是kindeditor,搜索一波kindeditor的漏洞,在github上可以直接下载源码,php文件一般就是php代码
从php文件的file_manager_json.php文件中可以看到这里有一个变量path可以用来访问目录,同时可以搜索kindeditor的漏洞

详情可以参考这篇文章:https://yq.aliyun.com/ziliao/8593
直接漏洞利用,访问:/kindeditor/php/file_manager_json.php?path=/ image.png
直接就可以看到目录,不过没什么有用的东西
在常识看上一级目录image.png
然后直接访问flag.phpimage.png
可以看到flag就在这个文件中,但是没有显示全。
所以就要尝试某一个方法把文件读出来
各种方法试了老半天,结果没有成功

后来看dalao的wp才知道,这道题居然是注入,而且注入在留言板上,还是自己太年轻,反正我是打死也不会想到的 。image.png
image.png
可以看到两次显示的不同,说明这里有注入

然后就需要考虑这里是哪种注入,这里会将详细写到数据库中,在显示出来,不难判断出这里是insert into注入,然后就需要考虑如何进行注入了,经过不断的测试发现image.png
这样可以进行注入,但是第三个参数不会显示出来,然后又陷入了无穷的玄学之中。

最后看dalao的wp才发现,这道题居然需要创建insert into多条记录,来求其中的内容,长见识了,万年也想不到。image.png

然后在回显的地方就能看到输的东西image.png
然后就可以拿到管理员密码,用户名admin登陆进去然后再在manager界面读取flag.php,用php://fileter读,就可以拿到flag。

CATALOG