0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

XSS、CSRFが覚えられないのでまとめてみた

Posted at

はじめに

Webアプリ開発を学習する上でXSS、CSRFよく聞きますが、フレームワークがうまい具合に対処してくれていたので、結局わからないまま時が過ぎました。
そこで今回は、これらの脅威をまとめてみようと思います。

XXS(クロスサイトスクリプティング)

攻撃者がウェブページに悪意のあるスクリプト(JavaScriptなど)を埋め込む攻撃。
他ユーザーがアクセスした時に、スクリプトが実行され、ユーザの情報を盗んだり、セッションをハイジャックされる。

攻撃の仕組み

  • ユーザー入力の未検証: ユーザーが入力したデータ(例:フォームやコメント欄)をそのまま表示する際に、スクリプトコードを含んだデータが実行されてしまう。
  • スクリプトの埋め込み方法: 攻撃者は、フォームやURLパラメータにスクリプトコード<script>タグを埋め込んでWebページに送信する。このスクリプトがページ内で実行されることで、攻撃が成立。

誰が被害を受けるか

主にWebアプリケーションを利用している一般のユーザー。

被害例

  • セッション情報の流出: 攻撃者がユーザーのセッションIDを取得し、ログイン状態を乗っ取る。
  • 個人情報の流出: ユーザーが入力したクレジットカード情報やパスワードが盗まれる。

CSRF(クロスサイトリクエストフォージェリ)

攻撃者がユーザーの認証情報を使って、ユーザーが意図しないリクエストをWebアプリケーションに送信させる攻撃です。ユーザーがログインしている状態で悪意のあるリンクやフォームをクリックさせることで、攻撃者はユーザーの権限を持つリクエストを不正に送信できます。

攻撃の仕組み

  • 認証された状態でのリクエスト送信:ユーザーがログインしている状態で、攻撃者が悪意のあるリンクや画像を埋め込んだWebページを提供します。ユーザーがそのページを訪問すると、攻撃者はユーザーの権限で不正なリクエストを送信させることができる。
  • リクエストの偽造方法: 攻撃者は、ターゲットのWebアプリケーションに対して、ユーザーが意図しないリクエスト(例えば、金銭送金やアカウント変更)を送信させる。

誰が被害を受けるか

他サービスにログイン状態のユーザー。

被害例

  • 金銭送金: ユーザーが銀行にログインしているとき、攻撃者が不正な送金リクエストを送信させ、金銭を盗む。
  • アカウント設定の不正変更: 攻撃者がユーザーのアカウント設定(メールアドレス変更など)を勝手に変更させる。
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?