こんにちは!
今回はCSRFについてまとめます。
CSRFとは
- Webサイトへの脆弱性とそれを利用した攻撃手法
- CSRF(Cross-site request forgery)の略
- 「サイトをまたいだ偽のリクエスト」といった意味
- 罠サイトへのアクセスによって、別のWebサイトへの操作を送ってしまう
影響
- URLをクリックするだけで、次のような動作が起こる可能性がある
- 偽の内容の投稿
- 勝手に商品を購入
- 他人の口座に送金
例
- はまちちゃん事件
- 犯罪予告
- URLをクリックすることで、勝手に犯罪予告が行われた事例が実際に発生している
脆弱性の原因
- Webサイト側において、POSTリクエストの検証が不十分なため
対策
- フォームのGETリクエストが送られた際に、生成したランダムな文字列を埋め込んでおき、POSTリクエストが送られた際には、サーバー側に保存しておいた文字列とPOSTリクエストの文字列が一致するか検証することで正しいリクエストか判定する
おわりに
はまちちゃん事件の時は界隈が騒然としていたのを覚えています。あの時はよくわからなかったですが、CSRFの脆弱性だったんですね!Railsでは対策がされているようですが、こういった脆弱性にも気を付けながら開発していきたいですね。
38/100