Magazine
Quantsマガジン
クロスサイトスクリプティング(XSS)とは?攻撃の仕組みや被害事例と対策を紹介!
クロスサイトスクリプティング(XSS)とは、脆弱性のあるWebサイトに、不正なスクリプトを埋め込むサイバー攻撃です。現在でも、多くの個人情報の流出や、多額の金銭被害をもたらす、クロスサイトスクリプティング攻撃の、仕組みや被害事例、対策を紹介します。
目次
クロスサイトスクリプティング(XSS)とは
クロスサイトスクリプティング(XSS)とは、脆弱性のあるWebサイトに、スクリプトと呼ばれるプログラムを埋め込み、Webサイトを閲覧したユーザに、不正なスクリプトを実行させるサイバー攻撃のことです。
閲覧したWebサイトにアクセスすると、不正なスクリプトが実行され、偽のWebサイトに遷移(クロス)させることから、「クロスサイトスクリプティング」と呼ばれます。
古くからある攻撃手法ですが、IPA(情報処理推進機構)の「ソフトウェア等の脆弱性関連情報に関する届出状況」によると、過去2年間の累計で「クロスサイトスクリプティング」が 58%を占めており、依然として多くの被害を出しています。
「ソフトウェア等の脆弱性関連情報に関する届出状況」2-2-3. 脆弱性の種類・影響別届出件数 P18参照
クロスサイトスクリプティング(XSS)で受ける被害
クロスサイトスクリプティング(XSS)は、個人情報の流出や、多額の金銭被害などが発生する、非常に危険な攻撃です。攻撃による影響範囲も非常に広く、ユーザが利用している他のサービスやWebサイト、管理している機密情報までもが危険にさらされる可能性があります。
ここでは、クロスサイトスクリプティングによる被害を5つ紹介します。
金銭被害
クロスサイトスクリプティングにより、なりすましや、ランサムウェア等の危険なマルウェア感染、個人情報の流出が発生し、以下の金銭被害が発生する可能性があります。
- クレジットの不正利用
- 不正な送金
- 個人情報の流出による損害賠償
- 機密情報の流出による機会の損失
- 多額な身代金の要求
個人情報の流出
クロスサイトスクリプティングにより、盗まれた氏名や住所、クレジット情報、ユーザID、パスワードといった個人情報が、第三者へ売却され、流出するおそれがあります。また、流出したユーザIDやパスワードを利用して、他のWebサイトにアクセスを試みる「パスワードリスト攻撃」により、他のサービスやWebサイトに被害が広がる可能性があります。
セッションハイジャック
セッションハイジャックとは、Webサイトにアクセスする際に発行される、セッションIDを盗み、正規のユーザになりすますサイバー攻撃です。
なりすましによって、掲示板やSNSへ不適切な内容を投稿し、信用の失墜を招くおそれがあります。また、ユーザ本人の権限が使えるため、サービスの変更や退会といった被害や、クレジットの不正利用、不正送金といった金銭被害の危険もあります。
マルウェア感染
ランサムウェアのような、危険なマルウェアに感染し、機密情報の流出や改ざん、バックアップデータの削除といった被害に発展するおそれがあります。また、トロイの木馬のようなマルウェアにより、バックドアを作られ、攻撃の踏み台にされる可能性もあります。
Cookie情報の流出
Cookieとは、Webサイトにアクセスする際に、パソコンと、Webサイトとのアクセス情報を保管するファイルです。Cookieにはユーザやパスワード、買い物かごに入れた商品情報などが保存されています。
Webサイトにアクセスした後、再度Webサイトにアクセスすると、前回情報が残っているのは、Cookieに情報が保存されているためです。さまざまなWebサイトで広く使われています。
Cookieの流出により、なりすましが発生するおそれがあります。なりすましにより、セッションハイジャックと同様の被害を受ける可能性があります。さらに、ユーザの趣味嗜好といった機微な情報が流出し、信用の失墜や損害賠償といった二次被害が発生する危険があります。
クロスサイトスクリプティング(XSS)攻撃の仕組み
クロスサイトスクリプティング攻撃は、攻撃者が脆弱性のあるWebサイトに、罠(不正なスクリプト)を仕掛けることから始まります。 ここでは、クロスサイトスクリプティング攻撃の仕組みを、4つ紹介します。
- 仕組み1:Webサイトに罠を仕掛ける
- 仕組み2:Webサイトへアクセス
- 仕組み3:使用者のブラウザで不正スクリプトが実行
- 仕組み4:情報流出やマルウェア感染
仕組み1:Webサイトに罠を仕掛ける
攻撃者は、脆弱性のあるWebサイトに罠(不正なスクリプト)を仕掛けます。罠を仕掛けるために、Webサイトを乗っ取ったり、改ざんしたりする必要はありません。Webサイトの入力フォームに、スクリプトを動かすためのソースコードを入力することで、罠を仕掛けます。
仕組み2:Webサイトへアクセス
ユーザが、不正スクリプトが埋め込まれたWebサイトへ、アクセスします。Web検索からだけではなく、攻撃者からのメールやSNSを通じて、不正スクリプトが埋め込まれたWebサイトへ誘導される場合もあります。
仕組み3:使用者のブラウザで不正スクリプトが実行
Webサイトへアクセスすると、使用者のブラウザで不正なスクリプトが実行されます。不正なスクリプトにより、自動的に悪意のある別のWebサイトに遷移したり、不適切なポップアップが表示されます。
元のWebサイトと、全く同じデザインの偽Webサイトを準備して、気づかれないように偽装する場合もあります。
仕組み4:情報流出やマルウェア感染
遷移先のサイトで、ユーザIDやパスワード等を入力させ、盗み出したり、Cookie情報を盗み出したり、マルウェアに感染させたりします。盗み出した情報を元にして、金銭被害や個人情報の流出といった被害が発生します。
クロスサイトスクリプティング(XSS)の被害事例
クロスサイトスクリプティング攻撃により、現在までにさまざまな個人情報の流出や金銭被害が発生しています。ここでは影響の大きかった被害事例を5つ紹介します。
国内ITベンダーの被害事例
2021年9月に発覚した、個人情報を含むクレジット情報が流出した事例です。クレジットの不正利用が確認されたことで発覚しました。国内ITベンダーがSaaSとして提供していた、ECシステムサーバ2台に脆弱性があり、SaaSを利用してECサイトの運営していたWebサイトから個人情報が流出しました。
流出した可能性のある個人情報を含むクレジット情報は43万件以上、影響はのべ11社という大きな被害が発生しました。この事例では、SaaSを提供する側の対策不足により、SaaSを利用していた側が被害を受けています。
通信販売会社の被害事例
2022年5月に発覚した、個人情報を含むクレジット情報が流出した事例です。オープンソースのショッピングサイト構築システムに脆弱性があり、当該システムを使用して構築されたWebサイトから、クレジット情報が流出しました。最大で2930件ものクレジット情報が流出した可能性があります。
オープンソースのシステム(無償)を使っていたため、ショッピングサイト構築システムの事業者は、修正プログラムを提供するだけで、脆弱性対策そのものは、Webサイトを構築した事業者が行う必要がありました。
ユニクロの被害事例
2020年9月に発覚した、ユニクロのAndroidアプリ(ユニクロアプリ)に複数の脆弱性が発覚した事例です。脆弱性対策情報データベース(JVN iPedia)で注意喚起がなされました。脆弱性がありましたが、ユニクロの対応が迅速だったため、被害は確認されていません。
Twitter(現X)の被害事例
2010年9月に発覚した、不適切投稿の事例です。Twitter(現X)に脆弱性があり、ツイートにマウスカーソルを載せるだけで、リツイートされるという攻撃が行われました。脆弱性の発見者が、攻撃に使用したソースコードを公開したため、さまざまな亜種が発生し、不適切な投稿が大量に発生しました。
YouTubeの被害事例
2010年7月に発生した、YouTubeへのクロスサイトスクリプティング攻撃により、以下の様な被害が発生しました。
- ショッキングなデマが表示される
- コメント欄が表示されなくなる
- 不適切なWebサイトに遷移する
以上のように大きな被害が発生するだけでなく、脆弱性の対策や、被害の影響度を調査するために、インターネットからの隔離が必要な場合があります。これに伴ってサービスの停止や機会の損失といった二次被害も起こっています。
クロスサイトスクリプティング(XSS)対策
前述の被害事例に代表されるように、クロスサイトスクリプティング攻撃は、大きな被害をもたらします。クロスサイトスクリプティング攻撃を防止するために、有効な対策を7つ紹介します。
サニタイジング(スクリプトの無害化)
サニタイジングとは、Webサイトに入力された不正なコードを無害化することです。
クロスサイトスクリプティング攻撃において、攻撃者はWebサイトの入力フォームに罠(不正なスクリプト)を仕掛けます。具体的には、不正なスクリプトが実行されるように、Webサイトの入力フォームへ不正なソースコードを入力します。
サニタイジングでは、入力された文字をチェックして、不正なソースコードがあった場合は、無害な文字に置き換えます。ソースコードを置き換えることで、不正なスクリプトが実行されなくなります。
常時セキュリティを最新状態にする
Webサイトで利用している、ソフトウェアやサーバに、脆弱性があった場合は、速やかに最新状態にアップデートすることが必要です。その為には、自社のWebサイトがどのような構成物や構成要素を持っているのかを把握する必要があります。
さまざまな構成要素が必要になりますが、構成要素の例を以下に記します。
構成物 | 構成要素 |
---|---|
Webサイト | ソフトウェア CMS フレームワーク |
Webサーバ | OS ソフトウェア ミドルウェア |
ネットワーク | ファイアウォール 通信機器 ソフトウェア |
これらは、メーカのWebサイトや下記の脆弱性対策情報データベース(JVN iPedia)を確認して、脆弱性がないかを、適宜チェックする必要があります。
入力値の制限
Webサイトの入力フォームに、不正なソースコードが入力されないよう、入力値を制限することも有効です。例えば、郵便番号であれば「数字のみで8桁」、住所や氏名であれば「全角の文字列で30文字まで」といった制限を付けて、ソースコードの入力ができないようにします。
URL出力の制限
ユーザの入力した内容により、Webサイトに表示されるリンク先や画像のURLが動的に作られる場合、不正なスクリプトを埋め込まれるおそれがあります。そのため、httpやhttpsで始まるURLのみ出力を許可し、不正なスクリプトが埋め込まれなくすることが有効です。
WAFの導入
WAF(Web Application Firewall)とは、Webサイトをサイバー攻撃から守るセキュリティ対策の1つです。Webサイトとインターネットの間に設置され、通信内容を監視し、攻撃を検知、防御します。
WAFを導入し、クロスサイトスクリプティング攻撃を検知、防御することが有効です。
Webアプリケーションの脆弱性診断
脆弱性診断では、Webアプリケーションを構成するソフトウェアやミドルウェアなどに、脆弱性がないかをチェックします。脆弱性の診断ツールや、診断サービスを用いて、脆弱性診断の定期的な実施が有効です。
セキュリティに詳しくない場合は、診断ベンダーといったセキュリティの専門家に脆弱性診断を依頼して、脆弱性を洗い出してもらうことが有効です。
クロスサイトスクリプティング攻撃の対策については、情報処理推進機構(IPA)の「安全なウェブサイトの作り方 - 1.5 クロスサイト・スクリプティング」に公開されています。
セキュリティの教育と訓練
クロスサイトスクリプティング攻撃も、新たな脆弱性を発見したり、新たな技術を利用したりして、日々進化を続けています。セキュリティの教育と訓練を、継続的に行い、クロスサイトスクリプティング攻撃を起こさせない仕組みづくりが有効です。
クロスサイトスクリプティング(XSS)まとめ
クロスサイトスクリプティング攻撃の仕組み、被害事例、対策を紹介しました。
クロスサイトスクリプティング攻撃は、過去の被害状況から見ても、非常に危険なサイバー攻撃です。一旦、攻撃を受けてしまうと、甚大な被害となる恐れがあります。
クロスサイトスクリプティングの対策を行い、脆弱性のない仕組みを構築し、維持していくことが大切です。
コンサルティングのご相談ならクオンツ・コンサルティング
コンサルティングに関しては、専門性を持ったコンサルタントが、徹底して伴走支援するクオンツ・コンサルティングにご相談ください。
クオンツ・コンサルティングが選ばれる3つの理由
②独立系ファームならではのリーズナブルなサービス提供
③『事業会社』発だからできる当事者意識を土台にした、実益主義のコンサルティングサービス
クオンツ・コンサルティングは『設立から3年9ヶ月で上場を成し遂げた事業会社』発の総合コンサルティングファームです、
無料で相談可能ですので、まずはお気軽にご相談ください。
関連記事
サイバーセキュリティ
マクロウイルスとは?オフィス製品に感染する仕組みと対策を解説!
マクロウイルスは、ビジネスに不可欠な「マイクロソフトオフィス」製品のマクロ機能を悪用するマルウェアの一種です。ここでは、マクロウイルスの特徴と感染経路や、具体的な種類と被害例、詳しい対策方法について解説します。感染の仕組みを理解して対策を講じましょう。
サイバーセキュリティ
サイバー攻撃とは?攻撃の目的・種類や手口と被害事例から対策を紹介!
サイバー攻撃とは、サーバやパソコンなどの機器に対して不正アクセスや情報窃取、破壊活動などを行う攻撃の総称です。近年はサイバー攻撃が高度化し、どんな組織もサイバー攻撃にあうリスクがあります。本記事では、サイバー攻撃の種類や手口、被害事例について詳しく解説します。
サイバーセキュリティ
VPNのセキュリティは安全?仕組みやメリットとリスクを解説!
本記事ではVPNのセキュリティについて解説しています。安全性と危険性、仕組み、メリット、さらにはリスクまで詳しく説明しています。最後まで読むと、VPNのセキュリティをよく理解できますので、企業のセキュリティ対策に役立ててください。
サイバーセキュリティ
ネットワークセキュリティとは?リスクと取るべき対策まとめ
本記事ではネットワークセキュリティについて解説しています。ネットワークセキュリティのリスクや事例、必要な対策を詳しく説明しています。企業に欠かせないセキュリティ対策がよく理解できますので、最後まで読んで参考にしてください。
サイバーセキュリティ
マルウェア対策とは?感染の脅威と対処法を事例や感染経路とともに解説!
この記事では、マルウェアの定義、脅威、感染経路、予防対策、感染後の対処法について解説しています。マルウェアはウイルス、トロイの木馬、スパイウェアなどを含み、個人情報の盗難やシステム破壊を目的としています。感染経路は多岐にわたり、予防にはソフトウェアの更新、セキュリティソフトの導入、不審なメールの回避などが必要です。感染後はネットワークの遮断とマルウェアの駆除、データの復旧などが重要です。
サイバーセキュリティ
身代金要求型ウイルス(ランサムウェア)の手口とは?データを守るための対策も紹介!
ランサムウェアとは身代金要求型のウイルスのことを指し、世界中で深刻な被害をもたらしています。その攻撃手口も巧妙化しており包括的なセキュリティ対策が求められます。この記事では、身代金要求型不正プログラムといわれるランサムウェアの概要、感染経路、手口や対策を詳しく説明します。
サイバーセキュリティ
ランサムウェアに感染したらどうする?感染経路と予防法や感染後の対処法を解説!
ランサムウェアの基礎知識と感染による被害、感染経路や予防策、感染したら行う対処法と禁止事項を具体的に解説します。ランサムウェアに感染したら被る金銭被害や業務停止、情報漏えいなどのリスクを回避するために必要なセキュリティ対策や教育など役立つ情報を提供します。
サイバーセキュリティ
マルウェアとランサムウェアの違いとは?特徴や感染経路と対策について解説!
ランサムウェアはマルウェアの一種であり、近年、ランサムウェアを含むマルウェアの被害が増加しています。企業や組織をマルウェアから守るためには、その特徴や対策を正しく理解することが重要です。 そこで本記事では、それぞれの違いや特徴、感染経路、対策を解説します。
サイバーセキュリティ
ソーシャルエンジニアリングの手口とは?特徴や対策と被害事例を解説!
ソーシャルエンジニアリングとは、人間の心理的な隙を突くサイバー攻撃です。本記事ではソーシャルエンジニアリングの特徴や手口について解説します。実際に起きた事例も紹介するので、ソーシャルエンジニアリングの対策に役立ててください。
サイバーセキュリティ
ホワイトリストとは?対策の仕組みやセキュリティのメリットを解説!
ホワイトリストとは、安全と評価したWebサイトやIPアドレス等を定義したリストです。ホワイトリストに登録しているアプリケーションや通信のみ実行を許可します。ホワイトリストに登録していないものは全てブロックするため、高いレベルのセキュリティ対策となります。
サイバーセキュリティの人気記事
サイバーセキュリティ
マクロウイルスとは?オフィス製品に感染する仕組みと対策を解説!
サイバーセキュリティ
サイバー攻撃とは?攻撃の目的・種類や手口と被害事例から対策を紹介!
サイバーセキュリティ
ランサムウェアの感染経路まとめ!被害の予防や対策と感染後の対処法を紹介!
サイバーセキュリティ
脆弱性とは?意味や危険性と発生原因・対策を徹底解説!
サイバーセキュリティ
不正アクセスとは?手口や被害事例7選ととるべき対策7選を解説!
サイバーセキュリティ
ランサムウェアの被害事例10選!サイバー攻撃に対する情報セキュリティ対策も解説
サイバーセキュリティ
マルウェア対策とは?感染の脅威と対処法を事例や感染経路とともに解説!
サイバーセキュリティ
身代金要求型ウイルス(ランサムウェア)の手口とは?データを守るための対策も紹介!
サイバーセキュリティ
ホワイトリストとは?対策の仕組みやセキュリティのメリットを解説!
サイバーセキュリティ
サンドボックスとは?仕組みとメリットデメリットを解説!
人気ランキング
サイバーセキュリティ
サンドボックスとは?仕組みとメリットデメリットを解説!
サイバーセキュリティ
マクロウイルスとは?オフィス製品に感染する仕組みと対策を解説!
サイバーセキュリティ
不正アクセスとは?手口や被害事例7選ととるべき対策7選を解説!
PMO
プロジェクト管理に必要な10個の管理項目とは?PMBOKの重要性も解説!
PMO
プロジェクト計画とは?計画書の作成手順や記載すべき内容について解説!
PMO
ERPとは?意味や特徴とシステムの導入メリット・選び方を解説!
PMO
プロジェクトを成功に導く立ち上げ方!問題・失敗例や注意点とプロセスを解説!
PMO
プロジェクトリーダーとは?役割・仕事内容や必要なスキル・資格についても解説!
サイバーセキュリティ
サイバー攻撃とは?攻撃の目的・種類や手口と被害事例から対策を紹介!
サイバーセキュリティ