PHP 中的评估和安全措施,创建 PHP 演示编辑器

Waq*_*hir 5 php security user-input eval

我知道 eval 是 PHP 中从输入执行 PHP 代码的函数。现在我想做一个类似W3Schools的编辑器。我可以做什么来保护从 POST 变量获得的 eval 代码。

$code = eval($_POST["phpusercode"]);
echo $code;
Run Code Online (Sandbox Code Playgroud)

我想做的是当用户创建这样的功能时

我想让用户能够在我的网站上编写自己的 PHP 代码,而不会让我的网站容易受到某种黑客攻击。

Sal*_*00m 4

eval评估代码,因此,正如 @sectus 在注释中所说,执行代码

例如:

eval ("echo 'Hello user'"); //This will execute echo 'Hello user'
Run Code Online (Sandbox Code Playgroud)

因此,就您的情况而言,我认为您不想执行您的用户代码,所以请具体化您的问题并更新它。

重要的:

  • eval强烈建议不要使用
  • 切勿在未清理参数的eval情况下与参数一起使用POST/GET

有用的链接:

当评估是邪恶的时候

避免SQL注入