需要一种安全的方法来执行外部代码

时间:2014-09-10 22:30:52

标签: php

我想知道是否有可能允许人们从我的网站编写和执行PHP代码而不使用" eval"由于风险。 我已经google了,我确实找到了一些答案,而不是我正在寻找的答案(call_user_func)。 这不是我要找的,因为它不允许人们运行完整的PHP脚本。

这是执行它的一小部分人,因此服务器负载不会成为问题。

编辑1:用户不应该破坏/删除文件; 用户应该能够创建完整的脚本。 用户应该能够运行HTML代码,但只要使用php标签就会触发php。

1 个答案:

答案 0 :(得分:2)

你可以围绕php编写自己的包装器进程,使用ptrace来控制子php进程的执行,以防止它打开文件句柄,连接到网络等。

这样,即使人们决定尝试在eval中使用恶意代码,系统调用也会在本机级别被阻止。