如何在Apache中访问public_html的父目录?



我记得前一段时间读到有人如何从网站访问您的计算机文件系统。我想知道怎么做,这样我就可以测试并防止它发生。

通过XAMPP在Windows上运行Apache 2.4

我的虚拟主机设置如下:

<VirtualHost *:80>
    ServerName local.scrap
    DocumentRoot "D:/Dropbox/www/scrap/public_html/"
    <Directory "D:/Dropbox/www/scrap/">
    Order allow,deny
    Allow from all
    Require all granted
    </Directory>
    ErrorLog "D:/Dropbox/www/scrap/logs/error.log"
</VirtualHost>

scrap/中有index2.html, scrap/public_html/中有index.html

hosts设置为127.0.0.1 local.scrap

如果我输入URL http://local.scrap/,我得到index.html。如果我输入URL http://local.scrap/../index2.html它会被重定向到http://local.scrap/index2.html

为什么……/URL重定向到DocumentRoot路径?

通常非恶意用户代理会解析…/在它连接服务器之前,在URL中。但即使没有这种情况,web服务器也不允许在上下文根目录之外进行这种目录遍历。

您需要使用telnet/netcat/s_client进行测试才能确定

如果网站应用程序代码中存在目录遍历或LFI漏洞,那么这确实是可能的。

此外,一些web服务器有目录遍历漏洞。但是,Apache的当前版本在这方面没有已知的弱点。

相关内容

  • 没有找到相关文章