Php URL安全漏洞修复'/';
我在PHP中遇到了一个URL路由问题 在本地主机中,我有两个项目目录:Php URL安全漏洞修复'/';,php,.htaccess,security,url-routing,Php,.htaccess,Security,Url Routing,我在PHP中遇到了一个URL路由问题 在本地主机中,我有两个项目目录: 项目一: index.php 其他董事 黑客脚本: index.php database_dump.php 当我必须访问我的project\u one时,我使用localhost/project\u one这项工作是正确的。但是当我在这个localhost/project\u one/./../hacking\u script中输入内容时,它是打开的localhost/hacking\u script/i
- 项目一:
- index.php
- 其他董事
- 黑客脚本:
- index.php
- database_dump.php
localhost/project\u one
这项工作是正确的。但是当我在这个localhost/project\u one/./../hacking\u script
中输入内容时,它是打开的localhost/hacking\u script/index.php
文件
所以如何预防,我不知道。我可以使用.htaccess来阻止它吗?如果是,则如何?这是URL在浏览器中的工作方式。如果您有此问题的网站:
http://stackoverflow.com/questions/36980771
如果你尝试:
http://stackoverflow.com/users/../questions/36980771
这将重定向到同一页。这是设计状态如果你说的是布线,你说的是:
Request -> Router -> GetController -> ExecuteAction
这意味着
GetController
最有可能包含或需要一些文件。。。有一部分,你需要确保,它只需要允许的文件。例如,使用a(这是推荐的方式)。或者确保不允许使用像。/
这样的特殊字符。你试过我的答案了吗?是的,当我键入localhost/project\u one/./../hacking\u script
时,它会重定向到localhost/hacking\u script/
而不是进入我的project\u one
index.php文件显示完整的.htaccess
和index.php
或路由脚本。我只有普通的index.php
,没有使用.htaccess
在这个项目中,URL就是这样工作的。没有什么可以阻止它。这是预期的行为。不是通过行为,而是如果你黑了一些你的项目project\u one
主目录www
&你创建了hacking\u script
这样的目录,然后你放了一些代码,比如var\u dump($\u SESSION)
或var\u dump($\u COOKIE)
然后它还输出整个会话或在project\u one中设置的cookie值
我完成了那件事,你说得对。!!。Ty代表您的时间:)可能是stackoverflow的设计状态。但事实并非如此,每种软件都是如此。想象一下http://example.com/../php/php.ini
将以某种方式路由到require('../php/php.ini')
@ChristianGollhardt,这取决于具体情况。实际上,这是我的第一个答案。然后我详细理解了这个问题,并改变了我的答案