Django Rest Frameworkを使用して開発されたREST APIがあります。 POSTリクエスト(データベースに格納される前)のデータを文字列でエスケープしなければならないのか、DRFはすでにそれをしているのだろうかと思います。 私はDjangoがいくつかのautoescapingをしていることは知っていますが、それがDRFの場合も同様です。Django REST文字列エスケープ
0
A
答えて
0
ユーザー入力をエスケープするは、XSS攻撃に対して1つの優れた防御策を提供します。通常は、レンダリングの時点で行われ、データが公開される時点では行われません。たとえば、Djangoのサーバー側のテンプレートでは、ORMではなくテンプレートで処理されます。これにより、開発者はニーズに基づいてデータをどのようにレンダリングするかを選択できます(一部のデータはマークダウンすることがあります)。
彼らは生のHTMLをレンダリングしたい場合、いくつかのクライアント側のフレームワークを見てみると、彼らデフォルトでは、すべてのエスケープ出力、および力の開発者が明示的に宣言するためには:
- が反応:SetDangerouslyHTML
- 角度2:[innerHTML]
- ヴュー:v-html
私がAPIになく、APIの消費者にこれを強制しようとしていないお勧めします。
関連する問題
- 1. エスケープNSDateFormatter文字列
- 2. 文字列REST
- 3. DataWeave文字列のエスケープ文字
- 4. 文字列エスケープ文字の補間
- 5. エスケープ= java文字列の文字
- 6. 文字列のエスケープ文字をエスケープできません
- 7. Mavenマップのエスケープ文字列
- 8. SBJsonとエスケープ文字列。
- 9. Ormliteエスケープ文字列メソッド?
- 10. 文字列エスケープ変換vb.net
- 11. エスケープSQL文字列Javaで
- 12. URLエスケープMFC文字列
- 13. AndroidエスケープJavaScript文字列
- 14. MySQLのエスケープ文字列。
- 15. エスケープ文字列内のRegExp.lastMatch($&)
- 16. SQL文字列エスケープ質問
- 17. CodeIgniterのエスケープ文字列
- 18. SQL Serverエスケープ文字列
- 19. Tclの文字列エスケープ
- 20. Pythonの文字列エスケープ
- 21. ユニコードのエスケープ文字を含む文字列を通常の文字列に変換する(エスケープ文字なし)
- 22. エスケープ文字列のMySQL構文エラー
- 23. Django Rest Framework - "。"、 " - "、 "_"文字のフィールドユーザー名
- 24. 文字列のdjango検索文字列
- 25. Python2.xのUnicode文字列からエスケープ文字(エスケープ文字のUnicode文字)を削除するには?
- 26. .NETエスケープ文字?
- 27. エスケープ文字
- 28. Kivyエスケープ文字
- 29. HTMLエスケープ文字
- 30. エスケープ文字
小さなテストを行いました.HTMLタグを含む文字列( 'Foo')を含むリクエストが送信されました。この文字列には何も起こらず、そのまま「そのまま」保存されました。私の質問は、XSS攻撃を避けるにはどうすればいいですか?エスケープされていない文字列をDBに保存すること、および/またはDjangoでレンダリングする前に心配する必要はありますか?私はDjangoのエスケープやstrip_tagsのようないくつかのユーティリティ関数を見ていますが、ifとwhenをいつ使うべきかについての情報は見つけられません。 – foobar