美文网首页
Flask-Jinjia2模板字符串过滤器

Flask-Jinjia2模板字符串过滤器

作者: 测试探索 | 来源:发表于2020-09-23 06:48 被阅读0次
    禁止转义过滤器-safe

    xss_test.py文件

    from flask import Flask,render_template,request
    
    app = Flask(__name__)
    
    @app.route("/xss",methods=["GET","POST"])
    def xss():
        text = ""
        if request.method == "POST":
            text = request.form.get("text")
        return render_template("xss.html",text = text)
    
    
    if __name__ == '__main__':
        app.run(debug=True)
    
    xss.html文件路径

    xss.html文件

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
        <form method="post">
            <textarea name="text"></textarea>
            <input type="submit" value="提交">
        </form>
        {{ text | safe}}
    
    </body>
    </html>
    

    运行flask程序后,在输入框输入<script>alert("hello attack");</script>


    image.png

    如果xss.html代码里没有safe禁止转义的过滤器,会被转义

    image.png

    相关文章

      网友评论

          本文标题:Flask-Jinjia2模板字符串过滤器

          本文链接:https://www.haomeiwen.com/subject/opknyktx.html