DVWA-4.3 File Inclusion(文件包含)-High-利用file协议绕过防护策略

 
更多

High Level

查看源码

<?php

// The page we wish to display
$file = $_GET[ 'page' ];

// Input validation
if( !fnmatch( "file*", $file ) && $file != "include.php" ) {
    // This isn't the page we want!
    echo "ERROR: File not found!";
    exit;
}

?>

fnmatch() 函数根据指定的模式来匹配文件名或字符串。

可以看到,High级别的代码使用了fnmatch函数检查page参数,要求page参数的开头必须是file,服务器才会去包含相应的文件。

漏洞利用

High级别的代码规定只能包含file开头的文件,看似安全,不幸的是我们依然可以利用file协议绕过防护策略file协议其实我们并不陌生,当我们用浏览器打开一个本地文件时,用的就是file协议,如下图。

构造url

http://172.16.134.26/dvwa/vulnerabilities/fi/?page=file:///D:/software/wamp/www/dvwa/php.ini

成功读取了服务器的配置文件

至于执行任意命令,需要配合文件上传漏洞利用。首先需要上传一个内容为php的文件,然后再利用file协议去包含上传文件(需要知道上传文件的绝对路径),从而实现任意命令执行。

 

参考:https://www.freebuf.com/articles/web/119150.html

打赏

本文固定链接: https://www.cxy163.net/archives/4911 | 绝缘体

该日志由 绝缘体.. 于 2020年05月06日 发表在 未分类 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: DVWA-4.3 File Inclusion(文件包含)-High-利用file协议绕过防护策略 | 绝缘体
关键字: , , , ,

DVWA-4.3 File Inclusion(文件包含)-High-利用file协议绕过防护策略:等您坐沙发呢!

发表评论


快捷键:Ctrl+Enter