php - URL 安全漏洞修复 '../'

标签 php .htaccess security url-routing

我遇到了 PHP 中的 URL 路由问题。

在我的本地主机上,我有两个项目目录:

    1. 项目一:
      • index.php
      • 其他目录
    1. 黑客脚本:
      • index.php
      • database_dump.php

当我必须访问我的 project_one 时,我会使用 localhost/project_one 这个工作正常。但是当我在这个 localhost/project_one/../../hacking_script 中输入时,它打开了 localhost/hacking_script/index.php 文件。

所以如何预防,我没有任何想法。我可以使用 .htaccess 来防止它吗?如果是那么怎么办?

最佳答案

如果您在谈论路由,那么您就是在谈论这个:

Request -> Router -> GetController -> ExecuteAction

这意味着 GetController 很可能会includerequire 一些文件...有一部分,你需要确定,它只需要允许的文件。例如 whitelist (这是推荐的方式)。或者确保不允许使用 ../ 等特殊字符。

关于php - URL 安全漏洞修复 '../',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36980771/

相关文章:

为 JVM 指定 Java.Security 文件的 Java 参数

php - Dreamweaver PHP 登录注销有多安全?

linux - 应用程序哈希客户端的 MAC 地址和计算机名称以及其他计算机属性以创建唯一 ID

php - 为 seo 优化和 google 引用重写 url

php echo div 类不工作

apache - URL 后面的双斜杠

apache - 仅在 .htaccess 中的特定时间允许来自特定引用者的访问

php - 带 www 和不带 www 的网站在 codeigniter 中对 baseurl 的作用不同

php - mysql 数据库插入将所有 ID 更改为 4294967295

php artisan test 仍然加载 .env 而不是 .env.testing