zoukankan      html  css  js  c++  java
  • 文件上传实例

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

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

    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

  • 相关阅读:
    挑战程序设计竞赛 dp
    算法导论 动态规划
    算法导论第二章
    divide conquer
    时间戳
    bootstrap 针对超小屏幕和中等屏幕设备定义的不同的类
    jQuery中的Ajax
    怎么判断一个变量是Null还是undefined
    认识Ajax
    关于apache
  • 原文地址:https://www.cnblogs.com/xiaoqiyue/p/10749650.html
Copyright © 2011-2022 走看看