【Rails】セキュリティ
Webアプリケーションは便利な反面、使用する際にリスクも発生します。
例えば、
・ユーザーアカウントを奪われた・不正なコンテンツが表示された・機密情報を抜き取られてしまった
などなど色んなリスクが存在します。
これらを防ぐには、セキュリティの強化🔒が必須です。
Railsの代表的なセキュリティ対策
■Strong Parameters■CSRF対策■各種のインジェクション対策
Strong Parameters
想定通りのパラメータかどうかをホワイトリスト方式でチェックします。
▶ホワイトリストとは
CSRF対策
CSRF(Cross-site Request Forgery )は、ユーザーがログインしているWebアプリケーションに悪意のある操作を行う攻撃のことをいいます。
例えば、
・別のWebサイト上に用意したコンテンツを踏んでしまう・画像を表示したことをきっかけに悪意のある操作を行う
などがあげられます。
例えば、
Twitterを利用しているときに罠のリンクを踏んでしまい自分のアカウントと連携させてしまうと、勝手にスパムのツイートが流れてくるといったものです。
ちなみに私は高校の時特に何も考えずにあれこれ連携させていたのでタイムラインが一時スパムツイートで埋まった経験あります(笑)
診断メーカーであったり、興味がそそられる話題で罠リンクへと誘導させられることが多いような気がします。
ではではこれらの攻撃から守るにはどうしたら良いのか。。
それらの攻撃を防ぐためには、
そのリクエストがユーザーの意図であるかどうかを確認する必要があります。
一般的な解決策としては、
照合する方法が用いられます。
そうすることで、リクエストがユーザーの意図であるかどうかを確認することが出来ます!
対策の意味がありません!
POSTリクエストを使用しましょう。
といった感じです。