志田雅貴

座右の銘は、 初心を忘れず、所信をつらぬく 小学生の時に考えた言葉です。矛盾しているような言葉にも聞こえますが、このようなパラメータの中を自由に飛び回れるような考え方が大好きです。

Railsでよくでてくる "protect_from_forgery with:exception" とは?

protect_from_forgery with:exceptionとは?

application_controllerにデフォルトで記述されています。 こんな感じに!

class ApplicationController < ActionController::Base
  protect_from_forgery with:exception
  ~
end

これはCSRFという攻撃から守ってくれます。

どんな攻撃だろう?

CSRFとは?

クロスサイトリクエストフォージェリCSRF)とは、Webアプリケーションに存在する脆弱性、もしくはその脆弱性を利用した攻撃方法のことです。掲示板や問い合わせフォームなどを処理するWebアプリケーションが、本来拒否すべき他サイトからのリクエストを受信し処理してしまいます。
Trend Micro | トレンドマイクロ (最終閲覧日:2017年8月6日)
http://www.trendmicro.co.jp/jp/security-intelligence/threat-solution/csrf/index.html


  • いたずら的書き込み、不正サイトへの誘導、犯罪予告といった掲示板やアンケートフォームへの不正な書き込み
  • 不正な書き込みを大量に行うことによるDoS攻撃

閲覧者を別Webサイト上で何らかの操作などを行わせる攻撃だそうです。 そういった攻撃を行わせないためにこの記述をしているようです。 気をつけて、記述しておかなくては。

twitter.com