[GKCTF 2021]easycms
url+admin.php,我们能够进入登录页面
题目提示了密码是五位数弱密码
我们考虑admin/admin,admin/12345,实在不行再去fuzz
但admin/12345成功登录了进去
登录进去以后有两种方法
一. 任意文件下载
我们在设计的主题里打开自定义导出主题
我们查看下载链接
1 | http://34c1d27a-d972-49a5-9ae5-0cbf5d2b5751.node5.buuoj.cn:81/admin.php?m=ui&f=downloadtheme&theme=L3Zhci93d3cvaHRtbC9zeXN0ZW0vdG1wL3RoZW1lL2RlZmF1bHQvMS56aXA= |
发现后面那串是base64编码
我们解码得到文件的绝对路径
1 | /var/www/html/system/tmp/theme/default/1.zip |
我们可以把路径修改为/flag,就能直接把flag下载下来
1 | /flag |
payload
1 | http://34c1d27a-d972-49a5-9ae5-0cbf5d2b5751.node5.buuoj.cn:81/admin.php?m=ui&f=downloadtheme&theme=L2ZsYWc= |
得到flag
二、文件上传
在设计的主题的自定义的首页的编辑里选择php源代码
输入命令执行语句,但保存是提示我们要先创建 /var/www/html/system/tmp/hjkv.txt文件
我们在设计的组件的素材库随便上传一个txt文件
再点击编辑,修改它的名称为../../../../../system/tmp/hjkv
然后回去编辑php代码
在主页面的头部发现flag