PHP是语法有线行为

时间:2013-12-25 12:27:07

标签: php execution

今天,我看到了PHP的一些错误语法。

$x="{${phpinfo()}}";

尝试执行上面的代码,Bammm你会看到phpinfo()正在执行,我的眉毛抬起了。但我已将$x变量声明为字符串。

查看易趣中发现的此漏洞PHP代码。我想知道这是如何执行的。

http://www.secalert.net/2013/12/13/ebay-remote-code-execution/

2 个答案:

答案 0 :(得分:4)

这并不奇怪。这就是它的意图。 phpinfo()将在任何情况下输出数据。如果要捕获它的输出,请使用ob_(输出缓冲)函数:

ob_start();
phpinfo();
$data = ob_get_contents();
ob_end_clean();
//var_dump($data);

您的问题与语法无关。

答案 1 :(得分:0)

PHPinfo是一个以HTML格式返回有关服务器上PHP环境的信息的函数(有关详细信息,请参阅http://us2.php.net/phpinfo)。要运行PHPinfo,必须使用文本编辑器将以下代码保存在计算机上的文件中:

phpinfo();