刷题笔记:[XDCTF 2015]filemanager


前言

关键字:[二次注入]

题解

试了半天不行,原来/www.tar.gz有源码泄漏

感觉像是二次注入+错显

试了下,原来不是。

1.构造文件名为

',extension='',filename='x.jpg.jpg

然后上传

2.重命名

使得sql语句变为

update `file` set `filename`='x.jpg', `oldname`='',extension='',filename='x.jpg' where `fid`={$result['fid']}

这样文件名为x.jpg的extension就为空了。

3.上传shell

当下情况是,有个x.jpg.jpg的文件,而数据库里有行filename=x.jpg, extension=''的数据,所以需要重新上传个x.jpg

4.重命名

在这,取的是x.jpg本地文件,数据库取的是filename=x.jpg, extension=''的数据而非刚刚新上传的数据。

因为extension为空,就不会再拼接后缀名了。

连接,结束。

参考链接

https://blog.csdn.net/qq_36618918/article/details/107768282


文章作者: 巡璃
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 巡璃 !
评论
  目录