2
クッキー値、ルート内の可変部分、クエリ引数などのデータは、安全でないものとして扱われ、特定の方法で処理されるべきですか? Flaskはすでに入力データをエスケープしているので、関数test(input_data)
に渡すのは安全ですか?リクエストデータは既にFlaskによってサニタイズされていますか?
クッキー値、ルート内の可変部分、クエリ引数などのデータは、安全でないものとして扱われ、特定の方法で処理されるべきですか? Flaskはすでに入力データをエスケープしているので、関数test(input_data)
に渡すのは安全ですか?リクエストデータは既にFlaskによってサニタイズされていますか?
Flaskは、生のHTTPリクエストから解析するだけでなく、データを要求することもありません。任意の関数が持つ制約を知る方法がありません。制約をチェックするのはあなた次第です。すべてのデータはデフォルトで文字列になります。 eval
またはexec
は使用しないでください。 SQLインジェクションを避けるには、データベースドライバのパラメータ化されたクエリを使用します。 Jinjaでテンプレートをレンダリングすると、デフォルトでHTMLで使用するためにデータがエスケープされます。
これは、コード実行を引き起こす可能性のあるコード(バイトコードまたはsthとして渡されたコード)があるかどうかわからないため、unicode/intが十分であれば、 intが必要です(ルール "Do not trust user input")。 「安全」とは、適切にエスケープ/サニタイズされているため、さらなる処理で安全です。 – LAdas
これはサニタイズされていませんが、通常は問題ではありません。渡されたものには「exec」を使用しないでください。また、raw SQL文では、入力のタイプと同じものを使用してください。 –
この質問に具体的に答えても意味がありません。無限にあります。 – davidism