Web.config上写入权限的安全问题

问题描述 投票:1回答:1

我目前在IIS7.5服务器上运行了一个PHP站点。

我在web.config中使用IIS的内置URL重写工具。

我的CMS管理员能够允许用户编写自己的重写。因此,我用PHP编写的管理工具需要为IUSER编写修改权限,以便PHP修改文件。但是我认为这可能不是安全的好习惯所以我决定将重写移动到web.config引用的rewrite.config文件中。然后我给重写文件而不是web.config赋予写/修改权限。

唯一的问题是IIS缓存外部重写文件,除非缓存web.config的上次修改日期,否则不会重新加载它。我可以手动强制服务器重新加载我的rewrite.config文件,方法是在文本编辑器中打开web.config,添加空格或者其他内容然后单击“保存”,然后服务器会注意到上次修改日期已更改,然后重新加载重写文件随着新的重写。

我不能永远继续这样做,我需要我的管理工具,允许用户添加自己的重写,而不必在重写生效之前打电话给我在web.config中进行更改。

我了解到我可以在web.config文件中调用PHP中的touch功能,这解决了我的问题,因为它更改了web.config文件中的上次修改日期。但是,为了使触摸工作,PHP需要IUSER具有写入权限,但不能修改权限。

所以最后我的问题是......安全明智,是否可以将带有IUSER权限的web.config保留为读写但不能修改?或者这仍然是一个安全问题。

如果是这样,我为这个网站创建了哪些漏洞?而且,我怎样才能改变自己的做法,不让自己面对这些漏洞呢?

php iis-7 url-rewriting web-config security
1个回答
0
投票

回答我自己的问题。最好避免给web.config赋予I_USER权限。我们最终重写了我们的代码,不再需要这个。

© www.soinside.com 2019 - 2024. All rights reserved.