如何编写一个简单的PHP小提琴来安全地执行PHP代码

时间:2013-06-09 21:01:10

标签: php

我想为编程教程网站编写一个简单的PHP小提琴

Code Academy网站类似

示例 Code Academy PHP Fiddle Example

我想过使用Code Mirror作为文本编辑器

如何执行用户安全编写的PHP代码?

我尝试在他们的编辑器中使用file_put_contents()和file_get_contents

它有效:)是安全的!!

我无法使用runkit之类的扩展程序 因为我在共享主机上:(

2 个答案:

答案 0 :(得分:0)

简短的回答:你做不到。您需要某种沙箱,这将比您在共享主机上获得更多的系统访问权限。您需要使用自己的沙盒PHP可执行文件设置自己的主机才能实现此目的。

如果你有,那绝对不安全。

答案 1 :(得分:0)

我认为最安全的方法是编辑PHP源代码并删除最危险的函数,编译它并从真正的PHP运行这个新的PHP环境。

解析用户输入并发送到eval在我看来是一个安全漏洞。你将无法检测到像

这样的危险语句
$a = 'ma';
$a .= 'il';
{$a}(...);