Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Security 禁用对web服务器上目录中所有文件的分析_Security_Apache_File Upload_Execution - Fatal编程技术网

Security 禁用对web服务器上目录中所有文件的分析

Security 禁用对web服务器上目录中所有文件的分析,security,apache,file-upload,execution,Security,Apache,File Upload,Execution,可以告诉Apache服务器不要解析给定目录中的任何文件吗 例如,如果我想创建一个文件夹(所有上载都位于该文件夹中),并且我想阻止对这些文件进行解析。将上载目录保留在web根目录之外。无论如何,这通常是更好的安全性。如果您需要允许http下载访问上传的文件,那么您可以通过脚本来实现 或者,请确保上载脚本更改文件权限以删除执行权限。(例如,chmod 0644或chmod-x)每当您将文件上载到文件夹中时,在上载后将文件权限设置为仅读取而不执行..但如果我需要给用户卸载该文件夹的能力?@Rogach

可以告诉Apache服务器不要解析给定目录中的任何文件吗


例如,如果我想创建一个文件夹(所有上载都位于该文件夹中),并且我想阻止对这些文件进行解析。

将上载目录保留在web根目录之外。无论如何,这通常是更好的安全性。如果您需要允许http下载访问上传的文件,那么您可以通过脚本来实现


或者,请确保上载脚本更改文件权限以删除执行权限。(例如,
chmod 0644
chmod-x

每当您将文件上载到文件夹中时,在上载后将文件权限设置为仅读取而不执行..

但如果我需要给用户卸载该文件夹的能力?@Rogach-我的最后一次编辑回答了您的问题。您可以使用PHP(或类似的)脚本读取文件的内容并将其返回给访问者。它已经不是可执行文件,但apache仍然可以读取并解析其中包含的PHP,从而允许攻击者执行错误代码。@Rogach,apache通常只解析具有特定文件扩展名的文件中的PHP(例如,php、.php5)。如果您的上载脚本确保文件不会以这些扩展名结尾,则apache将不会尝试以PHP的形式执行。@qbert220-我知道,而且我也知道有很多方法可以绕过它。我只是在寻找一种方法来禁止解析给定目录中的任何文件。@Rogach-将您的上载目录移出web根目录您可以重写.htaccess文件中的apache处理程序,但您需要知道apache配置文件中配置了什么。如果更新了apache配置,则需要相应地更新.htaccess。