用于写入远程目录的安全性测试

时间:2009-11-23 10:35:23

标签: php security unix permissions

简短的问题:如何测试我的网站中的目录是否在世界其他地方实际可写(甚至在我自己的机器之外)?

上下文:

我运行这个托管服务提供商实施了一个奇怪的安全系统的网站。为了让PHP将文件写入(linux)服务器上的磁盘,目标目录应该具有每个人的写入权限。

对我而言,这似乎是一个巨大的安全漏洞(请注意,没有用户上传内容,只有我的PHP脚本生成文件),但我的主持人告诉我它安全,因为他们有其他(未指明的)安全措施保持世界不访问我的目标目录的地方。我持怀疑态度,所以我想确保一切都安全。

所以,我知道我的目录权限 - 我已经设置并测试了它们。我知道我的脚本可以写入该目录。现在我想确保我真的是唯一可以写入该目录的人,尽管已经给予每个人文件权限。

例如:是否有写入远程目录的PHP函数,如fopen('http://domain.tld/foo/evil-hack.php', 'w')?我已经测试了 并且它不起作用,但这并不能证明其他人不会找到其他方式。

1 个答案:

答案 0 :(得分:0)

php函数CHMOD是你的答案:

http://php.net/manual/en/function.chmod.php

添加fileperms();也可以为您提供帮助。