質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
CSRF

クロスサイトリクエストフォージェリ (Cross site request forgeries、CSRF)は、 外部Webページから、HTTPリクエストによって、 Webサイトの機能の一部が実行されてしまうWWWにおける攻撃手法です。

Q&A

1回答

1465閲覧

CSRF対策について

kokokooooooooo

総合スコア18

CSRF

クロスサイトリクエストフォージェリ (Cross site request forgeries、CSRF)は、 外部Webページから、HTTPリクエストによって、 Webサイトの機能の一部が実行されてしまうWWWにおける攻撃手法です。

0グッド

1クリップ

投稿2019/03/06 06:59

CSRF対策として、「トークン」を自動的に発行してCSRF対策を行なっていますが、
この「トークン」はユーザーの各セッションごとに自動生成しているということは、ブラウザの方でキャッシュ・Cookieログイン情報などを全て消去し、ログインした際に発行されるトークンではなく、Cookieを消去する前に発行された「トークン」を使用した場合、別ユーザーのトークンとして扱い、リクエストが成功した場合は、脆弱性があるといっていいのでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ockeghem

2019/03/10 10:29

質問の文章がわかりにくいので、もっと短い文に切るなどして、明確に書いてください。
guest

回答1

0

この「トークン」はユーザーの各セッションごとに自動生成している

この認識が間違いです。
フォームを表示したときに毎回自動生成しているはずです。

なりすましによるPOSTリクエストを防ぐために、まずGETでフォームを表示したときに一時的なトークンを発行し、そのトークンをPOSTリクエストに正しく入力できた場合のみ有効なリクエストとして処理するようにするのです。
したがって、CSRFトークンはこの画面遷移の間だけ有効で、フォームが表示されるたびに毎回作り直されると思ってください。

投稿2019/03/06 07:15

mather

総合スコア6753

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kokokooooooooo

2019/03/06 09:21

laravelの場合、「_token」というCSRFトークンが発行されますが、これじたいは毎回値の中身はかわっていないです。しかし、Laravvel_sessionやXSRF-TOKENなどはリクエストごとに変わります。 こういうことですか?
mather

2019/03/07 00:36

> 「_token」というCSRFトークンが発行されますが これはCSRFトークンではないです。 > XSRF-TOKEN こちらがCSRFトークンです。字が違いますがXSRFと書くこともあります。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問