例题:
关于extract的解释:
paylo
所以当传入的变量名字相同,则会覆盖原来的变量
根据题意我们传入flag,shiyan使两者值相等即可:
payload:php?shiyan=&flag= 这里传入空
02 错误类型归纳
不严谨的编程手法。
官网也有提示,严谨使用此函数。
修复方案
extract($_GET);
改为
extract($_GET,EXTR_SKIP); #禁止覆盖
或者
extract($_GET,EXTR_PREFIX_SAM,"usr"); #冲突变量,添加前缀
参考资料
感谢PaintChen :https://www.cnblogs.com/goodswarm/p/10995256.html
感谢 菜鸟教程