网上的wp已经很多了,但wp普遍很简略。我尽量写的详细一点。
一、WEB
滴~
拿到题目后首先右键查看源代码,发现图片是以base64传送的
而且看url发现里面应该是包含了文件名,并且用了某个编码。测试过后是转16进制ascii码后两层bases64
(解码工具是burpsuite)
用同样的规则编码index.php,为TmprMlpUWTBOalUzT0RKbE56QTJPRGN3,访问并查看源代码,内容就是index的源码了,再用base64解码。
在源代码里出现一篇文章,打开后发现是一篇关于echo的,我在这里绕了很长时间,以为要用到echo的漏洞。
但正解是那个日期,要看那个日期的文章。是关于swp的:
所以访问http://117.51.150.246/practice.txt.swp,可看到里面内容:
f1ag!ddctf.php 通过index代码,可以看到对文件名做了过滤,只能是数字和字母。这个感叹号会被去掉。但还有一句 $file = str_replace("config","!", $file); 这是为了防止读取config,会把config换成!。但这正好满足需求,访问f1ag!ddctf.php 即可。但直接访问是空白的,所以用同样的方法读源代码
extract($_GET);这里是一个变量覆盖漏洞,让k和uid为空就可以了。
或者按正常使用,把k指向一个文件,uid和文件内容相同,也能读出flag:
之前的swp文件这里可以现成使用,没必要自己搭个网站让他读。。有些wp就是自己现搭的网站,算是很鬼畜了。。
reverse
【待续】