文件上传安全性 - chmod执行限制无效

时间:2011-02-02 22:10:06

标签: security unix executable chmod

在Web应用程序中,我有一个上传文件夹,其中存储了所有用户的文件,我需要消除执行它们的可能性。

如维基百科所示:

  

chmod -R a-x + X目录
  删除目录树中所有文件的执行权限,同时允许目录浏览。

但是在成功将这个应用到上传文件夹之后,我为了测试目的放置了所有包含的php,perl和python脚本(我怀疑所有其他类型的可执行文件)在我打印其地址时执行浏览器。

为什么会发生这种情况,我该怎么做才能解决这个问题?

1 个答案:

答案 0 :(得分:2)

perl,php和python解释器将很乐意执行传递给它们的输入文件,无论是否打开输入文件的执行权限位。 (上 另一方面,如果文件有一个shebang行指定要使用哪个解释器, 执行权限将得到尊重。但情况可能并非如此 你的情况。)

您必须通过配置Web服务器来解决此问题(限制 它认为可执行的目录),而不是在文件系统级别。

如果您正在使用Apache,您可能希望查看ScriptAlias指令, 无论是在全局配置还是本地.htaccess文件中,as described here