首页  >  文章  >  后端开发  >  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