我正在编写一个旨在允许用户提供代码的协作项目.用户将能够扩展类,添加功能等,并将代码提交回服务器以便定期执行.
有没有一种安全的方法来执行用户的PHP代码?一种万无一失的消毒方法?无限循环怎么样?或者我应该提供不同的脚本语言?
DocumentRoot的JailRoot
SafeMode ON允许仅在特定目录上访问文件
使用每个USER MPM将系统
资源限制为apache进程
为memmory limit和max_execution_time设置安全的php.ini设置
正如Saggi Malachi指出的那样,这是非常实验性的,你必须监控服务器上的操作,并有后备szenarios,例如.cronjobs观看加载平均值,如果loadaverage高于阈值停止apache和sendmail.
其他好主意是编译自己的php并拒绝访问可能被用户"利用"的php函数.