我正在用Python Flask编写我的应用程序后端。作为注册过程的一部分,我有一个表单,它将新用户的信息发送到我的后端,然后将其添加到我的MongoDB数据库中。
我在这个世界上是个新手,从来没有写过需要保护的东西。
我的Python代码如下所示:
from flask import Flask, request
app = Flask(__name__)
@app.route('/register', methods=['POST'])
def register():
username = request.form['username']
password = request.form['password']
有没有一个Python库可以为我清理request.form['username']
和request.form['password']
字段?可以让我免受XSS和数据泄露的威胁?
先谢谢了!
2条答案
按热度按时间bfrts1fy1#
我过去用过Python漂白剂。https://github.com/mozilla/bleach
我想这对你的案子可能有用。
2exbekwf2#
避免注入的最好方法之一是使用ORM并避免原始查询。对于MongoDB,它可以是flask_mongoengine或motor。它们都提供了跳出框的功能(除了某些情况)。
但是您应该注意传递给查询的变量类型。
例如,
当
value
是str
或int
时,一切都很好,但如果它看起来像{'$gte': ''}
呢?所以强烈推荐flank-wtf或棉花糖来避免这样的问题。