首頁  >  文章  >  後端開發  >  discuz这段代码如何理解

discuz这段代码如何理解

WBOY
WBOY原創
2016-06-23 13:44:21928瀏覽

这段代码的作用是为了啥
if (isset($_REQUEST['GLOBALS']) OR isset($_FILES['GLOBALS'])) {
exit('Request tainting attempted.');
}


回复讨论(解决方案)

Request tainting attempted 试图请求改变

即传入的参数不能用 GLOBALS 做变量名

Request tainting attempted 试图请求改变

即传入的参数不能用 GLOBALS 做变量名


为啥不让GLOBALS做变量名呢,难道作了会怎么样吗?

那你就要看他的代码了
由于 $GLOBALS 是超全局变量,如果被 extract 覆盖了,就全完了

那你就要看他的代码了
由于 $GLOBALS 是超全局变量,如果被 extract 覆盖了,就全完了



还是木理解,能举一个小粟子吗

$x = 123;$a = array('x' => 'abc');extract($a);echo $x;
abc
$a 被改变了

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn