Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 268

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

監修Cybersecurity entrepreneur & security researcher

クロスサイトスクリプティング(XSS) とは何ですか?

クロスサイトスクリプティング(XSS)他のユーザーが閲覧するページに悪意あるスクリプトを注入し、当該サイトのオリジンとして被害者のブラウザで実行させる Web 脆弱性。


クロスサイトスクリプティング(XSS)は、Web アプリケーションが信頼できない入力をコンテキストに応じたエスケープなしにレスポンスへ反射または保存し、攻撃者が制御する JavaScript を当該サイトのオリジンとして被害者のブラウザで実行させてしまうときに発生します。実行されたスクリプトは、そのサイトの Cookie・DOM アクセス・同一オリジン権限を継承します。3 つの種別は、反射型(リクエストからペイロードがそのまま返される)、保存型(ペイロードがサーバー側に、例えばコメントとして永続化される)、そして DOM 型(シンクが innerHTMLdocument.write のようなクライアント側 JavaScript に存在する)です。

保存型 XSS の波及力を示す代表例が Samy ワームです。2005 年 10 月 4 日、Samy Kamkar は自身の MySpace プロフィールに JavaScript ペイロードを仕込み、それが彼を友達に追加し、各閲覧者のプロフィールへ自身をコピーしました。このワームは 20 時間足らずで 100 万を超えるアカウントに感染し、当時最速で拡散したワームとなり、シークレットサービスの強制捜査と重罪の答弁につながりました。XSS は今なお OWASP Top 10 の定番であり、A03:2021(インジェクション)に統合されています。

防御は多層的です。コンテキストに応じた出力エンコーディング(HTML・属性・JS・URL)、インラインスクリプトをブロックするための nonce やハッシュを用いた厳格な Content-Security-Policy、フレームワークの自動エスケープ(React、Angular)、危険な DOM シンクを封じる Trusted Types、そしてセッション窃取を抑える HttpOnly/SameSite Cookie です。入力検証は有用ですが、それ単独では十分ではありません。

flowchart LR
  A["攻撃者がペイロードを送信"] --> W["Web アプリが入力を保存または反射"]
  W -->|"エスケープされない出力"| V["被害者のブラウザがページを描画"]
  V --> X["攻撃者スクリプトがサイトのオリジンで実行"]
  X --> S["Cookie/セッションの窃取・キーロギング・横展開"]

  1. 01

    フォーラム投稿に仕込まれた保存型 XSS が、スレッドを閲覧した全ユーザーのセッション Cookie を盗み出す。

  2. 02

    検索パラメータの反射型 XSS が、攻撃者の用意したリンク経由で任意の JavaScript を実行する。

よくある質問

クロスサイトスクリプティング(XSS) とは何ですか?

他のユーザーが閲覧するページに悪意あるスクリプトを注入し、当該サイトのオリジンとして被害者のブラウザで実行させる Web 脆弱性。 サイバーセキュリティの 攻撃と脅威 カテゴリに属します。

クロスサイトスクリプティング(XSS) とはどういう意味ですか?

他のユーザーが閲覧するページに悪意あるスクリプトを注入し、当該サイトのオリジンとして被害者のブラウザで実行させる Web 脆弱性。

クロスサイトスクリプティング(XSS) からどのように防御しますか?

クロスサイトスクリプティング(XSS) に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。

クロスサイトスクリプティング(XSS) の別名は何ですか?

一般的な別名: XSS。

関連用語

関連項目