サイバー攻撃

クロスサイトスクリプティング(XSS)とは?仕組みや対策を解説

Written by WizLANSCOPE編集部

クロスサイトスクリプティング(XSS)とは?仕組みや対策を解説


クロスサイトスクリプティング(XSS) とは、Webアプリケーションの脆弱性の一つで、攻撃者が悪意のあるスクリプトをWebページに埋め込み、そのページを閲覧した利用者のブラウザ上でスクリプトを実行させる攻撃手法です。

この脆弱性を悪用した攻撃は「クロスサイトスクリプティング攻撃」と呼ばれ、Cookie情報の窃取やセッションハイジャックなどの被害につながる恐れがあります。

本記事では、クロスサイトスクリプティング攻撃の仕組みや有効な対策などを解説します。

▼本記事でわかること

  • クロスサイトスクリプティングの概要
  • クロスサイトスクリプティング攻撃による被害
  • クロスサイトスクリプティング攻撃への対策

「クロスサイトスクリプティング攻撃とはどのようなサイバー攻撃か」「どのような対策が有効か」などを知りたい方はぜひご一読ください。

なお本記事では、Webアプリケーションの脆弱性を明らかに脆弱性診断サービス「LANSCOPE プロフェッショナルサービス」についても紹介しています。

Webアプリケーション診断で指摘される
脆弱性TOP5を解説!

Webアプリのセキュリティ対策は万全ですか?
実際に診断でよく指摘される脆弱性TOP5を
原因や対策方法も含め、分かりやすく説明します。

資料をダウンロードする

クロスサイトスクリプティング(XSS)とは


クロスサイトスクリプティング(Cross-Site Scripting、XSS) とは、Webアプリケーションの脆弱性の一つで、攻撃者が悪意のあるスクリプトをWebページに埋め込み、そのページを閲覧した利用者のブラウザ上で、そのスクリプトを実行させる攻撃手法です。

この脆弱性を悪用した攻撃を「クロスサイトスクリプティング攻撃」と呼び、Cookie情報の窃取やセッションハイジャック、なりすましによる不正操作などの被害につながる可能性があります。

XSSは、「信頼している正規のWebサイト上で、悪意のあるスクリプトを実行させる」という点に特徴があります。利用者のブラウザは、正規サイトから提供されたコンテンツであると認識し、スクリプトを実行してしまいます。

特に、掲示板やアンケートサイト、問い合わせフォームなど、ユーザーの入力内容を動的にページに反映するWebサイトで、入力値の適切なエスケープ処理やサニタイズが行われていない場合、XSSのリスクが高まります。

クロスサイトスクリプティング(XSS)攻撃の種類

クロスサイトスクリプティング(XSS)攻撃には、以下のような種類があります。

反射型XSS(Reflected XSS) ・攻撃者が悪意のあるスクリプトを含むURLを作成し、そのリンクをメールやSNSなどを通じて被害者に送る手法
・利用者がURLをクリックすると、「このURLのWebサイトを表示してください」というリクエストに含まれた不正なスクリプトが、脆弱性のあるWebサイトから返され、ユーザーのブラウザで実行される
・影響範囲は、原則としてURLを開いたユーザーに限定される
格納型XSS(Stored XSS) ・攻撃者が掲示板やコメント欄などに悪意のあるスクリプトを投稿し、Webサイト内に格納させる手法
・クリックなどのアクションを取らなくても、ユーザーが当該ページにアクセスをするだけでスクリプトが実行される
・不正なスクリプトがサーバー上に保存されるため、攻撃者が個別にリンクを送る必要がない
・不特定多数に被害が拡大しやすい
DOMベース XSS(DOM Based XSS) ・クライアント側のJavaScriptが、URLやフォーム入力値などを適切に検証せずにDOMに書き込むことで発生する手法
・サーバー側のレスポンスには不正なスクリプトは含まれず、ブラウザ上で動的にスクリプトが生成・実行される点が特徴

3種類のXSSは、いずれもWebアプリケーションの設計や実装段階での入力値処理の不備が原因で発生します。

そのため、開発時の対策と定期的な脆弱性診断が重要です。

クロスサイトスクリプティング(XSS)攻撃の被害件数は増加傾向

XSS攻撃は、1990年代後半から確認されているサイバー攻撃の手法でありながら、いまだに多くの企業・組織のWebサイトがXSS攻撃の被害に遭っています。

実際、情報処理推進機構(IPA)が公開する活動報告レポートによると、2025年の10月~12月に登録された脆弱性の種類別件数のうち、XSS(CWE-79)が1,215件と最多となっています。

こうしたデータからも、XSS攻撃は依然としてWebアプリケーションにおける代表的かつ深刻なセキュリティリスクであることがわかります。
2025年第4四半期に登録された脆弱性の種類別件数のグラフ

出典:IPA(情報処理推進機構)│脆弱性対策情報データベースJVN iPediaに関する活動報告レポート[2025年第4四半期10月~12月](2026年1月21日)

クロスサイトスクリプティング(XSS)攻撃の仕組み・流れ

クロスサイトスクリプティング(XSS)攻撃は、一般的に以下のような流れで発生します。

  1. 攻撃者によって悪意のあるスクリプトが、URLパラメータや投稿フォームに埋め込まれる
  2. 利用者がそのURLにアクセス、または当該ページを閲覧する
  3. サーバーが不正なスクリプトを含んだままレスポンスを返す
  4. 利用者のブラウザが正規コンテンツとして認識し、スクリプトを実行してしまう

通常、Webサイトへアクセスすると、ブラウザはURLに基づいてサーバーへHTTPリクエストを送信します。

しかし、URLパラメータなどに悪意のあるスクリプトが含まれており、かつWebアプリケーション側で適切なエスケープ処理が行われていない場合、そのスクリプトがレスポンスに埋め込まれた状態で返されます。

利用者のブラウザは、それを正規のHTMLやJavaScriptとして処理するため、不正なスクリプトであっても実行してしまいます。

その結果、Cookie情報の窃取やセッションハイジャックによる不正ログインが発生するほか、フィッシングサイトへの誘導などを通じて、さらなる被害につながる恐れもあります。

クロスサイトスクリプティング攻撃も未然防止!「セキュリティ診断/脆弱性診断」とは

「Webアプリケーション」の脆弱性を明らかにし
現状課題や対策を専門のベンダーが手厚く支援

資料をダウンロードする

クロスサイトスクリプティング(XSS)攻撃による被害


クロスサイトスクリプティング(XSS)攻撃を受けると、以下のような被害が生じる危険性があります。

  • 情報漏洩や金銭的な被害
  • セッションの乗っ取り(セッションハイジャック)

詳しく確認していきましょう。

情報漏洩や金銭的損失

XSS攻撃では、不正なスクリプトが正規のWebサイト上で実行されるため、利用者はもちろん、場合によってはサイト管理者であっても異常に気付きにくいという特徴があります。

攻撃者は、正規サイトのページ内に不正なフォームを表示させたり、既存のフォームを書き換えたりすることで、認証情報やクレジットカード情報、口座情報などを窃取しようとします。

仮に認証情報が攻撃者の手に渡ってしまった場合、アカウントへの不正ログインや不正操作が行われるだけでなく、継続的に不正利用されるリスクも発生します。

また、口座情報が盗まれた場合には、不正送金や決済被害などの重大な金銭的損失が発生するリスクもあります。

セッションの乗っ取り(セッションハイジャック)

XSS攻撃によってCookie情報が不正に窃取されると、セッションが乗っ取られるリスクが生じます。これを「セッションハイジャック」と呼びます。

Cookieとは、利用者がWebサイトにアクセスした際に、ブラウザに保存される小さなデータのことです。主にセッションIDや認証トークンなど、利用者を識別するための情報が格納されます。

Cookieを許可すると、利用者はログイン情報を毎回入力しなくてもサービスを継続利用できるようになるなど、利便性の向上が期待できます。

しかし、XSSを悪用して不正なスクリプトが実行された場合、これらのCookie情報が外部に送信され、窃取される可能性があります。

万が一攻撃者がセッションIDを入手すると、正規ユーザーになりすましてWebサービスへアクセスできるようになってしまいます。

これにより、登録情報の改ざんや個人情報の流出、クレジットカードの不正利用など、深刻な被害につながる恐れがあります。

関連ページ

セッションハイジャックの仕組みから対策までわかりやすく解説

クロスサイトスクリプティング(XSS)攻撃の被害事例


ここでは、国内で発生したクロスサイトスクリプティング(XSS)攻撃による被害事例を2件紹介します。

XSS攻撃により43万件超の顧客情報が流出した事例

XSS攻撃により、スーパーマーケットなどを展開する流通業11社のEC(電子商取引)サイトから、クレジットカード情報を含む43万件以上の顧客情報が流出した事例があります。

ユーザーのクレジットカードが不正利用されたことをきっかけに調査が行われた結果、不正なスクリプトが実行されていたことが判明しました。

被害にあった11社はいずれも、国内ITベンダーが提供するSaaS型のECサイト構築サービスを利用しており、当該サービスの共通基盤における脆弱性が影響したことが明らかになっています。

ベンダーは、サーバーに対する外部からのアクセスを一時的に遮断した上で、不正アクセスの経路や影響範囲の分析を実施し、流出した可能性のある顧客情報の特定を進めました。

当該サービスの利用企業は約80社にのぼりましたが、不正スクリプトの影響が確認されたのは、一部の環境に限られていました。

その後、ベンダーはすべてのサーバーに対して追加のセキュリティ対策を実施し、再発防止策を講じています。

XSS攻撃によりECサイトの決済画面が改ざんされた事例

骨盤ケア用品やマタニティケア用品などを取り扱う通信販売会社のECサイトが、XSS攻撃の被害を受け、顧客情報が流出した事例が報告されています。

当該企業は、ECサイトのサーバー上に管理対象外の不審なファイルを発見し、調査を実施したところ、決済画面に不正なスクリプトを挿入するコードが含まれていたことが判明しました。

ECサイトのシステムに内在した脆弱性が突かれ、ペイメントアプリケーションが改ざんされたことが被害の原因とされています。

当該企業は、事実確認が取れた当日に当該ECサイトを一時停止し、第三者調査機関による調査を開始しました。

その後、再発防止を講じるとともに、カード会社と連携して不正利用監視のモニタリングを実施するなど、被害拡大防止のための対応を行いました。

クロスサイトスクリプティング攻撃も未然防止!「セキュリティ診断/脆弱性診断」とは

「Webアプリケーション」の脆弱性を明らかにし
現状課題や対策を専門のベンダーが手厚く支援

資料をダウンロードする

クロスサイトスクリプティング(XSS)攻撃への対策


クロスサイトスクリプティング(XSS)攻撃に有効な対策を4つ解説します。

  • サニタイジング(スクリプトの無害化)
  • 入力値の制限(バリデーション処理)
  • WAFの導入
  • Webアプリケーション脆弱性診断の実施

自社のWebアプリケーションにXSS攻撃を仕掛けられると、自社だけでなく利用者側にも深刻な被害が発生します。

その結果、サービス停止による事業機会の損失だけでなく、「利用者に不利益を生じさせた企業」として、社会的信用が低下するリスクも生じます。

被害を未然に防ぐためにも、有効な対策を確認していきましょう。

サニタイジング(スクリプトの無害化)

掲示板や問い合わせフォームなど、利用者が文字入力を行うWebサイトでは、「サニタイジング(無害化処理)」が有効な対策となります。

サニタイジングとは、Webアプリケーションにおいて入力値や出力内容を検証し、有害な文字列を検知して安全な形式に処理する処理のことです。

特にXSSへの対策としては、出力時の適切な処理が重要となります。

サニタイジングの代表的な手法として、「エスケープ処理」が挙げられます。

エスケープ処理とは、HTMLで特別な意味を持つ文字を、特別な意味を持たない文字列へと変換することで、スクリプトとして解釈されるのを防ぐ処理方法です。

例えば、HTMLでタグの開始文字として認識される「<」を「<」に置き換える処理がこれにあたります。 このような処理をあらかじめ実装することで、不正なスクリプトが実行されるリスクを低減できます。

関連ページ

サニタイジングとは?行わない場合のリスクや実施方法を解説

入力値の制限(バリデーション処理)

ユーザーが文字入力をするWebサイトでは、ユーザーの入力値にサーバー側で制限をかける「バリデーション処理」も有効な対策の一つです。

例えば、電話番号を入力する欄では「数字のみ」を許可し、氏名のふりがな欄では「ひらがなのみ」を許可するといった制限をかけます。

また、文字種が制限できない場合でも、入力値の文字数を「x文字以上x文字以下」と制限することで、不正な入力のリスクを抑えることが可能です。

こうした制限を設けることで、想定外の文字列や不正な形式の入力を排除し、攻撃のリスクを一定低減できます。

さらに、ユーザーが入力したURLをリンクとして出力する場合には、「http://」または「https://」から始まるURLだけを許可するといった制限も有効です。

ただし、バリデーション処理はあくまでも補助的な対策であり、XSSへの対策には、前述のエスケープ処理と合わせて実施することが重要です。

WAFの導入

WAF(ワフ、Web Application Firewall)は、Webアプリケーションの脆弱性を狙った攻撃を検知・遮断するためのセキュリティ対策です。

不正アクセスやサイバー攻撃を遮断する「防火壁」の役割を担います。

WAFは、HTTPリクエストやレスポンスを解析し、不審なパラメータや攻撃パターンを検知した場合に通信を遮断することで、XSS攻撃などのリスクを低減します。

特に、ECサイトのようにユーザーの入力を受け付け、クレジットカード情報などの個人情報を取り扱うWebサイトの保護に適した対策といえます。

ただし、WAFは脆弱性そのものを修正するものではないため、出力時のエスケープ処理や脆弱性診断と合わせて導入する必要があります。

関連ページ

WAFとは?仕組みや必要性をわかりやすく解説

Webアプリケーション脆弱性診断の実施

Webアプリケーション脆弱性診断とは、専門のセキュリティベンダーがWebアプリケーションや関連システムを診断し、脆弱性の有無を確認した上で、具体的な対策案を提供するサービスです。

例えば、以下のような項目を診断します。

  • Webアプリケーション開発時の設計や実装に不備がないか
  • Webサーバーの設定に誤りがないか
  • XSS攻撃をはじめとする攻撃が成立する可能性がないか

定期的かつ継続的に実施することで、XSSに悪用される脆弱性を早期に発見し、対策を講じることが可能です。

脆弱性診断は、XSSだけでなく、Webアプリケーションを狙ったさまざまなサイバー攻撃から自社サイトを守るために重要な取り組みです。

Webアプリケーションを提供するベンダーは、継続的な診断と改善を行い、セキュリティリスクを最小限に抑える体制を構築することが重要です。

3分で分かる!
脆弱性診断のご案内

LANSCOPE プロフェッショナルサービスの脆弱性診断でできることをわかりやすく解説!ぴったりの診断を選べるフローチャートもご用意しています。

資料をダウンロードする

クロスサイトスクリプティング(XSS)攻撃対策なら「LANSCOPE プロフェッショナルサービス」

LANSCOPE プロフェッショナルサービスのロゴ
本記事で紹介したXSS攻撃をはじめ、SQLインジェクションやディレクトリトラバーサルなど、Webアプリケーションの脆弱性を狙った攻撃は後を絶ちません。

これらの脅威から自社と利用者を守るためには、定期的かつ継続的な脆弱性診断の実施が欠かせません。

そこで本記事では、セキュリティのスペシャリストによるきめ細やかな診断が魅力のLANSCOPE プロフェッショナルサービスの「Webアプリケーション脆弱性診断」を紹介します。

本診断では、Webサイトが抱えるリスクを「点数」で可視化するとともに、具体的な修正方法までを提示するため、高い専門知識がなくても、現状のリスクを把握しやすい内容となっています。

また報告書には、経営層向けのエグゼクティブサマリーに加え、発見された脆弱性の詳細や優先度、具体的な修正提言なども含まれています。
webアプリケーション脆弱性診断の報告診断レポート
さらにお客様の環境や予算に応じて選択できる5種類の診断メニューを用意しており、目的や課題に応じた最適なプランをお選びいただけます。

自社サイトと利用者双方の安全性を確保するためにも、ぜひ「Webアプリケーション脆弱性診断」の実施をご検討ください。

関連ページ

LANSCOPE プロフェッショナルサービス の「Webアプリケーション脆弱性診断」はこちら

また、より手ごろな価格帯でWebアプリケーションの脆弱性診断を受けていただける「セキュリティ診断パッケージ」も提供しております。

関連ページ

低コスト・短期で診断を行う『セキュリティ健康診断パッケージ』の詳細はこちら

まとめ

本記事では「クロスサイトスクリプティング(XSS)」をテーマに攻撃の仕組みや有効な対策などを解説しました。

本記事のまとめ

  • クロスサイトスクリプティング(XSS) とは、Webアプリケーションの脆弱性の一つで、攻撃者が悪意のあるスクリプトをWebページに埋め込み、そのページを閲覧した利用者のブラウザ上で、そのスクリプトを実行させる攻撃手法
  • XSS攻撃を受けると、Cookie情報の窃取やセッションハイジャックを通じて、不正ログインや情報漏洩、金銭的損失につながるリスクがある
  • XSS攻撃への有効な対策としては、サニタイジングによるスクリプトの無害化や、定期的かつ継続的な脆弱性診断の実施が挙げられる

XSS攻撃は古典的ともいえるサイバー攻撃ですが、現在も多くの被害が報告されており、今後も被害が発生する可能性が高いです。

企業への深刻な被害や利用者の損失といった事態を防ぐためにも、開発段階での適切な実装と、第三者による定期的な脆弱性診断を組み合わせた継続的な対策が欠かせません。

なお、LANSCOPE プロフェッショナルサービスでは、セキュリティのスペシャリストがきめ細かい診断を行う「Webアプリケーション脆弱性診断」を提供しています。

本診断では、XSS攻撃をはじめとした、サイバー攻撃に悪用される危険性が高いWebアプリケーションの脆弱性を明らかにし、優先度を踏まえた具体的な改善提案を行います。

Webアプリケーションのセキュリティを強化したい企業・組織の方は、ぜひ「Webアプリケーション脆弱性診断」をご検討ください。

Webアプリケーション診断で指摘される
脆弱性TOP5を解説!

Webアプリのセキュリティ対策は万全ですか?
実際に診断でよく指摘される脆弱性TOP5を
原因や対策方法も含め、分かりやすく説明します。

資料をダウンロードする