【发布时间】:2021-03-18 16:38:27
【问题描述】:
这听起来像是一个愚蠢的问题,而我这样做的方式目前并不安全,所以我希望能够提高我的安全性并减少我被恶意使用的机会。
我有一个“管理面板”。我可以添加/删除用户并任命他们为管理员等。我可能让他们拥有的权限之一是编辑文件。这是一个问题,因为我将密码存储在文件中并通过.htaccess 限制对它们的 Web 访问(托管服务提供商的 MySQL 使用率很低)。
因此,我提供了一个文件黑名单。但是,如果人们将 PHP 文件编辑为 include() 或 require() 登录处理文件并获取 root 帐户的会话密钥(这是我的登录处理脚本可以做的),然后劫持它并拥有root权限。
因此我想限制include/require的访问。
我想到的第一个想法只是简单地检查它是否需要/在他们编辑的文件的代码中包含该文件,但这似乎太“冒险”了。
然后,我想知道是否可以将某些文件/某些文件的 include/require 访问限制为仅特定 php 文件列表(例如需要该登录处理程序文件的登录/控制面板文件)。
如果不是,我是否应该完全取消文件编辑功能,因为即使我确实知道如何限制访问,这似乎也很冒险。
【问题讨论】:
-
“我是否应该完全取消文件编辑功能” 是的。 Web 服务器不应该对它所服务的文件有写访问权,更不用说远程用户了。这只是在问问题。
-
@AlexHowansky 我很害怕。此外,如果用户没有正确编程文件,也会导致错误。
-
也许你可以参加会议?
-
@nice_dev 是的,但我已经将其设置为使用 cookie:/ 无论如何它都可以正常工作。
标签: php security authentication file-handling