PHP/Elixirエンジニアのブログ

有益なアウトプットを心がけます。

【Laravel】CSRF対策ってなに?

CSRFとは

CSFR(Cross Site Request Forgey)
ー直訳→交わる サイト 要求 偽造

偽造?悪いことしようとしてるみたいな単語ですね....

ズバリ、 CSRFとはWEBサイト攻撃のひとつです。
スクリプトなどを使い外部からフォームを送信するもので
フォームに大量のコンテンツを
送られるのに用いられています。

csfr_field

csrf_fieldはCEFR対策のために用意された関数です。
トークン発行し非表示フィールドとして追加して、
その値が正しいフォームだけを受け取るようにします。

こうすることで
用意されたフォームからの送信か
どうか見分けることができるようになり、
フォーム以外からの送信を受け付けないようにします。

Laravelはデフォルトで対策済み

Laravelでは、CRSF対策がなされていない
フォームの送信は受け付けられないようにしてます。
したがって、フォームを利用する際には
必ずcrsf_fieldをフォーム内に用意しておく必要があります。