pikachu文件上传,文件包含

一、File Inclusion(local)

1.查询第一个看看是什么情况

 2.仔细看看发现url有些有趣

 3.猜测有文件包含漏洞,于是试一试看看

在文件目录下放入木马

成功进入后台

 

 二、文件包含(remote)

1.点击进入查看页面

 url:http://localhost:8081/pikachu/vul/fileinclude/fi_remote.php?filename=include%2Ffile1.php&submit=%E6%8F%90%E4%BA%A4%E6%9F%A5%E8%AF%A2

这个地方对filename传参有了include的过滤,但可能存在ssrf漏洞。

http://xx.xx.xx.xx/pikachu/vul/fileinclude/fi_remote.php?filename=https://www.cnblogs.com/p201721420016/&submit=%E6%8F%90%E4%BA%A4%E6%9F%A5%E8%AF%A2

2.传参试试

 成功跳转了,但是并没有显示,也不知道为啥

三、不安全的文件下载

1.查看网页内容

 2、因为filename可以直接跳转,直接构造

既然可以直接通过filename读取文件,那就直接构造payload:

pikachu/vul/unsafedownload/execdownload.php?filename=../../../shengcheng.txt

 成功

四、client check

1、

2、那可以直接上传。

按照要求包装好一个假的gif,只是改了一下后缀

 

 上传成功了

 

 构造payload

http://your ip/pikachu/vul/unsafeupload/uploads/shengcheng.php?x=1

五、MIME type

 1.这一次并不是在前端进行验证。

 2、抓包后修改包内内容后上传:

这里只是加了一个文件类型的判断。

 3、同理:

六、getimagesize()

1、发现仍然没有前端的过滤,但是会判定是否为真的图片。

 提示里说是对图片的大小有判定,那我们可以尝试把木马藏在图片里上传

而且从之前上传成功的那一张来看,后端会重新命名你的照片,所以单纯修改文件后缀貌似是没有用的。

 上传成功,通过刚刚的文件包含漏洞进行

成功

原文地址:https://www.cnblogs.com/p201721420016/p/12082035.html