以 777 权限写入目录
Writing to directory with 777 permission
通常说如果一个目录有777权限,全世界都可以写入它,因此不支持。
假设我有像 abc.com/DIR
这样的域
DIR 是目录并具有 777 权限,如何在没有 FTP 访问权限的情况下写入该目录?
先看看777
权限是什么:
777 权限
第一个数字分配给所有者,第二个数字分配给组,第三个数字分配给其他人。所以对于一个777
权限的文件,任何人都可以读,写,执行。
现在回答你的问题
如果您向文件夹提供 777
权限,这意味着每个人都可以读取、写入和执行。因此,有人很容易创建一个文件上传程序并上传一个脚本(如果它不是 htaccess 安全的)并通过简单的 URL.
执行。
例如
我写了一个程序并上传了一个 php
文件,用于空目录或添加一些用于发送 spam
电子邮件的脚本,然后你的服务器将被列入黑名单。
文件调用应该像example.com/dir/myfile.php
There 是一个很好的例子,为什么不应该使用 777
权限。
为 others 添加写入权限的主要问题是同一台机器上的任何进程 运行ning 都可以写入此目录。
默认情况下,apache、nginx、...不允许将文件上传到服务器,假设您的服务器是这样配置的,那么您可能认为 others[=25] 的写入权限=] 可能不是问题,但事实并非如此。
假设您有一个应用程序,它本身不执行或评估任何脚本,但以某种方式根据某些外部输入写入文件,那么有人可能会找到一种方法来控制该应用程序写入硬盘的内容。如果应用程序将 运行 有自己的用户并且不能在任何地方写入,这将不是问题。
但是现在有一个文件夹对 其他人 具有写入权限,所以这个应用程序可以在那里写入,例如在此目录中放置一个 php 文件。文件放在那里后,它可以 evaluated/executed 使用 apache.
一个经验法则是 运行 以他们需要的最少权限进行处理,目录的权限也是如此。如果 Web 服务器只应读取文件,则将这些文件的所有者设置为与 Web 服务器不同的用户,并且仅使用组权限使它们可读。
通常说如果一个目录有777权限,全世界都可以写入它,因此不支持。
假设我有像 abc.com/DIR
DIR 是目录并具有 777 权限,如何在没有 FTP 访问权限的情况下写入该目录?
先看看777
权限是什么:
777 权限
第一个数字分配给所有者,第二个数字分配给组,第三个数字分配给其他人。所以对于一个777
权限的文件,任何人都可以读,写,执行。
现在回答你的问题
如果您向文件夹提供 777
权限,这意味着每个人都可以读取、写入和执行。因此,有人很容易创建一个文件上传程序并上传一个脚本(如果它不是 htaccess 安全的)并通过简单的 URL.
例如
我写了一个程序并上传了一个 php
文件,用于空目录或添加一些用于发送 spam
电子邮件的脚本,然后你的服务器将被列入黑名单。
文件调用应该像example.com/dir/myfile.php
There 是一个很好的例子,为什么不应该使用 777
权限。
为 others 添加写入权限的主要问题是同一台机器上的任何进程 运行ning 都可以写入此目录。
默认情况下,apache、nginx、...不允许将文件上传到服务器,假设您的服务器是这样配置的,那么您可能认为 others[=25] 的写入权限=] 可能不是问题,但事实并非如此。
假设您有一个应用程序,它本身不执行或评估任何脚本,但以某种方式根据某些外部输入写入文件,那么有人可能会找到一种方法来控制该应用程序写入硬盘的内容。如果应用程序将 运行 有自己的用户并且不能在任何地方写入,这将不是问题。
但是现在有一个文件夹对 其他人 具有写入权限,所以这个应用程序可以在那里写入,例如在此目录中放置一个 php 文件。文件放在那里后,它可以 evaluated/executed 使用 apache.
一个经验法则是 运行 以他们需要的最少权限进行处理,目录的权限也是如此。如果 Web 服务器只应读取文件,则将这些文件的所有者设置为与 Web 服务器不同的用户,并且仅使用组权限使它们可读。