Php 是否可以使用URL执行代码?

Php 是否可以使用URL执行代码?,php,security,Php,Security,例如,有人可以通过URL执行代码吗 http://localhost/page.php?code=echo 'something'; 如果是,那么该如何做以及如何防止这种情况发生?如果服务器上的某个东西将URL中的数据放在某个可能被视为代码的位置(例如,在eval语句、SQL查询或HTML文档中),这是可能的 防御措施都是针对您放置数据的位置的,但通常涉及到转义 另请参见和。在四处查看了一会儿之后,我发现eval是一个函数,它能够执行GET中提供的任何php代码,就像上面的示例一样,我使用以下

例如,有人可以通过URL执行代码吗

http://localhost/page.php?code=echo 'something';

如果是,那么该如何做以及如何防止这种情况发生?

如果服务器上的某个东西将URL中的数据放在某个可能被视为代码的位置(例如,在
eval
语句、SQL查询或HTML文档中),这是可能的

防御措施都是针对您放置数据的位置的,但通常涉及到转义


另请参见和。

在四处查看了一会儿之后,我发现eval是一个函数,它能够执行GET中提供的任何php代码,就像上面的示例一样,我使用以下代码对其进行了测试

<?php
$code = $_REQUEST['code'];
eval($code);
?>


你是说执行PHP代码?除非您的PHP脚本能够很好地解析和处理查询字符串,否则无法执行。在哪里执行代码?在服务器上?在客户端上?您可以选择javascript。检查此项:如果服务器端代码严重损坏,则可以。但是你必须真的试着犯那种错误。@Juhana-如果PHP是意外执行的,很难犯那种错误,但是很容易允许JavaScript或SQL执行(W3学校有很多教程教你如何执行)。