我想知道我的架构是否构成安全风险。 细节:
整个网站不是ROOT所有,但仍然使用的APACHE用户有一些相当先进的权限。
我有一个文件夹“user_files”,可以容纳任何种类的用户文件。 例如,一个ksh unix文件。
我的php.ini禁用了exec phpfunction(以及其他一些敏感function)
我的问题很简单,但有两个方面:
你禁用php的exec函数可能有助于lockingphp脚本调用其他脚本,比如你描述的ksh脚本。 但是,除非你禁止用户上传php脚本,否则他们可能会调用php的破坏性函数(除非你禁用了所有这些函数)。
如果你可以禁止所有的dynamic脚本被apache的users_files目录解释,你可能会更安全,但是禁用你想要的用户的一些function。
根据您的发行版本以及您想要安装和维护的软件,我可以考虑一个选项。
启用Apache的suEXECfunction,所以任何非php和其他mod_language脚本运行在另一个用户帐户下。 通过一个cgi界面使用php,如果你能得到php-fpm,就可以使一些脚本作为一个单独的用户运行。