记录网站:【CTF_Web:php中的变量覆盖问题 - CSDN App】http://t.csdnimg.cn/LAmY1
变量覆盖函数:parse_str() 、extract()、import_request_variables()
1.什么是变量覆盖
变量覆盖基本都来自于各种函数(parse_str() 、extract()、import_request_variables()等)对用户输入取值时的问题,当用户对已经存在的变量再次通过
各种函数赋值时,将会触发变量覆盖,修改之前定义的值,这类问题需要严格定义用户可以输入的部分,或值避免使用存在此类问题的函数。
2.parse_str() 函数
原型:parse_str(string,array)
定义和用法:parse_str() 函数把查询字符串解析到变量中。
如果未设置 array 参数,由该函数设置的变量将覆盖已存在的同名变量。
php.ini文件中的 magic_quotes_gpc设置影响该函数的输出。如果已启用,那么在 parse_str()解析之前,变量会被 addslashes()转换。
例子:
3.extra ...