文件上传实例

这里有个脑图觉得还不错:

 

 

下面实例都是在墨者学院靶场做的,几种常见的上传姿势

1.结合iis5.x/6.0解析漏洞上传文件

先上传一个asp文件,抓包看看返回结果是什么

 

由上图我们可以知道服务器是iis6.0,接下来我们利用iis6.0解析漏洞来上传我们的一句话,添加一个asp目录

 2.一句话木马图片

分析上图,先上传php文件,不允许,那么改下后缀名为png,还是不行,看来是对文件内容做了检查,做个图片马,上传

 

 

 菜刀连接

 

 3.绕过前端验证

先上传php文件

从上图可以看到上传的时候弹出一个弹窗,只让我们上传上面格式的文件,那么我们把我们的文件名后缀改成png,上传抓包,在包里将我们的文件再改回php文件

上图显示我们上传成功,那么最后就是菜刀拿shell了

4.修改Content-Type绕过

上传一句话抓包

从上图可以指看到,Content-Type字段是application/octet-stream,来到Repeater,将Content-Type: application/octet-stream改成Content-Type: image/jpeg

成功上传,菜刀连接,getshell

5.这种上传方式,挺刺激的。。。。。

没有任何可以上传的页面,但是页面显示的是有上传的地址的,所以扫描一下,或者可以猜一下路径

没有显示错误,说明这个目录下应该可以找到我们想要的的

猜一下上传目录,我一开始写的是upload.php,进入之后就直接跳转到upload1.php,并且提示无权访问,抓包看一下吧

下面就是无限的抓包重放,看返回包中有没有什么我们需要的东西

下图这个返回包中我们可以看到upload.php下一跳应该是upload_file.php,但是由于权限问题,不能进去

但是,forward之后就出现了上传界面,神奇啊,那就上传一句话

接下来只要知道绝对路径就可以上传我们的一句话了,这个cookie挺让我在意的,把它改成upload_file.php,go一下,返回包直接显示了上传路径,文件上传之后被重新命名了,命名规则也很简单:verify_当天日期_你上传的文件名,前面我们上传文件的时候,有个verify,它的值就在下面

 

 

成功getshell

 

posted @ 2019-04-22 13:36  爪爪**  阅读(377)  评论(0编辑  收藏  举报