クロスサイトスクリプティングとは
クロスサイトスクリプティング(XSS)とはWebアプリケーションへのサイバー攻撃のサイバー攻撃の中の一種です。
Webサイトの投稿や名前などを入力フォームから悪意のある
スクリプトを投稿することで
Webサイトの中に悪意のあるスクリプトを埋め込むことができる
攻撃手法になります。
流れ的には以下のような流れになります。
管理しているwebサイト上で個人情報や機密情報が悪意のあるユーザーに抜かれてしまう
リスクもある攻撃なのでこの記事を読んでしっかりと対策しましょう。
クロスサイトスプリティングの仕組み
ここではクロスサイトスクリプティングに仕組みを簡単に理解してみましょう。
基本的な仕組みは以下の図の通りです。
①悪意のあるユーザーは脆弱性のあるサイトのフォームに悪意のあるスクリプトを入力してそのまま送信する
②Webサーバーはスクリプトをそのままフォームの内容を保存するデータベースに保存してしまう
③一般ユーザーが悪意のあるユーザーが仕込んだWebサイトを訪問する
④Webサーバーはユーザーのリクエストに則ってスクリプトが仕込まれたデータベースから値を取得してそのままフロントエンドにスクリプトを返してしまう
⑤フロントエンドにスクリプトが返ってきてしまうため、開発者が意図しないスクリプトが作動して
フロントエンド上で動作してしまう。
このように悪意のあるユーザーがフォームに入力した内容がDBに保存されてしまい
一般ユーザーがそのDBの内容を呼び出す行動を起こしたときに意図しないスクリプトが作動する。
というのが大まかな流れになっております。
クロスサイトスクリプティングの攻撃例
ここでは実際にどのように被害が発生するのかについて説明をするので
クロスサイトスクリプティングについてより理解を深めていただければと思います。
不正ポップアップ
悪意のあるユーザーがスクリプトを埋め込むことに成功した場合
悪意のあるユーザーが表示したいポップアップを表示することができます。
例えばこれで自身のWebサイトとは全く関係のないサイトに遷移させて
個人情報を入力させるなどすることができるようです。
最後に
いかがだったでしょうか。
このようにクロスサイトスクリプティングの仕組み自体はとても単純であるものの
ユーザーの個人情報を入力させたり意図しないページに誘導させたり非常に恐ろしいものになってます。
現代の開発ではライブラリ等を使うことによって自動的に防御できる仕様になっておりますが
Webサイトの安全性を高めるため
きちんと理解を深めておきましょう。
コメント