我记得前一段时间读到有人如何从网站访问您的计算机文件系统。我想知道怎么做,这样我就可以测试并防止它发生。
通过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的当前版本在这方面没有已知的弱点。