0

我需要处理将被写入由服务器执行的文件的不受信任的输入config.php,如下所示:

$config['key'] = "Value";

我想让它让用户可以提交一个可以写的表单config.php。将这个值存储在数据库中显然更有意义,但我不能这样做,因为这是一个遗留系统。

我找到了函数addslashesand serialize,但我不确定它们对于这个用例是否安全。我想我也可以使用hex2bin/bin2hex

我想到的另一个 hack 是使用 HEREDOC:

$x = <<<PASSWORD

untrusted input here" echo "BOOM!";

PASSWORD;

如果您无法更改配置变量的存储方式,那么在这种情况下进行的最佳方法是什么?

4

1 回答 1

1

Base64 内容。任何base64'ed都不可能是有效的PHP代码

于 2013-10-24T23:54:03.570 回答