お世話になります。
現在、個人でサービス開発をしております。
実装が落ち着いた為、セキュリティの精査をしている状況なのですが、
CSRF対策について、分かりかねている点がございまして、ご相談させて頂けますと幸いでございます。
まず、CSRF対策が必要なのは「変更や追加が実施される画面やメソッド」or「ログイン・ログアウト処理」という認識で合っておりますでしょうか、、?
<サービス画面例>
例えば、ファッションのECサイト(事業者が服を販売して一般ユーザーが購入する)の 管理画面のような場合、画面毎にCSRF対策が必要かどうかを私の現在の感覚で以下に整理したのですが、先達の皆様からして、ここは対策した方が良い(もしくは不要)という点はございますでしょうか? *不要な情報かもしれませんが言語はPHPでフレームワークはSymfony2系を使っております
<画面例>
- ログイン/ログアウト:要対策
- 注文データの変更画面(+変更メソッド):要対策
- 顧客検索画面(Postでパラメタを送信し、検索結果を一覧表示する):不要(検索のみなので攻撃のインパクトはなし?)
- 注文CSVダウンロード(getでパラメタを渡して検索結果データをCSVとしてダウンロードする):不要(ユーザのローカルにダウンロードするのみなので影響なし?)
- 売上集計画面(Postでパラメタ送信し、集計した結果を表示する):不要(検索画面と同様)
<CSRF対策が必要かどうかの検討軸>
また、CSRF対策が必要かどうかを判断する観点を思いつくものをピックアップしたのですが、
こちらも皆様からご覧になって必要ではない観点などございますでしょうか(漏れている観点など)?
- ログイン/ログアウト処理は対応が必須
- データの変更や追加、メール送信などが実行される画面やメソッドには基本的に対応が必要
- データの検索のみ実施している画面、メソッドは対応不要
コードが記載できず大変申し訳ありません。
皆様のお知恵をお借り出来ますと幸いでございます。
宜しくお願い致します。
回答2件
あなたの回答
tips
プレビュー