变量1WEB 未解决

分数: 15 金币: 1
题目作者: harry
一  血: dotast
一血奖励: 1金币
解  决: 20776
提  示:
描  述:
题目变量1
评论
xianyu520 1年前

我这里用的双写斜杠出来的 //?args=GLOBALS

回复 1
jetxi 10月前

我也是,单斜杠GLOBALS交不过去

回复 0

简子旼 1年前

php全局变量为GLOBALS,打印该变量可以显示该php中的所有变量值,如果需要单个变量GLOABALS['single']

回复 0

lwgzs 1年前

不懂全局变量

回复 0

zsq981328 1年前

为什么出来了flag{*********}但是不是答案

回复 0

Ecahy 1年前

$GLBALS可以获取全局变量,当args为GLBALS时,网站就会打印出所有的变量

回复 1

kanderun 1年前

利用GLOBALS获取所有全局变量: 通过传递args=GLOBALS,eval会执行var_dump($GLOBALS);,输出所有全局变量。在返回的结果中查找包含flag的变量,例如$flag。 Payload: ?args=GLOBALS

回复 0

admin43r4r 1年前

关键在var_dump($$args),$$a这样的相当于先取$a的值,再以这个值作为变量,var_dump相当于直接读取$$args的内容并输出,题目提示了flag就在其中一个变量里,但是不知道这个变量的名字,所以知道了名字后就可以获取flag,$GLOBALS数组显示所有全局变量,包括可能包含flag的变量,就尝试让args=$GLOBALS就可以读取全部变量的内容,包括flag.

回复 5

HK1ng 1年前

本来以为是:无参数RCE,这里又比较狠,只能是字母数字或者下划线,这样的话,基本上限制了函数使用的可能,又看到$$args表示将$args的值作为变量名来访问,于是就有$GLOBALS,这个是包含所有全局变量的数组。构造payload就拿到了flag

回复 0

zhwen 1年前

代码审计,正则匹配变量args只能包含字母数字下划线,后面跟着打印变量的代码,使用全局变量GLOBALS即可

回复 0

贝利亚 1年前

直接在端口号后面写/?args=GLOBALS就行了

回复 10

WriteUp

image
harry

1 金币

评分(17)

解题动态

Violent42688 攻破了该题 8小时前
suming2026 攻破了该题 10小时前
qiqigt 攻破了该题 11小时前
qazqaz251 攻破了该题 14小时前
cccsssqqq 攻破了该题 15小时前
岸环线南追玉兔 攻破了该题 16小时前
稻草人888 攻破了该题 17小时前
getflag1 攻破了该题 20小时前
QAZQAZ250 攻破了该题 20小时前
murder 攻破了该题 21小时前
l乐e 攻破了该题 21小时前
猪猪侠83 攻破了该题 21小时前
chihaya anon 攻破了该题 22小时前
luo_eve 攻破了该题 22小时前
zuo 攻破了该题 22小时前
Jeery 攻破了该题 1天前
耶时候搜索 攻破了该题 1天前
Ray66666666 攻破了该题 1天前
Dxmax 攻破了该题 1天前
chzxcvbnm 攻破了该题 1天前
问题反馈