CSRF token
2560 ワード
「CSRF」とは?
Cross-Site Request Forgery
サーバ側は、有効性検証を要求するセキュリティトークンを処理します.
クライアントがPOSTメソッド要求を発行した場合.
リクエストのデータを検証する前に、まず
どこから来たのか確認しておきます.
クライアント要求にCSRFトークンがない場合、またはサーバ上の値と異なる場合.
お客様のリクエストが拒否されました.
Shang CSRFトークンはスキームを適用しません
登録
www.example.com
.www.fake-example.com
サイトにログインしています.www.example.com
にログインしたハッカーがorder numberとamountを改ざんすることを知っています.example
から来たのかfake-example
から来たのか分からないので、直接支払いを行う.勘定科目CSRFトークンが適用されたシナリオ
登録
www.example.com
.www.fake-example.com
登録サイト.서버사이드에서
CSRFトークンの管理値を特定できなかった.Forbiddenエラーが発生した場合
https://docs.djangoproject.com/en/4.0/ref/settings/#std:setting-CSRF_FAILURE_VIEW
# views.py
def csrf_failure(request, reason=""):
"""403 Forbidden"""
logout(request)
return redirect("home")
# settings.py
if not DEBUG:
# 403 Forbidden 발생 시
CSRF_FAILURE_VIEW = "web.views.csrf_failure"
Reference
この問題について(CSRF token), 我々は、より多くの情報をここで見つけました https://velog.io/@khh180cm/CSRF-tokenテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol