Files
codeql/python/ql/test/query-tests/Security/CWE-943-NoSqlInjection/flask_mongoengine_good.py
2026-03-04 13:11:38 +00:00

28 lines
621 B
Python

from flask import Flask, request
from flask_mongoengine import MongoEngine
from mongosanitizer.sanitizer import sanitize
import json
app = Flask(__name__)
app.config.from_pyfile('the-config.cfg')
db = MongoEngine(app)
class Movie(db.Document):
title = db.StringField(required=True)
Movie(title='test').save()
@app.route("/subclass_objects")
def subclass_objects():
unsafe_search = request.args['search']
json_search = json.loads(unsafe_search)
safe_search = sanitize(json_search)
return Movie.objects(__raw__=safe_search) # $ result=OK
# if __name__ == "__main__":
# app.run(debug=True)